docs: record the API, CLI, QR and semantic ports, and the index secret leak

Also rewrites capabilities().not_yet_ported so each remaining entry says WHY
it is not ported, since automation branches on that list: PGP RSA is a hard
constraint (seeded prime search is not reproducible, so a port would derive a
different key from the same seed), index0 is carried verbatim but not
recomputed, and the agent authorization subsystems and Textual TUIs are
choices.

Flags one thing that needs a decision: existing semantic index files written
before today still contain plaintext secrets, and the fix does not rewrite
them. The model id distinguishes them, but relying on a user to read a status
field is weak.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01Vtx94nXDmNgXEeThUZP4QN
This commit is contained in:
thePR0M3TH3ANandClaude Opus 5 committed 2026-08-19 09:55:44 -04:00
1 parent 39c4e45376
commit fdbdb12596
2 files changed
+75 -6

No files matched your search

+16 -4
View File
@@ -95,11 +95,23 @@ export function capabilities(): Record<string, unknown> {
// Automation branches on this list, so it has to describe this build
// rather than an earlier one. SSH and ed25519 PGP entries are at
// byte-for-byte parity with Python and were wrongly listed here.
// Automation branches on this, so each entry says WHY, not just what.
// Three of these are choices; one is a hard constraint.
not_yet_ported: [
"pgp RSA keys (ed25519 is supported; RSA generation is not reproducible)",
"index0/atlas",
"approval gates and high-risk partitions",
"Python's v2/v3 TUIs (interactive mode follows the legacy v1 menus)",
// Hard constraint: PyCryptodome's seeded prime search is not
// reproducible, so a TS implementation would derive a DIFFERENT key
// from the same seed. Refusing beats silently diverging.
"pgp RSA keys (ed25519 is at byte parity; RSA generation is not reproducible)",
// Python-derived state, recomputed on load. Carried through verbatim by
// the TS port so a Python profile round-trips, but not computed here.
"index0/atlas (preserved verbatim on read/write, never recomputed)",
// Deliberate: agent approval gates, high-risk partitions, job profiles
// and recovery split. The session agent's scoped tokens cover the
// automation cases; these add a second authorization model.
"agent approval gates, high-risk partitions, job profiles, recovery split",
// Deliberate: the TS interactive mode follows Python's legacy v1 menu
// tree. See docs/tui_v2_cutover_decision.md.
"Python's v2/v3 Textual TUIs (interactive mode follows the legacy v1 menus)",
],
};
}