authorgravatar for technocratix902@gmail.comKriday Dave <technocratix902@gmail.com> 2026-07-15 14:24:40+05:30
committergravatar for noreply@github.comGitHub <noreply@github.com> 2026-07-15 10:54:40+02:00
logc69120f4845a13d0b1cc155995859957935f9007
treea6df852ec8f86946eec4f652113ffdd2770d0582
parent7b928d54886742737851af1d6c68d70c90b4cc28
signature Signed by PGP key B5690EEEBB952194

fix(docs): repair broken source links in architecture overview (#3991)


1 files changed, 18 insertions(+), 26 deletions(-)

docs/architecture/overview.md+18-26
...@@ -60,11 +60,11 @@ sequenceDiagram...@@ -60,11 +60,11 @@ sequenceDiagram
60 Transport-->>Browser: Hydrate initial state60 Transport-->>Browser: Hydrate initial state
61```61```
6262
631. The browser boots [`WsTransport`][1] and registers typed listeners in [`wsNativeApi`][2].631. The browser boots `WsTransport` and registers typed listeners in `wsNativeApi`.
642. The server accepts the connection in [`wsServer`][3] and brings up the runtime graph defined in [`serverLayers`][7].642. The server accepts the connection in `wsServer` and brings up the runtime graph defined in `serverLayers`.
653. [`ServerReadiness`][4] waits until the key startup barriers are complete.653. `ServerReadiness` waits until the key startup barriers are complete.
664. Once the server is ready, [`wsServer`][3] sends `server.welcome` from the contracts in [`ws.ts`][6] through [`ServerPushBus`][5].664. Once the server is ready, `wsServer` sends `server.welcome` from the contracts in `ws.ts` through `ServerPushBus`.
675. The browser receives that ordered push through [`WsTransport`][1], and [`wsNativeApi`][2] uses it to seed local client state.675. The browser receives that ordered push through `WsTransport`, and `wsNativeApi` uses it to seed local client state.
6868
69### User turn flow69### User turn flow
7070
...@@ -90,12 +90,12 @@ sequenceDiagram...@@ -90,12 +90,12 @@ sequenceDiagram
90 Push-->>Browser: Typed push90 Push-->>Browser: Typed push
91```91```
9292
931. A user action in the browser becomes a typed request through [`WsTransport`][1] and the browser API layer in [`nativeApi`][12].931. A user action in the browser becomes a typed request through `WsTransport` and the browser API layer in `nativeApi`.
942. [`wsServer`][3] decodes that request using the shared WebSocket contracts in [`ws.ts`][6] and routes it to the right service.942. `wsServer` decodes that request using the shared WebSocket contracts in `ws.ts` and routes it to the right service.
953. [`ProviderService`][8] starts or resumes a session and talks to `codex app-server` over JSON-RPC on stdio.953. [`ProviderService`][8] starts or resumes a session and talks to `codex app-server` over JSON-RPC on stdio.
964. Provider-native events are pulled back into the server by [`ProviderRuntimeIngestion`][9], which converts them into orchestration events.964. Provider-native events are pulled back into the server by [`ProviderRuntimeIngestion`][9], which converts them into orchestration events.
975. [`OrchestrationEngine`][10] persists those events, updates the read model, and exposes them as domain events.975. [`OrchestrationEngine`][10] persists those events, updates the read model, and exposes them as domain events.
986. [`wsServer`][3] pushes those updates to the browser through [`ServerPushBus`][5] on channels defined in [`orchestration.ts`][11].986. `wsServer` pushes those updates to the browser through `ServerPushBus` on channels defined in [`orchestration.ts`][11].
9999
100### Async completion flow100### Async completion flow
101101
...@@ -123,21 +123,13 @@ sequenceDiagram...@@ -123,21 +123,13 @@ sequenceDiagram
1232. These flows run as queue-backed workers using [`DrainableWorker`][16], which helps keep side effects ordered and test synchronization deterministic.1232. These flows run as queue-backed workers using [`DrainableWorker`][16], which helps keep side effects ordered and test synchronization deterministic.
1243. When a milestone completes, the server emits a typed receipt on [`RuntimeReceiptBus`][15], such as checkpoint completion or turn quiescence.1243. When a milestone completes, the server emits a typed receipt on [`RuntimeReceiptBus`][15], such as checkpoint completion or turn quiescence.
1254. Tests and orchestration code wait on those receipts instead of polling git state, projections, or timers.1254. Tests and orchestration code wait on those receipts instead of polling git state, projections, or timers.
1265. Any user-visible state changes produced by that async work still go back through [`wsServer`][3] and [`ServerPushBus`][5].1265. Any user-visible state changes produced by that async work still go back through `wsServer` and `ServerPushBus`.
127127
128[1]: ../apps/web/src/wsTransport.ts128[8]: ../../apps/server/src/provider/Layers/ProviderService.ts
129[2]: ../apps/web/src/wsNativeApi.ts129[9]: ../../apps/server/src/orchestration/Layers/ProviderRuntimeIngestion.ts
130[3]: ../apps/server/src/wsServer.ts130[10]: ../../apps/server/src/orchestration/Layers/OrchestrationEngine.ts
131[4]: ../apps/server/src/wsServer/readiness.ts131[11]: ../../packages/contracts/src/orchestration.ts
132[5]: ../apps/server/src/wsServer/pushBus.ts132[13]: ../../apps/server/src/orchestration/Layers/ProviderCommandReactor.ts
133[6]: ../packages/contracts/src/ws.ts133[14]: ../../apps/server/src/orchestration/Layers/CheckpointReactor.ts
134[7]: ../apps/server/src/serverLayers.ts134[15]: ../../apps/server/src/orchestration/Layers/RuntimeReceiptBus.ts
135[8]: ../apps/server/src/provider/Layers/ProviderService.ts135[16]: ../../packages/shared/src/DrainableWorker.ts
136[9]: ../apps/server/src/orchestration/Layers/ProviderRuntimeIngestion.ts
137[10]: ../apps/server/src/orchestration/Layers/OrchestrationEngine.ts
138[11]: ../packages/contracts/src/orchestration.ts
139[12]: ../apps/web/src/nativeApi.ts
140[13]: ../apps/server/src/orchestration/Layers/ProviderCommandReactor.ts
141[14]: ../apps/server/src/orchestration/Layers/CheckpointReactor.ts
142[15]: ../apps/server/src/orchestration/Layers/RuntimeReceiptBus.ts
143[16]: ../packages/shared/src/DrainableWorker.ts