You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/intentional-architecture-rewrite-2026-06-27/decision-log.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -197,6 +197,8 @@ Setup has two edge layers. `src/edges/cli/setup/index.ts` is the public command
197
197
198
198
Claude auth stays provider-owned, but provider-owned does not mean one file. `src/agent/providers/claude/auth.ts` owns auth policy and public re-exports. `auth-cli.ts` owns Claude executable discovery, public CLI spawning, legacy SDK CLI fallback, timeout behavior, and subprocess output collection. `auth-status.ts` owns the parsed JSON contract returned by `claude auth status --json`.
199
199
200
+
Wiki-registry storage is not one bucket. `src/stores/wiki-registry/store.ts` owns registry read/write/add/drop/find persistence verbs. `codec.ts` owns parsing and validating `registry.json`. `lookup.ts` owns name/path matching over injected path equality. `filesystem.ts` owns path reachability, wiki-root checks, and global-directory creation. `types.ts` owns registry entry and lookup contracts.
201
+
200
202
Codex app-server runtime has two layers. `app-server.ts` coordinates provider runtime state: request/config setup, JSON-RPC transport wiring, notification mapping, root-turn completion, turn watchdogs, and final result projection. `app-server-process.ts` owns child-process mechanics: spawning the Codex app-server, decoding stdout JSONL into protocol messages, collecting stderr for close failures, registering signal handlers, writing JSON-RPC messages to stdin, and terminating the managed child.
201
203
202
204
Codex app-server notifications are routed by notification kind. `app-notifications.ts` owns the top-level method router and generic notification categories. `app-agent-messages.ts` owns agent-message semantics: text deltas, root result capture, structured output parsing, invalid structured-output failure state, and helper-agent completion events. `app-terminal-events.ts` owns terminal event semantics: turn completion, warnings, app-server error notifications, terminal run-state success/failure mutation, and `classifyCodexFailure` calls. Tool display, usage parsing, actor tracing, root-turn detection, and process mechanics stay in their existing named files.
Copy file name to clipboardExpand all lines: docs/intentional-architecture-rewrite-2026-06-27/status.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -142,6 +142,7 @@ This is no longer a small cleanup branch. It is a real ownership rewrite.
142
142
- Moved setup raw multi-select keyboard mechanics into a reusable setup input-control file, leaving instruction-target choice focused on target semantics and line-mode parsing.
143
143
- Split setup phase orchestration into `setup-flow.ts`, leaving setup `index.ts` as the public TUI entry wrapper and next-step renderer.
144
144
- Split Claude auth provider internals into auth policy, CLI subprocess mechanics, and parsed status-contract files under `src/agent/providers/claude/`.
145
+
- Split wiki-registry storage into read/write mutation verbs, JSON codec, lookup, filesystem reachability, and type contracts.
145
146
- Moved repeated store atomic-write temp-file mechanics into `src/stores/atomic-write.ts`, removing process-PID temp names from job and sync stores.
146
147
- Split most command rendering into command-private render files.
147
148
- Added architecture-boundary tests to stop old dependency leaks from returning.
Copy file name to clipboardExpand all lines: docs/intentional-architecture-rewrite-2026-06-27/worklog.md
+10Lines changed: 10 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2020,3 +2020,13 @@ Two-hundred-eighty-third production slice:
2020
2020
- Added `src/agent/providers/claude/auth-status.ts` for the parsed Claude auth JSON contract.
2021
2021
- Kept `auth.ts` as the provider-owned auth policy surface: public auth check, subscription/API-key acceptance, unauthenticated message, and public re-exports.
2022
2022
- Strengthened provider boundary tests so auth policy does not regain child-process mechanics or raw JSON parsing.
2023
+
2024
+
Two-hundred-eighty-fourth production slice:
2025
+
2026
+
- Split `src/stores/wiki-registry/store.ts` into registry persistence, codec, lookup, filesystem, and type owners.
2027
+
- Added `src/stores/wiki-registry/codec.ts` for registry JSON parsing and validation.
2028
+
- Added `src/stores/wiki-registry/lookup.ts` for name/path matching over injected path equality.
2029
+
- Added `src/stores/wiki-registry/filesystem.ts` for reachability, wiki-root checks, and global directory creation.
2030
+
- Added `src/stores/wiki-registry/types.ts` for registry entry and path-lookup contracts.
2031
+
- Kept `store.ts` focused on read/write/add/drop/find persistence verbs.
2032
+
- Strengthened architecture tests so registry parsing, path lookup, and filesystem checks do not collapse back into the store catchall.
0 commit comments