Codex
82e2c91f42
feat: implement memory and evidence administration with guided repairs
...
Publish documentation / publish (push) Successful in 1m27s
Add PostgreSQL-backed memory, editable evidence with source review and activation, and human-approved archive repairs across the harness, API, and UI. Include migrations, deployment support, regression coverage, and validation documentation.
Refresh permissions from validated session roles so existing administrator logins can access newly deployed archive management features.
2026-09-10 10:31:34 +02:00
Codex
376dd5a09d
feat: add AI catalog description generation
2026-08-29 16:42:56 +02:00
marcopan
6062cb010e
Chiusura fase di ristrutturazione e modularizzazione del workflow per favorire sviluppo modulare
2026-08-24 13:32:20 +02:00
marcopan
5c0dc8c9f2
chore: clean local tooling and deployment artifacts
2026-08-19 19:41:16 +02:00
marcopan
8826f8ac6b
refactor: remove pgvector runtime
2026-08-08 21:38:03 +02:00
User
5dbb91390f
feat(harness): persist server sessions in postgres
2026-07-16 17:31:04 +02:00
User
8f364ec564
feat(harness): add local session repository
2026-07-16 17:11:22 +02:00
marcopan
4028ef7821
feat(preprocess): add deployment jobs and S3 source
2026-07-12 05:42:07 +02:00
marcopan
3588a7749b
fix(vector): harden packaged migrations
2026-07-12 01:32:33 +02:00
marcopan and Claude Opus 4.8
c12bdcd257
feat(harness): derive a 3-5 keyword session name (YAKE, no LLM)
...
New sessions get a concise Italian-keyword `name` instead of the truncated
question. `tht session new` (when no --name is given) derives it via a new
`_extract_name` helper using YAKE (pure-Python, unsupervised, Italian, no LLM),
dropping generic query verbs and keeping the top keywords in reading order;
falls back to `_summarize` if YAKE is unavailable. `create_session` core keeps
its `name=None` default — the policy lives at the CLI layer.
TDD: tests/test_session_name.py (unit + CliRunner integration). Full harness
suite 269 passed; ruff clean.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-30 15:54:54 +02:00
marcopan
fc5fbe6b65
refactor(harness): renaming prodotto tht (Onda -1)
...
Thoth (tht) è il prodotto, PSD è il cliente. Nessun riferimento al contesto
clinico nel codice.
Rinomine:
- comando+package nsp→tht (dir nsp/→tht/, 46 import, pyproject entry point)
- gate nsp-gate.js→tht-gate.js (+ rewrite token, relayIfNspFails→relayIfThtFails)
- workspace chirone.{example,test}.yaml→tht.{example,test}.yaml (generici)
- env THOTH_→THT_ (19 var) + NSP_ stragglers (NSP_HARNESS_ROOT, NSP_SESSION)
- commenti/docstring chirone/psdwp3/policlinico neutralizzati ('the reference
implementation', 'the DWH')
Aggiunto [tool.setuptools.packages.find] include=['tht*'] (necessario: l'auto-
discovery rompeva con tht/ + workspaces/ come top-level multipli).
.env operatore aggiornato in-place (prefissi THT_, valori preservati, gitignored).
Verifica: pytest 109 passed, npm test 14 pass, tht phase meta --json OK, zero
residui nsp/THOTH_/NSP_/chirone nel package.
2026-06-27 10:33:16 +02:00
marcopan
eb3bde90e2
test(harness): L0 testcontainers + L1 contract tests for ported db/mschema/rest (A9, spec §1)
...
Ports the leaf data-layer modules and validates them:
- mschema/ (models, eligibility, merge, render), db/ (connection, sampling,
introspect, fetch_ca), rest/client.py -- renamed psdwp3->nsp, verbatim.
- L0 (testcontainers, real Postgres): db connection read-only enforcement
(psd_ro cannot CREATE/INSERT), introspect against a known schema (tables,
columns, types, comments, FKs, enum, composite PK), sampling most-frequent
values + truncation reporting. 15 tests, ~4s.
- L1 (fake data): rest/client RPC contract (mocked transport -- X-API-Key
header, payloads, base_url slash handling, HTTP/network error surfacing),
mschema/render 3 formats (markdown, mschema-text, schema-dict) +
eligibility rules (wide_text excluded, short_text/numeric/enum/temporal/
boolean eligible, annotation override wins). 25 tests.
pyproject registers l0/l2 markers + addopts '-m not l2' (L2 opt-in).
Deferred to their dependency-porting tasks: test_rrf.py (search needs
vectorstore, B3) and the 11 CLI contract tests (need _guards/session, wired
when each command lands). 'Not assumed reliable' now has real teeth for the
data layer; CLI/search contracts follow.
2026-06-26 22:53:08 +02:00
marcopan
72a2c060d4
feat(harness): scaffold project (pyproject, env, gitignore)
2026-06-26 22:17:10 +02:00