Commit Graph
178 Commits
Author SHA1 Message Date
marcopan d5e78febd3 refactor(evidence): migrate runtime consumption (#29) 2026-08-24 02:10:06 +02:00
marcopan 8b63715b56 refactor(evidence): add cohesive Python facade (#28) 2026-08-24 02:02:57 +02:00
marcopan eccf6212f1 refactor(pi): generate modular session instructions (#25) 2026-08-24 01:36:08 +02:00
marcopan 4a654de84a refactor(memory): own solved-question lifecycle (#24) 2026-08-24 01:23:39 +02:00
marcopan 93fe0d733b refactor(memory): extract F2 recall path (#23) 2026-08-24 01:08:15 +02:00
marcopan 5c0dc8c9f2 chore: clean local tooling and deployment artifacts 2026-08-19 19:41:16 +02:00
marcopan 7651b63cea refactor(cli): remove obsolete workflow commands 2026-08-16 02:29:00 +02:00
marcopan 378aa6e652 fix: raise embedding timeout and lower default batch for large CPU corpora 2026-08-13 19:45:51 +02:00
marcopan f9d23d2361 fix: freeze evidence metadata lists as lists (preserve JSON shape) 2026-08-13 19:30:40 +02:00
marcopan f31b1e61ac fix: upsert in bounded chunks, recreate Qdrant indexes on rebuild, larger maintenance tmpfs 2026-08-13 19:02:52 +02:00
marcopan 5249798c03 feat: revision-qualified annotations root for pinned runtimes (P5) 2026-08-13 05:02:19 +02:00
marcopan e23e526966 feat: P3 effective configuration, memory root, and revision-scoped records 2026-08-12 16:01:25 +02:00
marcopan de5de36f9a chore: remove acceptance debug channels from the P2 operator path 2026-08-11 20:04:04 +02:00
marcopan ff9c87bfc7 chore: expose DWH preprocessing failure detail under P2 debug 2026-08-11 19:58:28 +02:00
marcopan 0be6549b31 fix: tolerate absent annotations when digesting schema index artifacts 2026-08-11 19:39:30 +02:00
marcopan 93017b5eb6 fix: resolve DWH REST api keys from installation-local files at runtime 2026-08-11 19:31:24 +02:00
marcopan 89b4943170 fix: carry require_existing collection lifecycle through the legacy renderer config 2026-08-11 19:29:52 +02:00
marcopan ca391ba59c feat: pristine harness JSON interfaces and require-existing semantic mode (P2) 2026-08-11 18:40:11 +02:00
marcopan 3b9681a63a fix: harden evidence secret file handoff 2026-08-09 19:27:52 +02:00
marcopan e50aad7e41 fix: require signed evidence provenance 2026-08-09 19:17:54 +02:00
marcopan df8dc1e219 fix: close evidence credential disclosure gaps 2026-08-09 19:15:00 +02:00
marcopan 7126b567b0 feat: bind evidence credentials through local files 2026-08-09 19:03:36 +02:00
marcopan fa151c5ea5 fix: close semantic isolation review gaps 2026-08-08 23:53:37 +02:00
marcopan 2c4534d968 fix: close internal semantic review gaps 2026-08-08 23:27:58 +02:00
marcopan 43d8063922 fix: scope workspace registry smoke cleanup 2026-08-08 22:32:57 +02:00
marcopan ffe0afb6a7 test: restore taskdoc truncation regression 2026-08-08 21:50:25 +02:00
marcopan 569bb7f1db fix: remove dead vector migrate command 2026-08-08 21:45:16 +02:00
marcopan 8826f8ac6b refactor: remove pgvector runtime 2026-08-08 21:38:03 +02:00
marcopan 820b237239 fix: remove http delete-kinds regression 2026-08-08 18:21:20 +02:00
marcopan 32cd2165eb fix: support qdrant-only vector maintenance 2026-08-08 18:14:03 +02:00
marcopan 5e39cfa347 feat: index semantic records in qdrant 2026-08-08 18:03:57 +02:00
marcopan f61648fb69 fix: harden qdrant payload and paging 2026-08-08 17:48:56 +02:00
marcopan 7109ee15c4 feat: add qdrant vector adapter 2026-08-08 17:43:15 +02:00
marcopan c875fa52ce fix: enforce internal embeddings contract 2026-08-08 17:33:19 +02:00
marcopan 2911e008d1 feat: use internal ollama embeddings 2026-08-08 17:29:36 +02:00
marcopan b93f13e39e fix: stabilize runtime workspace identity 2026-08-05 16:39:23 +02:00
marcopan bd798b1c96 fix: render registry workspaces for harness 2026-08-05 16:03:45 +02:00
marcopan 8b046f9fb2 test: verify portable workspace registry end to end 2026-08-04 08:42:33 +02:00
marcopan 90894176b6 feat: pin sessions to workspace revisions 2026-08-04 04:52:06 +02:00
marcopan 18233d59af fix: refine session report and live activity layout 2026-07-24 00:21:36 +02:00
marcopan 2e1bb621a0 fix: exclude schema tables from session memories 2026-07-23 15:54:27 +02:00
marcopan 0db85e4e4e feat: redesign persisted session summaries 2026-07-23 15:35:31 +02:00
marcopan 694b7dd21f fix: harden reviewer workflow and memory handling 2026-07-23 12:34:23 +02:00
marcopan 0cf09777f2 Fix session resume and PSD container configuration 2026-07-20 20:22:47 +02:00
marcopanandClaude Fable 5 1ab0015460 fix(harness): state-integrity pass — reopen order, atomic decision batch, bash anti-bypass
Audit findings 5.1-5.3.

5.1 `phase reopen` now appends `phase_reopened` BEFORE the artifact
teardown: a crash between the two used to leave later-phase artifacts
deleted with the ledger still at the old phase (resume entered a phase
missing its artifacts). The inverse half-state — reopened with stale later
artifacts — is benign. Order locked by tests/test_phase_reopen_order.py.

5.2 New `tht decision add-batch --doc -`: N substantive decisions in ONE
atomic ledger write (meta types and cte_approved stay on `decision add`;
strictest min-phase enforced). reviewer_schema_linking now builds the
complete curation set and persists it with a single add-batch call — a
mid-loop failure can no longer leave the audit ledger half-written, and a
retry cannot duplicate the first K decisions.

5.3 The anti-bypass hook now also blocks BASH mutations of protected
state (`echo >> review_decisions.jsonl`, `sed -i` on the manifest,
`cat > tht-gate.js`, python open('w'), mv/rm/tee/…): FORBIDDEN only
covered tht subcommands and the write/edit hook only covered pi's own
tools. Read-only access (cat/grep/tail/ls) stays allowed.

Also: knownDecisionTypes is defensive — a workflow meta declaring NO
emits at all (older tht, minimal stubs) skips pre-validation instead of
rejecting every substantive type; with emits present, unknown types are
still rejected before the widget (new L1 test).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-20 01:51:38 +02:00
marcopanandClaude Opus 4.8 9fbca06f7c feat(harness): make tht schema columns glob/pattern-aware
At F4 (schema_linking) a model asking for a whole table family, e.g.
`fact_sost_impianto_*`, used to hit a bare "tabella non nel catalogo" and stall
without recovering. Now a pattern (containing * ? [) resolves to every matching
catalog table and returns their columns (JSON becomes an array of per-table
objects); exact names keep the original single-object contract. A non-glob miss
also suggests sibling tables sharing the leading segment, to aid recovery.

Verified live: `fact_sost_impianto_*` resolves the 20-table family on the psd
catalog. Harness suite green (811 passed).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-18 13:24:20 +02:00
User 5cacf70a0d fix: bootstrap user preferences without invalidating DWH cache 2026-07-16 20:32:20 +02:00
User ccb3cf4aa9 test: cover user-owned session security boundaries 2026-07-16 19:16:58 +02:00
User 458eb13c89 feat(backend): enforce user-owned sessions 2026-07-16 18:32:52 +02:00
User 72db6b823d fix(harness): record postgres decision phases 2026-07-16 18:08:17 +02:00