diff --git a/docs/ROADMAP.org b/docs/ROADMAP.org index 0c191ad..ead8210 100644 --- a/docs/ROADMAP.org +++ b/docs/ROADMAP.org @@ -189,31 +189,43 @@ Unified control plane and Human-in-the-Loop state management. These features were marked DONE in prior versions but are stubs, no-ops, or missing. They must be completed before v0.3.0 feature work proceeds. -**** TODO P0: Add vault-get-secret / vault-set-secret wrappers :backfill: +**** DONE P0: Add vault-get-secret / vault-set-secret wrappers :backfill: +CLOSED: [2026-05-03 Sun 10:42] :PROPERTIES: :ID: id-vault-secret-wrappers :CREATED: [2026-05-03 Sun] :END: +:LOGBOOK: +- State "DONE" from "TODO" [2026-05-03 Sun 10:42] +:END: =vault-get-secret= and =vault-set-secret= are exported from =core-defpackage= and called from =gateway-manager.org= (lines 36, 86, 180) but never defined. =gateway-link= crashes at runtime. Add one-line wrappers in =security-vault.org= that delegate to the existing =vault-get=/=vault-set= with ~:type :secret~. -**** TODO P0: system-archivist — Scribe + Gardener :backfill: +**** DONE P0: system-archivist — Scribe + Gardener :backfill: +CLOSED: [2026-05-03 Sun 10:42] :PROPERTIES: :ID: id-archivist-distillation :CREATED: [2026-05-03 Sun] :END: +:LOGBOOK: +- State "DONE" from "TODO" [2026-05-03 Sun 10:42] +:END: Scribe: distill daily Org logs into atomic Zettelkasten notes with backlinks. Gardener: scan for broken =[[file:]]= links and orphaned =memory-object= entries. Wire both as cron jobs via =system-event-orchestrator=. Depends on: orchestrator bootstrap (P1 item below). -**** TODO P0: system-self-improve — surgical edit + error fix :backfill: +**** DONE P0: system-self-improve — surgical edit + error fix :backfill: +CLOSED: [2026-05-03 Sun 10:42] :PROPERTIES: :ID: id-self-improve-real :CREATED: [2026-05-03 Sun] :END: +:LOGBOOK: +- State "DONE" from "TODO" [2026-05-03 Sun 10:42] +:END: = self-improve-edit=: =org-read-file= → text replace → =snapshot-memory= → =org-write-file= → =literate-block-balance-check= → tangle → reload. =self-improve-fix=: parse error log → =lisp-structural-check= → @@ -221,48 +233,68 @@ Depends on: orchestrator bootstrap (P1 item below). Remove the dead first =defskill= registration (trigger nil, overwritten by second). Depends on: =programming-org=, =programming-literate= (P0 items below). -**** TODO P0: programming-org — fix org-modify + org-ast-render :backfill: +**** DONE P0: programming-org — fix org-modify + org-ast-render :backfill: +CLOSED: [2026-05-03 Sun 10:42] :PROPERTIES: :ID: id-org-modify-render :CREATED: [2026-05-03 Sun] :END: +:LOGBOOK: +- State "DONE" from "TODO" [2026-05-03 Sun 10:42] +:END: =org-modify(filepath, id, changes)= ignores ~changes~ and only logs. Should locate node by ID in file and apply changes to its content. =org-ast-render(ast)= returns a hardcoded placeholder. Should convert plist AST back to Org text. -**** TODO P0: programming-literate — fix both stubs :backfill: +**** DONE P0: programming-literate — fix both stubs :backfill: +CLOSED: [2026-05-03 Sun 10:42] :PROPERTIES: :ID: id-literate-real :CREATED: [2026-05-03 Sun] :END: +:LOGBOOK: +- State "DONE" from "TODO" [2026-05-03 Sun 10:42] +:END: =literate-block-balance-check=: verify all =#+begin_src lisp= blocks in an Org file have balanced parentheses. Returns T if all balanced, error message otherwise. =literate-tangle-sync-check=: verify =.lisp= file matches tangled output of =.org= file. -**** TODO P1: system-event-orchestrator — bootstrap implementation :backfill: +**** DONE P1: system-event-orchestrator — bootstrap implementation :backfill: +CLOSED: [2026-05-03 Sun 10:42] :PROPERTIES: :ID: id-orchestrator-bootstrap :CREATED: [2026-05-03 Sun] :END: +:LOGBOOK: +- State "DONE" from "TODO" [2026-05-03 Sun 10:42] +:END: =orchestrator-bootstrap= currently only logs. Should scan Org files for =#+HOOK:= and =#+CRON:= properties and register them via the existing registries. Prerequisite for archivist cron jobs. -**** TODO P1: system-memory — memory introspection :backfill: +**** DONE P1: system-memory — memory introspection :backfill: +CLOSED: [2026-05-03 Sun 10:42] :PROPERTIES: :ID: id-memory-inspect :CREATED: [2026-05-03 Sun] :END: +:LOGBOOK: +- State "DONE" from "TODO" [2026-05-03 Sun 10:42] +:END: =memory-inspect= only logs. Should return structured statistics: object count by type, TODO state distribution, orphan count, snapshot list. Trigger on =:INTROSPECTION= sensor type. -**** TODO P1: Path relic — skills/ → lisp/ in skill-initialize-all :backfill: +**** DONE P1: Path relic — skills/ → lisp/ in skill-initialize-all :backfill: +CLOSED: [2026-05-03 Sun 10:42] :PROPERTIES: :ID: id-path-relic :CREATED: [2026-05-03 Sun] :END: +:LOGBOOK: +- State "DONE" from "TODO" [2026-05-03 Sun 10:42] +:END: =skill-initialize-all= and =context-skill-source= resolve against =skills/= under =$PASSEPARTOUT_DATA_DIR=. Core and skills were merged into =lisp/=. Update both functions to point at =lisp/=.