Glossary, Evidence Catalog, and Source Index
Navigate from concepts and claims back to the pinned source baseline
Conclusion: a reverse-navigation layer over the pinned baseline
This chapter is an index, not a second narrative. Start with a term, catalog ID, package path, documented symbol, or event name and follow it back to the exact pinned source. Every count below is generated from the current manifests, bilingual fragments, catalog, inventory, and upstream structured models.
1. Reading guide and scope
Catalog reach counts stable evidence IDs cited by eligible Chapters 00–34. English and Chinese citation sequences must be identical, and each bilingual chapter is counted once. Chapter 35 is always excluded, so rendering the catalog cannot improve its own coverage.
Catalog reach measures cited catalog IDs only; it is not claim, architecture, package, source-file, or proof-quality coverage.
2. Bilingual glossary · 48
| Symbol | Definition | Navigation |
|---|---|---|
Activationactivation | The transition in which a validated contribution becomes visible in a scope; activation must have explicit ownership and disposal. Aliases: dynamic activation | First definition: 23 Related chapters: 04, 05, 24 Evidence records: CODEMODE-ACTIVATION, MULTIAGENT-ACTIVATION-OWNERSHIP |
Agentagent | A runtime object with identity, scope, inbox, status, and a Session-backed execution lifecycle; it is published only after setup succeeds. Aliases: agent handle | First definition: 05 Related chapters: 06, 24, 26 Evidence records: AGENT-PUBLIC-INTERFACE, AGENT-PREPARE-PUBLISH |
Approvalapproval | A request-scoped human decision with a closed outcome vocabulary; approval is not a reusable ambient permission. Aliases: one-shot approval | First definition: 19 Related chapters: 20, 21, 23, 29 Evidence records: APPROVAL-OUTCOMES, APPROVAL-REQUEST-SHAPE |
Bundlebundle | A reusable product-level configuration layer that assembles a coherent set of plugins and defaults. Aliases: product bundle | First definition: 04 Related chapters: 03, 17, 30 Evidence records: ARCH-LAYERS, BASE-BUNDLE-SPINE |
Code Modecode-mode | A model-facing presentation and dispatch mode that exposes generated SDK bindings; it does not create a second, authority-free tool engine. Aliases: code presentation mode | First definition: 23 Related chapters: 16, 18, 24 Evidence records: CODEMODE-MODES, CODEMODE-SEAM |
Commit pointcommit-point | The exact transition after which a candidate is authoritative; failures before it veto publication, while later observer failures cannot undo the fact. Aliases: authoritative commit | First definition: 09 Related chapters: 11, 15, 16, 27 Evidence records: SESSION-APPEND-COMMIT, DESIGN-PACKAGE-RULES |
Compactioncompaction | A logged Surface replacement that summarizes an eligible prefix to reduce future model context without deleting canonical history. Aliases: context compaction | First definition: 13 Related chapters: 09, 10, 28 Evidence records: COMPACT-TRANSACTION, COMPACT-COMMIT |
Connection generationconnection-generation | A monotonic client-side epoch that prevents stale work from an earlier transport from mutating the current connected state. Aliases: reconnect generation | First definition: 30 Related chapters: 27, 29 Evidence records: WEBUI-CONNECTION-GENERATION, API-CONNECTION-LOOP |
Continuable childcontinuable-child | A child whose stable descriptor and Session permit later follow-up epochs; publication occurs only after setup and inbox acceptance succeed. Aliases: continuable | First definition: 24 Related chapters: 26, 27 Evidence records: MULTIAGENT-CONTINUABLE-START, MULTIAGENT-FOLLOWUP |
Catalog reachcoverage-reach | The share of catalog IDs cited by an eligible chapter corpus, counting one bilingual chapter once; it is not claim coverage, source-file coverage, or proof quality. Aliases: evidence catalog reach | First definition: 35 Related chapters: 01, 32, 34 Evidence records: — |
Disposerdisposer | The callable cleanup handle returned by a registration; ownership and reverse teardown make it part of the runtime contract, not optional housekeeping. Aliases: cleanup handle | First definition: 02 Related chapters: 04, 05, 27 Evidence records: ROOT-EFFECTS, DESIGN-SCOPE-TEST |
Durability barrierdurability-barrier | An awaited boundary that makes the required log prefix durable before a model request, top-level tool body, or another selected side effect proceeds. Aliases: checkpoint barrier, flush barrier | First definition: 10 Related chapters: 11, 15, 27 Evidence records: LOG-CHECKPOINT-POLICY, LLM-CHECKPOINT-BARRIER |
Reversible effecteffect | A side-effect registration paired with a disposer and owned by the current lifecycle fiber, so replacement can retract what it published. Aliases: effect | First definition: 02 Related chapters: 04, 05, 23 Evidence records: ROOT-EFFECTS, DESIGN-SCOPED-LAYERS |
Evidence recordevidence-record | A stable catalog ID tied to one pinned repository path and line range, with bilingual statements of what that excerpt supports. Aliases: catalog item | First definition: 01 Related chapters: 00, 33, 34, 35 Evidence records: ROOT-BOUNDARIES |
Fiberfiber | The runtime lifecycle node that owns a plugin activation and its effects; disposing it retracts its owned contribution graph. Aliases: plugin fiber | First definition: 02 Related chapters: 04, 05, 23 Evidence records: DESIGN-SCOPED-LAYERS, ROOT-EFFECTS |
Goalgoal | A revisioned, phase-bearing objective updated through exact-reference checks and a durable Session commit before live publication. Aliases: goal state | First definition: 15 Related chapters: 24, 29, 30 Evidence records: PLANSTATE-GOAL-COMMIT, PLANSTATE-GOAL-TYPES |
Inbox claiminbox-claim | The durable transition that assigns queued input to an execution boundary, preserving ordering and recovery semantics across cancellation or restart. Aliases: claim boundary | First definition: 26 Related chapters: 05, 06, 24, 27 Evidence records: INBOX-CLAIM-REPLAY, AGENT-INBOX-COMMIT |
JSON-RPCjson-rpc | The typed request, response, and notification carrier used by API and ACP surfaces; envelope validation does not by itself establish user identity. Aliases: RPC envelope | First definition: 29 Related chapters: 24, 30, 31 Evidence records: API-RPC-SCHEMAS, API-TRUST-FENCE |
Monotonic guardmonotonic-guard | A policy hook that may deny or abstain but cannot grant authority, so a later guard cannot reverse an earlier veto. Aliases: tool guard | First definition: 19 Related chapters: 16, 20, 23 Evidence records: APPROVAL-GUARD-CONTRACT, TOOL-DECISIONS |
Filesystem observationobservation | Session-owned freshness metadata recorded by selected filesystem tools; it is narrower than proof that every byte was read or every filesystem access was observed. Aliases: read observation | First definition: 20 Related chapters: 16, 31 Evidence records: SANDBOX-OBSERVATION, SANDBOX-OBSERVATION-LIMITS |
Patchpatch | A configuration-tree operation that adds, replaces, or removes a row by stable identity as composition layers are applied. Aliases: Cordis patch | First definition: 04 Related chapters: 03, 23 Evidence records: BASE-BUNDLE-SEMANTICS, PROFILE-COMPOSE |
Pinned baselinepinned-baseline | The exact upstream commit against which every path, line range, generated index, and architectural statement in this study is evaluated. Aliases: source baseline | First definition: 01 Related chapters: 00, 35 Evidence records: ROOT-PREVIEW |
Planplan | A selected interaction mode whose transition commits immediately when idle or at the next accepted in-Turn pre-Step boundary. Aliases: plan mode | First definition: 15 Related chapters: 06, 19, 30 Evidence records: PLANSTATE-PLAN-BOUNDARY, PLANSTATE-PLAN-STATE |
Pluginplugin | A composable runtime contribution mounted into a context and owned by a lifecycle scope; it may publish services, listeners, and reversible effects. Aliases: Cordis plugin | First definition: 02 Related chapters: 03, 04, 23, 30 Evidence records: ARCH-PLUGIN-CORE, DESIGN-CORDIS-SEMANTICS |
Profileprofile | A named launch composition that selects and layers bundles and patches into an effective plugin tree. Aliases: launch profile | First definition: 04 Related chapters: 03, 23, 31 Evidence records: PROFILE-COMPOSE, PROFILE-LOAD |
Projectionprojection | A fold or query-derived view over authoritative records; a projection can accelerate reads without becoming the source of truth. Aliases: derived view | First definition: 12 Related chapters: 09, 10, 15, 30 Evidence records: PROJ-AUTHORITY-LAYERS, PROJ-REGISTRY-DRIVE |
Replayreplay | Reconstructing derived runtime or model-visible state by folding durable facts in sequence order rather than trusting a resident cache. Aliases: log replay | First definition: 10 Related chapters: 09, 12, 13, 27 Evidence records: SESSION-DERIVED-ORACLE-TEST, LOG-HISTORY-CUT |
Request headerrequest-header | The canonical logged snapshot of request-shaping context used to reconstruct and compare model requests. Aliases: request-header event | First definition: 07 Related chapters: 08, 09, 27, 28 Evidence records: PROMPT-HEADER-CANONICAL, LOOP-REQUEST-INVARIANT |
Row identityrow-identity | The stable key used to decide which configuration row a later layer replaces; textual position alone is not identity. Aliases: stable row identity | First definition: 04 Related chapters: 23, 27 Evidence records: BASE-BUNDLE-SEMANTICS, PROFILE-LIVE |
Runtime invariantruntime-invariant | A package-owned executable check of a semantic property at runtime; it complements static types and tests rather than replacing either. Aliases: invariant | First definition: 32 Related chapters: 06, 09, 13, 16 Evidence records: DESIGN-INVARIANT-REGISTRY, PKG-INVARIANTS |
Sandbox policysandbox-policy | Per-call policy for declared process file effects and writable roots; its documented boundary is not general network, syscall, device, or credential isolation. Aliases: file-effect confinement | First definition: 20 Related chapters: 19, 21, 23, 31 Evidence records: SANDBOX-DOC-BOUNDARY, SANDBOX-POLICY |
Scopescope | A visibility and ownership boundary that determines which contributions are observable and which lifecycle must retract them. Aliases: context scope | First definition: 02 Related chapters: 05, 16, 23, 30 Evidence records: DESIGN-SCOPED-LAYERS, DESIGN-SCOPE-TEST |
Serviceservice | A typed capability published under a context key and consumed through scope-aware lookup rather than direct global ownership. Aliases: context service | First definition: 02 Related chapters: 03, 16, 22, 23 Evidence records: DESIGN-CORDIS-SEMANTICS, DESIGN-SCOPED-LAYERS |
Session eventsession-event | An append-only typed record in a Session log with sequence, time, payload, and optional Surface metadata; it is not a live Cordis event. Aliases: durable log record | First definition: 09 Related chapters: 10, 11, 12, 35 Evidence records: SESSION-EVENT-ENVELOPE, SESSION-CORE-EVENTS |
Slotslot | A scope-owned browser contribution point whose recursive disposal removes the subtree declared by an entry. Aliases: UI slot | First definition: 30 Related chapters: 02, 23 Evidence records: WEBUI-SLOT-CASCADE, DESIGN-SCOPED-LAYERS |
Stepstep | One prompt assembly and model-request attempt inside a Turn, followed by either completion or a tool-continuation boundary. Aliases: model step | First definition: 06 Related chapters: 07, 08, 18 Evidence records: LOOP-STEP-STATE, LOOP-REQUEST-BUILD |
Subagentsubagent | A child execution created through a provider seam with explicit parent ownership, run identity, settlement, budgets, and optional continuation. Aliases: child agent | First definition: 24 Related chapters: 25, 26, 29 Evidence records: MULTIAGENT-SEAM, MULTIAGENT-LIFECYCLE |
Surfacesurface | The ordered model-visible message projection derived from eligible Session events; it is a view over the log rather than the canonical log itself. Aliases: model-visible Surface | First definition: 09 Related chapters: 10, 12, 13 Evidence records: SESSION-SURFACE-PROJECTION, ROOT-MODEL-LOGGED |
Surface operationsurface-op | The append, replace, or delete operation carried by a Surface-eligible event to fold model-visible history deterministically. Aliases: surfaceOp | First definition: 09 Related chapters: 10, 13 Evidence records: SESSION-SURFACE-REPLACE, SESSION-EVENT-ENVELOPE |
Todotodo | A whole-value list state with its own validation and projection contract; it does not inherit Goal or Plan authority semantics. Aliases: todo list | First definition: 15 Related chapters: 16, 17, 30 Evidence records: PLANSTATE-TODO-TOOL, PLANSTATE-TODO-INVARIANT |
Tool runtimetool-runtime | The ordered execution transaction spanning input materialization, policy, guards, around-dispatch, body execution, post-policy, finalization, and immutable result. Aliases: tool transaction | First definition: 16 Related chapters: 17, 18, 19, 23 Evidence records: TOOL-PIPELINE, TOOL-RUNTIME-INVARIANT |
Trust boundarytrust-boundary | A named transition where identity, authority, data origin, or side-effect capability changes and therefore requires explicit validation or policy. Aliases: authority boundary | First definition: 31 Related chapters: 19, 20, 29 Evidence records: ROOT-TYPED-TRUST, API-TRUST-FENCE |
Turnturn | A user- or system-triggered execution interval that may contain several Steps and ends with an explicit reason. Aliases: agent turn | First definition: 06 Related chapters: 09, 15, 26 Evidence records: LOOP-TURN-STATE, ARCH-TURN |
Typed eventtyped-event | A named live-bus contract whose TypeScript signature and dispatch mode constrain producers and listeners; it is distinct from a durable Session log record. Aliases: Cordis event | First definition: 02 Related chapters: 06, 09, 35 Evidence records: DESIGN-CORDIS-SEMANTICS, SESSION-CORE-EVENTS |
Waterfallwaterfall | An ordered live-event mode in which a listener can transform a value and delegate to the next listener; before/after-next placement is semantic. Aliases: waterfall event | First definition: 02 Related chapters: 06, 07, 16, 19 Evidence records: DESIGN-CORDIS-SEMANTICS, PROMPT-ASSEMBLY-PIPELINE |
Watermarkwatermark | The log position and identity metadata that bound what a cached projection has folded and whether tail replay is safe. Aliases: projection watermark | First definition: 12 Related chapters: 10, 30 Evidence records: PROJ-CACHE-LADDER, PROJ-CACHE-SCHEMA |
Workflowworkflow | A validated orchestration program that composes child runs and combinators under explicit concurrency, total-child, slice, and disposal ceilings. Aliases: workflow run | First definition: 25 Related chapters: 24, 27, 29 Evidence records: WORKFLOW-LIFECYCLE, WORKFLOW-CAPS |
Write-behindwrite-behind | Per-Session asynchronous persistence that preserves append order but needs an explicit flush barrier before selected external effects. Aliases: write-behind queue | First definition: 10 Related chapters: 11, 27 Evidence records: LOG-WRITE-BEHIND, PERSIST-WRITE-BEHIND |
3. Evidence catalog reach
| Corpus | Chapters | Occurrences | Unique IDs cited | Uncited IDs | Catalog reach | Catalog-path reach |
|---|---|---|---|---|---|---|
published-substantive | 35 | 1350 | 1092 | 2 | 99.8% | 100.0% |
verified | 35 | 1350 | 1092 | 2 | 99.8% | 100.0% |
Published-substantive reach by catalog kind
| Kind | Catalog IDs | Unique IDs cited | Catalog reach |
|---|---|---|---|
| design-note | 4 | 4 | 100.0% |
| generated-doc | 4 | 4 | 100.0% |
| generated-source | 1 | 1 | 100.0% |
| official-doc | 79 | 78 | 98.7% |
| production-config | 57 | 57 | 100.0% |
| production-source | 805 | 805 | 100.0% |
| production-test | 137 | 137 | 100.0% |
| repository-policy | 7 | 6 | 85.7% |
Reused IDs: 201; reuse occurrences: 258.
4. Complete evidence catalog · 1094
Universe: every record in evidence/catalog.json. Rows are ordinary links, not citation tags, and therefore do not enter coverage. “First” and “all chapters” use the published-substantive corpus.
design-note · 4
| ID | Pinned source | What this excerpt supports | First citation | All citing chapters |
|---|---|---|---|---|
INBOX-WAKE-LATCH-NOTECancellation-convergence latch decision and remaining gap | .agents/notes/implemented/bug-fix/2026-08-07-cancel-convergence-wake-latch.md:9-29 | Records why the latch exists, why it distinguishes post-abort wakes, and how the post-hasPending sub-microtask gap can still park input. | 26 | 26 |
PARALLEL-NOTE-DRIFTStale cancellation and Code Mode claims in the implemented note | .agents/notes/implemented/feature/2026-07-10-parallel-tool-call-execution.md:43-51 | The older note still says unstarted calls have no audit event and the Code Mode queue remains serial; current source instead uses synthetic call/result pairs and a parallel per-run scheduler. | 18 | 18 |
PARALLEL-SAFETY-NOTEConservative safety contract of the unary classifier | .agents/notes/implemented/feature/2026-07-10-parallel-tool-call-execution.md:17-25 | The classifier sees only the current call's arguments; the scheduler neither compares siblings nor proves resource compatibility, so calls whose safety is relational must remain exclusive. | 18 | 18 |
TOOLCAT-PARALLEL-OPTINSConservative parallel declarations for shipped tools | .agents/notes/implemented/feature/2026-07-10-parallel-tool-call-execution.md:53-65 | The implementation note lists Web search and fetch, filesystem reads, Session Query trace and read, and subagent delegation as opt-ins, while writes and edits, shells, query searches, workflow, human interaction, todo, Code, and Cordis remain exclusive. | 17 | 17 |
generated-doc · 4
| ID | Pinned source | What this excerpt supports | First citation | All citing chapters |
|---|---|---|---|---|
TOOL-PIPELINETool execution pipeline | docs/tool-execution-pipeline.md:4-60 | The complete order of pre hooks, monotonic guards, around execution, post hooks, normalization, finalization, and immutable results. | 16 | 16, 33 |
TOOLCAT-GENERATEDGenerated-tool-catalog scope and complete package map | docs/tool-catalog.md:1-41 | The catalog explains real plugin boot for dynamic schemas, default and required branches, configurable names, and excluded examples, then lists every shipped tool package at the pinned baseline with names, dependencies, effects, and aliases. | 17 | 17 |
TOOLCAT-PACKAGE-MAPNames and capability seams for 24 shipped tool packages | docs/tool-catalog.md:16-41 | The package map lists model-visible names, requirements, writes or effects, shipped aliases, and deployment notes for every package, including opt-in Cordis, conditional read_image, configured subagents, and child-only report. | 17 | 17 |
TURN-SEQUENCEAgent turn and step sequence | docs/agent-lifecycle.md:19-80 | The sequence of input claims, durable events, parallel tool settlement, stop points, and SDK-facing events. | 01 | 01, 06 |
generated-source · 1
| ID | Pinned source | What this excerpt supports | First citation | All citing chapters |
|---|---|---|---|---|
SESSION-KNOWN-EVENTSThe 44 event types known to this build | packages/core/session/src/known-event-types.ts:9-64 | The generated catalog lists all 44 event types declared in the repository and lets persistence refuse unknown required vocabulary. | 09 | 09 |
official-doc · 79
| ID | Pinned source | What this excerpt supports | First citation | All citing chapters |
|---|---|---|---|---|
APPROVAL-DOC-API-DRIFTAPI proxy README approval-capability drift | packages/host/apiproxy/README.md:75-81 | The README still says the pending interaction table handles questions only and has no approval entries. | 19 | 19 |
APPROVAL-DOC-PRESET-DRIFTPermission README identifier drift | packages/interaction/permission-presets/README.md:5-17 | The README still names the durable event permissionPresets/preset and the command /permissionPresets. | 19 | 19 |
ARCH-LAYERSProfile, bundle, and patch layers | docs/architecture.md:15-37 | The runtime plugin tree is composed in bundle, profile patch, home patch, and CLI overlay order. | Not cited in this corpus | — |
ARCH-LOGSession log and capability seams | docs/architecture.md:92-102 | The log is the source of truth for model context; model-visible data must be reconstructable, and a seam includes definition, provider, and consumer. | 00 | 00, 02, 12 |
ARCH-PLUGIN-CORECordis and the unprivileged core | docs/architecture.md:9-13 | Every product component is a plugin composed through services, typed events, and reversible effects on a shared context. | 00 | 00, 02 |
ARCH-TURNTurn and step flow | docs/architecture.md:63-90 | The relationship among turns, steps, prompts, LLM calls, tools, and live waterfalls. | 02 | 02, 06 |
CAP-MCP-DEFAULT-OFFMCP memory examples are default-off | examples/mcp-memory/README.md:1-33 | The three third-party MCP memory configurations are default-off interoperability examples; no server ships by default, and installation, operation, and provider behavior remain external responsibilities. | 22 | 22 |
CAP-MCP-LIMITSKnown MCP bridge limitations | packages/mcp/mcp-client/README.md:109-115 | The README states that only Tools are bridged, startup timeout comes from the SDK, HTTP recovery differs, Native non-text is lossy, and unsupported output schemas are not enforced. | 22 | 22, 33 |
CODEMODE-README-DRIFTtool-cordis README still describes the old five-tool and config surface | packages/extensions/tool-cordis/README.md:5-27 | The README still lists the old five-tool cordis_inspect surface and claims an ackTimeoutMs runner option; production source has seven tools and the current runner config has only vmTimeoutMs. | 23 | 23 |
DESIGN-CORDIS-SEMANTICSCordis service, event, waterfall, and effect semantics | docs/cordis-primer.md:7-44 | Plugins decouple implementations through service keys, wait through declarative injection, coordinate through typed events, and bind registration to teardown with reversible effects. | 02 | 02 |
FAILURE-RETRY-DOC-DRIFTRetry README drift about fresh Turns | packages/llm/llm-retry/README.md:1-13 | The README says every retry closes the failed Turn and opens a freshly numbered Turn, conflicting with the current Step-local loop and tests. | 27 | 27 |
INBOX-JSONL-DURABILITYJSONL fsync, write-behind, and flush | packages/session/session-persistence-jsonl/README.md:40-52 | Initial and later batches are fsynced with rollback on failure; live events use a fixed batching window while flush and teardown drain. | 26 | 26 |
INBOX-README-DRIFTApiProxy README drift on next-step projection | packages/host/apiproxy/README.md:41-41 | The README says next-step steering stays outside Web projection, while current queueItems and ChatView explicitly project and render it. | 26 | 26 |
LLM-RETRY-DOC-DRIFTRetry README drift from the current loop boundary | packages/llm/llm-retry/README.md:1-53 | The README repeatedly says retries close the old Turn and open a freshly numbered Turn, while production source and tests continue in the same loop, Turn, and Step. | 08 | 08 |
MEMORY-MCP-BOUNDARYResponsibility boundary of default-off third-party Memory MCP examples | examples/mcp-memory/README.md:5-82 | The three examples are opt-in overlays only; Harness owns MCP transport and tool discovery, not server installation, databases, models or embeddings, provider data, or semantics. The README describes provider storage and requires manual cross-Session recall validation. | 14 | 14, 33 |
MEMORY-QUERY-TOOL-CONTRACTModel-facing Session-query tools not mounted by default | packages/session-query/tool-session-query/README.md:5-20 | The opt-in package declares five model tools that shipped Hosts do not mount by default, defines exact-cwd authority and hidden unauthorized lineage, and states that the package itself does not truncate output. | 14 | 14 |
MEMORY-REFERENCE-DOC-DRIFTREADME claim of standard-TUI injection integration | packages/context/session-reference/README.md:13-18 | The README says the standard TUI installs a one-shot pre-step wrapper while idle and injects before steering while running, but the pinned shipped composition and production consumers contain no corresponding mount. | 14 | 14 |
MEMORY-REFERENCE-OPT-INThe context package overview marks session-reference as opt-in | packages/context/README.md:5-14 | The context package overview names only agent-instructions as part of the default bundle and explicitly classifies time-context, tmux-context, and session-reference as opt-in. | 14 | 14 |
MEMORY-REFERENCE-TRUSTTrusted-caller and snapshot limitations of Session reference | packages/context/session-reference/README.md:45-50 | The README explicitly says the service assumes its Host may read every Session exposed by sessionQuery and that references are text-only snapshots, not live links, forks, resumes, or subscriptions. | 14 | 14 |
MEMORY-SKILL-CLIENT-UIWeb Skill candidate caching, literal gestures, and failure degradation | packages/client/ui-skill/README.md:5-9 | The client caches the user-invocable catalog per ordinary Session, writes literal /name from the slash menu for Host pre-step interpretation, and folds skill.list failure into a silently missing menu group. | 14 | 14 |
MEMORY-WEB-SEARCHLocal-first and remote-content search UX in Workspace Browser | packages/client/ui-workspace/README.md:5-11 | A nonblank query immediately matches title and workspace, then merges Host current-conversation content hits after 250 ms; remote failure preserves local results with a warning, and the final list is deduplicated and capped at 20. | 14 | 14 |
OBS-PRIVACY-BOUNDARYData leaving the machine and lineage notes | packages/session/session-telemetry-otel/README.md:36-42 | Enumerates uploaded messages, tools, files, prompts, todos, compaction, feedback, and cwd; no built-in redaction exists, while credentials are structurally absent. | 28 | 28, 33 |
OBS-QUERY-TOOLSFive model-facing session-query tools | packages/session-query/tool-session-query/README.md:5-76 | Documents five opt-in tools not mounted by shipped hosts, unabridged exact reads, and the generic spill policy's responsibility. | 28 | 28 |
OBS-TRAJECTORY-CONTRACTTrajectory browser-view contract | packages/client/ui-trajectory/README.md:5-17 | Defines a window-scoped ledger with paging, virtualization, timeline, inspector, blank in-flight durations, and no model effect. | 28 | 28 |
OPEN-API-BODY-BOUNDResident request-body bound of the API bridge | packages/client/connection/README.md:23-26 | Each request body is fully buffered in memory with a default maxRequestBodyBytes of 160 MiB; lowering the resident bound requires streaming or smaller image limits. | 34 | 34 |
OPEN-ATOMIC-DURABILITYDurability and orphan-lock boundary of atomic write | packages/util/atomic-write/README.md:23-45 | Same-directory rename provides visible whole-value atomicity, but the primitive does not fsync the file or directory and a crash can leave an orphan lock requiring verified operator recovery. | 34 | 34 |
OPEN-ATTACHMENT-LOCAL-RETENTIONIndefinite retention in the local attachment backend | packages/attachment/attachment-local/README.md:17-20 | The local backend explicitly retains objects indefinitely and defers reference-aware garbage collection. | 34 | 34 |
OPEN-ATTACHMENT-RETENTIONAttachment retention and garbage-collection gap | packages/attachment/attachment/README.md:17-21 | Immutable objects may be shared by resume and fork, so retention and garbage collection are deferred; other media and persistent drafts require separate lifecycles. | 34 | 34 |
OPEN-CHECKPOINT-UNKNOWNExternal outcome remains unknown after checkpoint | packages/session/session-checkpoint-policy/README.md:5-45 | The policy checkpoints execution intent before a top-level tool body; recovery marks a persisted call with no result as TOOL_OUTCOME_UNKNOWN, does not retry automatically, and provides no generic exactly-once effects. | 34 | 34 |
OPEN-CLIENT-UNLOADGeneral client unload-chain gap | packages/client/runtime/README.md:89-93 | loader.unload is a not-implemented stub, with no general chain from fiber disposal through registration and style removal. | 34 | 34 |
OPEN-FEEDBACK-CONSISTENCYCross-process consistency and retention limits of feedback | packages/feedback/message-feedback/README.md:76-84 | Compare-and-set holds only inside one process queue; several Host processes may silently lose updates, and there is no durable deletion cascade, item-count cap, or aggregate-row byte cap. | 34 | 34 |
OPEN-NATIVE-OUTPUT-BOUNDUnbounded native-command output buffering | packages/util/native-command/README.md:25-27 | Both stdout and stderr buffer without bounds in memory; current justification relies only on callers invoking small-output native tools. | 34 | 34 |
OPEN-OTEL-BOUNDARYOTel SDK and live-collector boundary | packages/session/session-telemetry-otel/README.md:30-38 | Authentication, TLS, retry, queues, and throttling belong to the SDK; the outer shutdown deadline cannot cancel transport, and complete event data may leave according to the current redaction result. | 34 | 34 |
OPEN-PROCESS-PLATFORM-LIMITSPlatform limits of local process observation | packages/subprocess/subprocess-local/README.md:26-33 | Windows tree support is best-effort and terminal inspection supports only Linux and macOS; reparenting or setsid can let a daemonized child escape observation. | 34 | 34 |
OPEN-RALPH-VERIFICATIONRalph self-declared completion and effort bounds | packages/workflow/tool-ralph/README.md:86-93 | Completion is worker self-declaration without an independent evaluator, and round count is the only aggregate effort bound while token, price, and elapsed-time budgets are deferred. | 34 | 34 |
OPEN-REPLAY-CONCURRENCYConcurrent-delegation and failure-expression gaps in replay | packages/test-support/llm-replay/README.md:77-80 | First-call-order script binding assumes sequential delegation, concurrent siblings bind nondeterministically, and some throw, hang, and summarizer cases require a sidecar. | 34 | 34 |
OPEN-SANDBOX-DOC-OMISSIONWindows omission in the parent sandbox README summary | packages/sandbox/sandbox/README.md:5-26 | The implementation-summary parenthetical lists only Linux and macOS, while the same page's fail-closed error includes the Windows ACL runner. | 34 | 34 |
OPEN-SANDBOX-PLATFORM-LADDERActual platform ladder of the sandbox provider | packages/sandbox/sandbox-local/README.md:1-15 | The provider README explicitly lists Linux bwrap and Landlock, macOS Seatbelt, and the Windows ACL restricted-token runner. | 34 | 34 |
OPEN-SANDBOX-PLATFORM-LIMITSPer-platform sandbox enforcement limits | packages/sandbox/sandbox-local/README.md:34-40 | Windows ACL and older Landlock ABIs may be partial, Seatbelt depends on deprecated sandbox-exec, runner selection is cached, and a custom runner is an operator assertion. | 34 | 34 |
OPEN-SANDBOX-SCOPEExplicit scope of the sandbox seam | packages/sandbox/sandbox/README.md:37-43 | The contract covers file effects rather than network, process, syscall, device, or credential restrictions and explicitly bounds same-world confinement, stderr denial classification, and in-band runner diagnostics. | 34 | 34 |
OPEN-SETTINGS-CROSS-PROCESSCross-process consistency boundary of settings | packages/settings/settings/README.md:41-45 | The settings seam serializes by namespace only in-process; cross-process convergence belongs to the provider, and the local file provider resolves same-namespace conflicts last-write-wins. | 34 | 34 |
OPEN-SETTINGS-REDACTION-DOCPublic limitations of settings wire redaction | packages/settings/settings/README.md:41-45 | The public documentation records both the walker blind spot and serialized schema-default path and defers a fail-closed describeForWire boundary. | 34 | 34 |
OPEN-SNAPSHOT-BACKEND-GAPBackend gap in snapshot harvesting | packages/test-support/acp-snapshot/README.md:74-78 | Session harvest supports raw JSONL only; compressed JSONL and SQLite compositions have no snapshot-harvest path. | 34 | 34 |
OPEN-TELEMETRY-HANDOFFExact semantics of the telemetry handoff cursor | packages/session/session-telemetry/README.md:13-35 | Disclosure does not claim delivery; the cursor marks handed-off rather than delivered, resume does not backfill prior-process misses, and receivers still need deduplication. | 34 | 34 |
OPEN-TELEMETRY-LIMITSTelemetry delivery and redaction limitations | packages/session/session-telemetry/README.md:45-49 | A backend queue may be lost on crash, the seam ships no redaction rule, and on-demand replay uses policy current at trigger time. | 34 | 34 |
OPEN-WEB-SSRFSSRF gap in HTTP fetch | packages/web/web-fetch-http/README.md:17-51 | The provider bounds protocol, size, timeout, content, and same-origin redirects but has no private-destination blocking, post-resolution validation, or per-hop revalidation, and says not to enable it where sensitive internal targets are reachable. | 34 | 34 |
OPEN-WORKFLOW-DURABILITYWorkflow durability and budget gaps | packages/workflow/workflow/README.md:53-59 | Supports foreground collection only, with no journaling or resume, saved or nested workflows, cross-child token budget, or service-level tracking of live runs. | 34 | 34 |
OPEN-WORKFLOW-ISOLATIONWorkflow worker and vm are not a security boundary | packages/workflow/workflow-worker-thread/README.md:5-22 | The worker isolates synchronous execution and permits termination, but node:vm only shapes APIs; an escaped script can obtain host-process authority and untrusted scripts require another engine. | 34 | 34 |
PARALLEL-AGENT-READMECurrent concurrency semantics in the agent-loop README | packages/core/agent-loop/README.md:68-74 | The README accurately describes exclusive barriers, the bounded rolling pool, body-only overlap, ordered policy/results/context, and draining on cancellation or scheduler failure. | 18 | 18 |
PARALLEL-READMENative and Code Mode concurrency in the tools README | packages/core/tools/README.md:119-130 | The README describes Code Mode's independent per-run pool, default cap of ten, exclusive barriers, ordered contexts, and settlement drain while distinguishing it from the native scheduler under the same classification principle. | 18 | 18 |
PERSIST-ATTACH-DECODE-DOCAttachment README claims full decode on read | packages/attachment/attachment-local/README.md:1-7 | The README explicitly says both write admission and reads fully decode the raster before accepting format and dimensions. | 11 | 11 |
PERSIST-ATTACH-LIMITSIndefinite Attachment retention limitation | packages/attachment/attachment-local/README.md:17-21 | Known limitations explicitly state that objects are retained indefinitely and reference-aware garbage collection is deferred. | 11 | 11 |
PERSIST-WORKSPACE-OWNERSHIPWorkspace deletion and ownership boundary | packages/workspace/workspace/README.md:11-23 | Workspace deletion removes only registration, durable order entry, and Session accounting; it never touches the directory, user files, live Sessions, or persisted logs. | 11 | 11 |
PERSIST-WORKSPACE-REFRESH-DOCWorkspace README refresh statement | packages/workspace/workspace/README.md:41-44 | The README says external Session deletion or cwd damage is observed after the next refresh or restart. | 11 | 11 |
PKG-HIERARCHYPackage groups and dependency direction | packages/README.md:5-67 | Responsibilities and publication expectations for 49 package groups, plus the rule that extensions depend only on service definitions. | 03 | 03 |
PLANSTATE-DOC-GOAL-COMMANDStale status-widget limitation in the command-goal README | packages/goal/command-goal/README.md:53-58 | The README still says there is no continuous status widget, although the current Web ships a projection-driven GoalBar. | 15 | 15 |
PLANSTATE-DOC-GOAL-TOOLStale concludeTurn claim in the tool-goal README | packages/goal/tool-goal/README.md:13-18 | The README says autonomous complete and blocked call concludeTurn, contradicting the current deferContext source and tests. | 15 | 15 |
PLANSTATE-DOC-GOAL-UIStale inbox/context architecture in the ui-goal README | packages/client/ui-goal/README.md:5-21 | The Model Experience section still says Remote mutations write agent/inbox/spliced and queue Goal context, while also documenting that the projection omits activation. | 15 | 15 |
PLANSTATE-PLAN-LIMITATIONDocumented Plan recovery and presentation constraints | packages/plan/plan-mode/README.md:92-98 | The README records loss of a post-final-pre-Step selection on process exit, Fork versus spawn behavior, live-child review restrictions, and the Web-only specialized renderer. | 15 | 15 |
SANDBOX-DOC-BACKENDSBackend and consumer drift in the sandbox README | packages/sandbox/sandbox/README.md:11-13 | The README implementation summary lists only Linux and macOS local backends and only Bash as a consumer, while current production code also contains Windows ACL and the filesystem sandbox consumer. | 20 | 20 |
SANDBOX-DOC-BOUNDARYOfficial sandbox boundary and in-band diagnostic limits | packages/sandbox/sandbox/README.md:37-43 | The README explicitly limits the policy to file effects, excludes network, process, syscall, device, and credential restrictions, and records the in-band limits of stderr denial and runner attribution. | 20 | 20, 33 |
SANDBOX-DOC-ERROR-CODEMissing error code in the filesystem README | packages/fs/fs/README.md:49-51 | The README's stable FsErrorCode enumeration lists many errors but omits FS_SANDBOX_DENIED, which the source type defines, creating concrete documentation drift. | 20 | 20 |
SANDBOX-E2B-LIMITSE2B filesystem synchronization, lock, and reopen limits | packages/e2b/fs-e2b/README.md:26-32 | The README explicitly has no host synchronization, limits mutation coordination to the host process, allows replacement races with external writers, and records a reopen race between canonical path resolution and stream opening. | 20 | 20 |
SANDBOX-FS-LOCAL-LIMITSLocal filesystem concurrency and cleanup limits | packages/fs/fs-local/README.md:40-45 | The README states that mutation locks are process-local, only guarded create has cross-process no-replace, replacement can still race, and failed post-commit staging cleanup leaves residue. | 20 | 20 |
SANDBOX-OBSERVATION-DOCFirst-wins and removable semantics of the observation gate | packages/fs/fs-observation-policy/README.md:30-50 | The README defines the three fs event decisions, states that intent slots are first-wins by registration order, and says removing the plugin falls back to unconditional write and edit on the bare provider. | 20 | 20 |
SANDBOX-OBSERVATION-LIMITSKnown guarantee boundaries of observation policy | packages/fs/fs-observation-policy/README.md:68-73 | Official limits state that state does not persist across resume, actors without sessions cannot satisfy policy, direct ctx.fs reads do not record, and a windowed read authorizes by version without proving complete viewing. | 20 | 20, 33 |
SANDBOX-WINDOWS-CAPSPartial Windows ACL capability and cleanup boundary | packages/sandbox/sandbox-windows-acl/README.md:73-82 | The official boundary records Everyone and hard-link bypasses, standing workspace ACEs, revocable per-session temp capabilities, and inert residue after crashes or cleanup failures. | 20 | 20 |
SDK-WIRE-LIMITSDocumented SDK wire limitations | packages/sdk/protocol/README.md:35-39 | The protocol has no version negotiation, prompt cancel, or session close; serverInfo.version is 0.0.1 without expected-version comparison, and server-to-client requests are currently a dead capability. | 29 | 29 |
SEC-DYNAMIC-ROOT-SCOPESession ownership and process-wide effect scope for dynamic packages | packages/extensions/tool-cordis/README.md:11-23 | The public tool contract says each verb is controllable only from the defining Session, while an active package may affect other Sessions in the same process, and states that the sandbox is not a security boundary. | 31 | 31 |
SEC-E2B-LIMITSE2B filesystem synchronization and race limits | packages/e2b/fs-e2b/README.md:26-32 | The remote filesystem does not automatically synchronize with the Host, coordination is Host-process-local, and close/reopen has a documented race. | 31 | 31 |
SEC-FS-LOCAL-LIMITSLocal-filesystem boundaries and races | packages/fs/fs-local/README.md:36-45 | cwd is not a sandbox; absolute paths and .. can escape, mutation locks are process-local, cross-process guarded replacement and metadata version tokens can race, and failed cleanup may leave staging residue. | 31 | 31 |
SEC-OBSERVATION-LIMITSExplicit observation-policy limits | packages/fs/fs-observation-policy/README.md:68-73 | Observation state does not survive resume, direct ctx.fs reads are not observations, and a windowed read authorizes a full overwrite while the version is unchanged; the mechanism is a freshness gate, not authorization. | 31 | 31 |
SEC-SANDBOX-SCOPEExplicit sandbox exclusions | packages/sandbox/sandbox/README.md:37-43 | The documentation excludes syscall, device, and credential restrictions and records the limits of same-world confinement, stderr classification, and forgeable in-band diagnostics. | 31 | 31 |
SHELL-JOBS-UIRead-only Web Job mirror and restart semantics | packages/client/ui-jobs/README.md:5-24 | The Web renders read-only live and settled rows from a Host mirror; restart empties the list while the transcript retains start cards, and unowned Jobs are visible to every Session. | 21 | 21 |
SHELL-PWSH-DOC-DRIFTStale PowerShell inject names in README | packages/shell/tool-pwsh/README.md:5-9 | The README declares the tool-pwsh inject list as tools/bash/systemPrompt/bashEnv. | 21 | 21 |
TINV-POLICYLayered testing policy | docs/testing.md:7-15 | Defines the distinct proof boundaries of unit, per-file coverage, real-API, keyless snapshot, and browser snapshot tiers. | 32 | 32, 33 |
WEBUI-DETAILS-LIMITTool-details entry-point gap | packages/client/ui-conversation/README.md:57-64 | The conversation documentation records that openDetails exists but has no caller in the current assembly, leaving raw selected-call details unreachable. | 30 | 30 |
WEBUI-DEVELOPER-PREVIEWDeveloper Preview status | README.md:9-11 | The root README labels the project Developer Preview and warns that current versions may contain breaking changes. | 30 | 30 |
WEBUI-UNLOAD-LIMITGeneral client-unload-chain gap | packages/client/runtime/README.md:89-92 | The runtime's public Known Limitations states that loader.unload is still a stub with no general chain from fiber disposal through registration and style removal. | 30 | 30 |
production-config · 57
| ID | Pinned source | What this excerpt supports | First citation | All citing chapters |
|---|---|---|---|---|
ACP-PACKAGEACP adapter release version and standard SDK pin | packages/acp/acp/package.json:1-36 | The public adapter package is version 0.1.0-rc.5 and pins @agentclientprotocol/sdk 0.25.1. | 29 | 29 |
APPROVAL-SHIPPED-PRESETSThree shipped permission combinations | packages/bundle/base/cordis.patch.yml:166-205 | The base bundle composes read-only+ask, workspace-write+ask, and danger-full-access+never, with an environment-derived deployment default. | 19 | 19 |
BASE-BUNDLE-SEMANTICSBase-bundle patch and activation semantics | packages/bundle/base/cordis.patch.yml:1-24 | Base is one insert over an empty root; later layers are last-write-wins by ID, config is replaced wholesale, and row order carries no load semantics. | 04 | 04 |
BASE-BUNDLE-SPINEThe base bundle runtime spine | packages/bundle/base/cordis.patch.yml:24-100 | Base directly assembles shared LLM, session, API, agent, jobs, retry, settings, credentials, adapter, and JSONL persistence services. | 04 | 04 |
CAP-LSP-OPTIONALLSP in the optional E2B composition | examples/headless-agent/e2b.cordis.yml:35-57 | The example explicitly mounts lsp, its stdio provider, a pinned TypeScript server command/extension map, and tool-lsp, showing that availability depends on optional composition. | 22 | 22 |
CAP-SKILL-BASEBase Skill service and default tool rows | packages/bundle/base/cordis.patch.yml:232-248 | The base composition mounts agent instructions, the Skill registry, filesystem provider, and tool-skill while leaving the badge disabled. | 22 | 22 |
CAP-SKILL-SHIPPEDScoped Skill discovery and loader in the Standard preset | apps/cli/config/agent-presets/standard/agent.cordis.yml:76-87 | The Standard preset registers filesystem discovery and tool-skill into its layered registry view while also merging deployment-global contributions. | 22 | 22 |
CAP-WEB-SHIPPEDShipped composition enables DeepSeek Search only | packages/bundle/base/cordis.patch.yml:396-418 | Base pins deepseek-official search, mounts its provider, exposes web_search with 60 seconds, and disables fetch with no fetch provider because SSRF protection is deferred. | 22 | 22 |
CODEMODE-HEADLESS-COMPOSITIONThe headless bundle mounts CodeRuntime while mode remains opt-in | packages/bundle/headless/cordis.patch.yml:17-26 | The headless bundle maps tools.mode to DSH_TOOLS_MODE and mounts the worker-thread CodeRuntime; when mode is unset, the schema default remains native. | 23 | 23 |
CODEMODE-SELF-MOD-OPTINModel self-modification tools are an explicit opt-in overlay | examples/headless-agent/advanced.cordis.yml:28-34 | The advanced headless example explicitly adds CodeRuntime, the Cordis host runner, and tool-cordis; the base bundle does not automatically add model self-modification tools to every agent. | 23 | 23 |
CODEMODE-WEB-COMPOSITIONThe web bundle's temporary process-wide Code Mode switch | packages/bundle/web-app/cordis.patch.yml:35-50 | The web bundle also selects native/code/both through DSH_TOOLS_MODE and labels that environment variable a temporary process-wide seam until per-session UI selection exists. | 23 | 23 |
HEADLESS-BUNDLEThe headless product surface | packages/bundle/headless/cordis.patch.yml:1-35 | Headless mounts no Host, HTTP, Web, or browser plugins; it adds only the code runtime, launch-argument provider, and a one-shot Agent driver. | 04 | 04 |
MEMORY-DEFAULT-COMPOSITIONDefault JSONL persistence with full-text indexing disabled | packages/bundle/base/cordis.patch.yml:98-121 | Base writes Session logs under the DSH home sessions directory and mounts SQLite sessionQuery; openAt never preserves exact reads, titles, and lineage while search fails and SQLite is never opened. | 14 | 14 |
MEMORY-MINIMAL-PRESETThe minimal preset explicitly omits runtime context, compaction, and Skills | apps/cli/config/agent-presets/minimal/agent.cordis.yml:1-62 | Minimal is a fixed-prompt two-tool composition that suppresses runtime-context snapshots, mounts only persistent Bash and str_replace_editor, and explicitly states that context compaction is absent. | 14 | 14 |
MEMORY-STANDARD-PRESETSkills and compaction in the standard preset | apps/cli/config/agent-presets/standard/agent.cordis.yml:76-155 | The standard preset mounts the filesystem Skill provider, model-facing Skill tool, basic compaction, manual command, and tool-result pruner. | 14 | 14 |
MULTIAGENT-BASE-COMPOSITIONBase-bundle multi-agent composition | packages/bundle/base/cordis.patch.yml:292-338 | Base registers the subagent service, spawn/fork providers, control/list tools, and report setup, binding spawn to continuable and fork to one-shot. | 24 | 24 |
MULTIAGENT-CODE-PRESETContinuable fork and disabled external tools in the Code preset | apps/cli/config/agent-presets/code/agent.cordis.yml:164-220 | The Code preset configures both spawn and fork as continuable and retains disabled Codex/Claude Code tool rows. | 24 | 24 |
MULTIAGENT-CORDIS-PRESETContinuable fork in the Cordis preset | apps/cli/config/agent-presets/cordis/agent.cordis.yml:155-220 | The Cordis preset configures both spawn and fork tools as continuable and keeps external-product tools disabled. | 24 | 24 |
MULTIAGENT-STANDARD-PRESETComplete delegation configuration in the Standard preset | apps/cli/config/agent-presets/standard/agent.cordis.yml:1-251 | The Standard preset mounts control/list tools, configures both spawn and fork as continuable, keeps Codex/Claude Code tool rows disabled, and does not load their external providers. | 24 | 24 |
MULTIAGENT-WEB-PLANESubagent boundary between Web host and Agent planes | packages/bundle/web-app/cordis.patch.yml:367-390 | Web retains the cross-Session registry/backends on the host plane and disables base model-facing delegation/control tools so Session presets can choose them. | 24 | 24 |
OBS-BASE-DEFAULTShipped telemetry defaults | packages/bundle/base/cordis.patch.yml:129-161 | The base bundle defaults to DISABLED, mounts no redaction, and specifies endpoint, gzip, batch, queue, and shutdown settings. | 28 | 28 |
OBS-OTEL-DEPENDENCIESOTel dependency surface of the telemetry backend | packages/session/session-telemetry-otel/package.json:33-41 | The manifest declares the generic OTel API, Logs API/SDK, resources, the OTLP exporter base, and the OTLP log exporter, with no trace or metrics SDK. | 28 | 28 |
OPEN-CI-SERIAL-LANESCurrent state of hosted and self-hosted serial lanes | .github/workflows/ci.yml:491-696 | Hosted Linux and macOS serial reference jobs are disabled with if:false, while self-hosted Linux and Windows serial lanes run only on master pushes and do not block pull requests. | 34 | 34 |
OPEN-CI-VERDICTDependency boundary of all-checks-passed | .github/workflows/ci.yml:904-935 | all-checks-passed aggregates named jobs in the same workflow and explicitly excludes windows-native; that dependency graph alone does not prove the repository's live ruleset or required-status configuration. | 34 | 34 |
OPEN-CI-WINDOWS-SIGNALSWine aggregate input and independent native-Windows signal | .github/workflows/ci.yml:328-489 | The pull-request windows job invokes the Wine runner on hosted Linux; the real-Windows-kernel job runs the complete inventory but is explicitly absent from all-checks-passed.needs. | 34 | 34 |
OPEN-CLI-VERSIONCurrent CLI package version | apps/cli/package.json:1-12 | At the pinned commit, the apps/cli package version is 0.1.0-rc.5, different from the host.describe placeholder. | 34 | 34 |
OPEN-REAL-API-CISecret and skip boundary of real-API E2E | .github/workflows/e2e.yml:1-65 | The separate workflow skips the entire job for fork and Dependabot pull requests, and its comment states that a job-level skip reports as a successful check. | 34 | 34 |
OPEN-SANDBOX-CIAggregate boundary and run guard of the real-kernel sandbox workflow | .github/workflows/sandbox.yml:1-113 | The workflow runs only on master pushes; its matrix covers bwrap, x64 and arm64 Landlock, and Seatbelt, and its command requires both platform files to have run so a self-skip cannot pass green. | 34 | 34 |
PLANSTATE-SHIPPED-PLAN-POLICYShipped base-profile Plan policy | packages/bundle/base/cordis.patch.yml:265-279 | The shipped policy requires non-mutating exploration, a decision-complete plan, a stable tool catalog, and forbids substituting todo_write for Plan. | 15 | 15 |
PLANSTATE-SHIPPED-TODO-POLICYShipped base-profile Todo parallel policy | packages/bundle/base/cordis.patch.yml:367-375 | The shipped base profile mounts tool-todo with allowParallelInProgress explicitly set to true. | 15 | 15 |
PROJ-SHIPPED-COMPOSITIONThe shipped composition explicitly mounts persistence, projections, and checkpoint policy | packages/bundle/base/cordis.patch.yml:98-356 | The base patch mounts JSONL Session persistence, the shared projection registry, and the semantic checkpoint policy for model requests and top-level tools as separate rows rather than one implicit service. | 12 | 12 |
SANDBOX-E2B-COMPOSITIONSame-world composition for headless E2B | examples/headless-agent/e2b.cordis.yml:1-41 | The example disables local subprocess and fs, inserts the E2B owner plus remote subprocess and fs with full sandbox policy, and documents that cwd, policy root, and Bash or PTY workdir must name the same remote directory. | 20 | 20 |
SANDBOX-SHIPPED-FSShipped filesystem policy and tool layers | packages/bundle/base/cordis.patch.yml:210-230 | The base bundle composes tool-fs, tool-fs-search, and fs-observation-policy together, so model mutations pass through the observation gate in the default composition. | 20 | 20 |
SANDBOX-SHIPPED-FS-PROVIDERShipped sandboxed filesystem provider | packages/bundle/base/cordis.patch.yml:441-445 | The base bundle's provider row explicitly installs @deepseek-ai/dsh-fs-sandbox rather than the bare local filesystem. | 20 | 20 |
SANDBOX-SHIPPED-POLICYShipped sandbox and approval defaults | packages/bundle/base/cordis.patch.yml:166-205 | The base bundle installs the local sandbox and shared policy, defaults the mode to workspace-write, derives ask approval for it, and ships read-only, workspace-write, and danger-full-access presets. | 20 | 20 |
SEC-SELF-MOD-OPTINExplicit opt-in for self-modification | examples/headless-agent/advanced.cordis.yml:28-34 | The advanced headless example explicitly inserts the dynamic Host runner, showing that self-modification is not an unconditional core capability. | 31 | 31 |
SEC-SHIPPED-PERMISSIONShipped permission modes and launch default | packages/bundle/base/cordis.patch.yml:163-205 | The base composition provides read-only + ask, workspace-write + ask, and danger-full-access + never, defaults to workspace-write, and permits DSH_PERMISSION_MODE override. | 31 | 31 |
SHELL-MINIMAL-COMPOSITIONMinimal isolated persistent-shell composition | apps/cli/config/agent-presets/minimal/agent.cordis.yml:1-60 | Minimal composes only persistent Bash and an editor through an isolated Terminal service, Bash backend, and persistent wrapper, without raw Terminal tools. | 21 | 21 |
SHELL-STANDARD-COMPOSITIONStandard one-shot shell and Job composition | apps/cli/config/agent-presets/standard/agent.cordis.yml:35-74 | Standard selects tool-bash or tool-pwsh by platform and places model Job controls in the Agent preset while the registry remains on the Host. | 21 | 21 |
TINV-CI-LINUXLinux static, coverage, and consumer gates | .github/workflows/ci.yml:63-257 | Defines independent Linux static-analysis, coverage, and consumer-verification jobs and their dependencies. | 32 | 32 |
TINV-COVERAGE-BARPer-file full-coverage threshold | vitest.config.ts:264-283 | Enables per-file thresholds and sets statements, branches, functions, and lines to 100 percent. | 32 | 32 |
TINV-COVERAGE-EXEMPTParallel roster for heavy suites | scripts/coverage-exempt.ts:1-41 | Explains which suites skip instrumentation, why they still run under ordinary Vitest, and the roster's maintenance premise. | 32 | 32 |
TINV-COVERAGE-SCOPECoverage inclusion and exclusion surface | vitest.config.ts:160-268 | Limits coverage inclusion to the package src glob; examples and vendor lie outside it, while types, self-executing entries, and documented GUI, composition, and other special paths are explicitly excluded within it. | 32 | 32 |
TINV-NODE-MATRIXNode version matrix | .github/workflows/ci.yml:260-296 | Installs dependencies and runs the same check:node-compat compatibility-smoke command in independent Node 22.19 and 26 matrix jobs. | 32 | 32 |
TINV-PLATFORM-COVERAGEPlatform-conditional coverage surface | vitest.config.ts:21-84 | Adjusts suite and source exclusions for Windows, POSIX, and pwsh availability, giving the report platform-specific scope. | 32 | 32 |
TINV-REQUIRED-VERDICTall-checks-passed result aggregation | .github/workflows/ci.yml:904-935 | Lists aggregate dependencies, excludes native Windows, and makes skipped, cancelled, or failed results fail the aggregate; the YAML alone does not prove the live ruleset. | 32 | 32 |
TINV-SNAPSHOT-MODEKeyless snapshot modes | vitest.snapshot.config.ts:19-67 | Makes replay the credential-free default, loads environment only for record, reuses scripts for refresh, and separates parallel from serial execution. | 32 | 32 |
TINV-WINDOWSWine and native Windows jobs | .github/workflows/ci.yml:328-489 | Defines the pull-request Wine job and a complete job on a real Windows kernel; the latter is explicitly absent from all-checks-passed.needs. | 32 | 32 |
TOOLCAT-ATTACHMENTJSONL, local attachments, and disabled FTS in the base Host | packages/bundle/base/cordis.patch.yml:98-115 | The baseline Host mounts a local attachment service, allowing the standard fs package to register read_image; the same region shows Session Query present while full-text search defaults to openAt never. | 17 | 17 |
TOOLCAT-MINIMALThe complete two-tool minimal composition | apps/cli/config/agent-presets/minimal/agent.cordis.yml:1-62 | Minimal uses a complete fixed persona, suppresses runtime context, omits compaction, and exposes only persistent bash and str_replace_editor in isolated PTY and filesystem realms. | 17 | 17 |
TOOLCAT-STANDARD-BASEShell, filesystem, jobs, Skill, Goal, and plan tools in the standard preset | apps/cli/config/agent-presets/standard/agent.cordis.yml:35-124 | The preset selects one platform shell, mounts fs/search, job controls, Skill, Goal, and the stable exit_plan_mode schema, and explicitly keeps the tool catalog unchanged across plan-mode transitions for request-cache stability. | 17 | 17 |
TOOLCAT-STANDARD-ORCHESTRATIONDelegation, workflow, interaction, and Web tools in the standard preset | apps/cli/config/agent-presets/standard/agent.cordis.yml:157-251 | The preset mounts three child controls, continuable spawn and fork names, workflow, Ralph, ask, todo, and search-only Web, while explicitly disabling Codex and Claude Code delegation and fetch. | 17 | 17 |
WEB-AGENT-PLANEThe Web host-plane and agent-plane boundary | packages/bundle/web-app/cordis.patch.yml:276-408 | Web disables per-Agent capability rows from base and mounts them through per-session presets, while cross-session registries and host-API dependencies remain in the host plane. | 04 | 04 |
WEBUI-DUAL-ROSTERHost and browser plugin rosters | packages/bundle/web-app/cordis.patch.yml:97-203 | The web bundle configures Host services alongside modules, connection, runtime, and UI plugins carrying dsh.client entries. | 30 | 30 |
WORKFLOW-SHIPPED-BASEShipped Workflow and Ralph composition in Base | packages/bundle/base/cordis.patch.yml:315-382 | Base mounts the worker engine and workflow tool over spawn, plus Ralph over spawn with a 64-round ceiling. | 25 | 25 |
WORKFLOW-SHIPPED-PRESETPer-Agent Workflow isolation in the Standard preset | apps/cli/config/agent-presets/standard/agent.cordis.yml:165-233 | The delegation group isolates workflowEngine and mounts the worker, generic tool, and 64-round Ralph in the same entry-local realm. | 25 | 25 |
WORKFLOW-WEB-ISOLATIONWeb host plane disables base Workflow rows | packages/bundle/web-app/cordis.patch.yml:380-410 | The Web overlay disables base subagent, workflow engine, workflow tool, and Ralph rows so session presets determine Agent capabilities. | 25 | 25 |
production-source · 805
| ID | Pinned source | What this excerpt supports | First citation | All citing chapters |
|---|---|---|---|---|
ACP-CHILD-CANCELACP child cancellation, partial output, and authoritative reaping | packages/subagent/subagent-acp/src/run.ts:94-367 | Caller abort can immediately settle aborted with text collected so far and one best-effort session/cancel; dispose remains authoritative, requests cancel only if not already requested, and then applies the shared EOF-to-terminate-to-whole-tree-exit reaper. | 29 | 29 |
ACP-CHILD-CAPABILITIESACP child backend capability and cwd boundary | packages/subagent/subagent-acp/src/index.ts:124-169 | Each out-of-process child uses configured cwd or the parent session cwd and rejects an implicit process-cwd fallback; the provider advertises no output schema, depth, tool filter, or persona capability and does not inherit parent context. | 29 | 29 |
ACP-CHILD-ENV-MERGEExplicit env merge in the local subprocess provider | packages/subprocess/subprocess-local/src/spawn.ts:17-352 | The local provider starts from scrubbedParentEnv, merges explicit env/tombstones with target-platform semantics, and passes the result to process spawn. | 29 | 29 |
ACP-CHILD-ENV-POLICYShared subprocess environment-scrubbing policy | packages/subprocess/subprocess/src/index.ts:37-65 | The shared scrub removes credential-shaped and DSH_* names from ambient parent env while retaining ordinary runtime variables; explicit env is merged afterward. | 29 | 29 |
ACP-CHILD-STARTACP child startup transaction | packages/subagent/subagent-acp/src/run.ts:190-367 | Every run starts a fresh process and the parent separately mints a globally unique lifecycle id; the handle is published only after initialize and session/new succeed, and any spawn, handshake, or cancellation failure reaps the private child first. | 29 | 29 |
ACP-CODECACP content and stop-reason mapping | packages/acp/acp/src/codec.ts:9-65 | Baseline text concatenates verbatim, resource_link becomes an explicit bracketed reference, and other blocks reject; completed, interrupted, max-token, and other turn endings map into ACP vocabulary, with max-token becoming max_tokens at the codec layer. | 29 | 29 |
ACP-HANDSHAKEACP initialize, authentication, and fresh sessions | packages/acp/acp/src/index.ts:231-436 | The server always returns the standard SDK's PROTOCOL_VERSION, minimal prompt capabilities, and empty authMethods, with authenticate as a no-op; session/new accepts only an absolute primary cwd, empty additionalDirectories, and an empty MCP server list, then creates a fresh session. | 29 | 29 |
ACP-OUTPUT-PERMISSIONACP committed output and permission requests | packages/acp/acp/src/index.ts:130-229 | The bridge sends only committed assistant/message text or image placeholders; sessionUpdate transport/write rejection is caught and warned, while a client-handler failure cannot feed back through a response-free notification. Owned tool-call approvals are one-shot allow/reject and fail closed on cancellation or unknown choices. | 29 | 29 |
ACP-PROMPT-CANCELACP prompt correlation, errors, and cancel | packages/acp/acp/src/index.ts:145-345 | Each session permits one in-flight prompt; turn/end correlates the captured turn exactly, but the agent/error fallback for an uncaptured or different turn has no message causality and may misattribute. Output and settlement span whole-agent-to-idle, the max-token wrapper lowers to end_turn, and cancel affects only the target. | 29 | 29 |
ACP-QUIESCEACP connection-owned quiescence | packages/acp/acp/src/index.ts:348-415 | Connection close and plugin disposal share memoized quiescence: admission closes, the map clears, and prompts cancel and settle; owned-descendant drain failure only warns, after which handle-disposal failures alone are aggregated from allSettled. | 29 | 29 |
ACP-SDK-CONNECTIONACP standard stream and connection wiring | packages/acp/acp/src/index.ts:348-353 | The adapter wraps stdio with the SDK ndJsonStream and constructs the SDK AgentSideConnection. | 29 | 29 |
ACP-SDK-IMPORTSACP adapter standard-SDK imports | packages/acp/acp/src/index.ts:18-35 | The adapter imports PROTOCOL_VERSION, ndJsonStream, AgentSideConnection, and related ACP types directly from @agentclientprotocol/sdk. | 29 | 29 |
AGENT-CREATE-RESUMECreate, setupAndPublish, and resume control flow | packages/core/agent-loop/src/index.ts:606-709 | Fresh and persisted sessions converge on one prepare/setup/commit/publish path, while resume loading is also bounded by owner, caller, and factory cancellation. | 05 | 05 |
AGENT-FACTORY-SEAMFactory seam between the registry and concrete loop | packages/core/agent/src/index.ts:360-430 | The registry effect-scopes one factory and retraces create/resume through the caller context so ownership follows the actual consumer. | 05 | 05 |
AGENT-INBOX-COMMITDurable inbox-splice commit and identity invariant | packages/core/agent/src/inbox.ts:128-219 | agent/inbox/spliced is appended before the live projection mutates, removals may be marked canceled, and MessageId is unique across both pending lists. | 05 | 05 |
AGENT-INBOX-REPLAYInbox event reconstruction and claim order | packages/core/agent/src/inbox.ts:24-78 | Inbox reconstructs durable splices after the seed boundary; a claim takes every next-step item first and optionally one next-turn item, then notifies per message. | 05 | 05 |
AGENT-INITIATOR-APIProcess-local initiator attribution API | packages/core/agent/src/index.ts:300-358 | current/require/with/withoutInitiator propagate the causal Agent of a driver through AsyncLocalStorage without treating ambient identity as authorization. | 05 | 05 |
AGENT-INITIATOR-DRAINInitiator teardown drain semantics | packages/core/agent/src/index.ts:619-703 | Shutdown rejects new boundaries, drains returned-Promise boundaries, excludes nested chains that initiated their own unload to avoid deadlock, and finally disables storage. | 05 | 05 |
AGENT-PREPARE-PUBLISHAgent preparation, publication, and reverse teardown | packages/core/agent-loop/src/index.ts:453-578 | Caller, factory, and owner cancellation fuse before resources exist; publication orders session enter, agent enter, session announce, agent announce, and session-start; disposal shares one quiescence boundary. | 05 | 05 |
AGENT-PUBLIC-INTERFACEPublic Agent interface and status semantics | packages/core/agent/src/runtime-types.ts:23-143 | Defines provider/model/maxTokens, idle/running state, session/inbox/scoped context, cancellation, idle observation, maintenance, and four input operations. | 05 | 05 |
AGENT-REGISTRY-LIFECYCLEAgentRegistry enter, announce, and exact detach | packages/core/agent/src/index.ts:450-617 | Enter verifies shared identity and arbitrates collisions, announce publishes once, reentrant detach waits for dispatch, and stale closures cannot delete a same-ID replacement. | 05 | 05 |
AGENT-RUNTIME-SCOPEConcrete Agent scope, phase, and input mapping | packages/core/agent-loop/src/agent.ts:63-140 | ReactLoopAgent restores turns and inbox state from the log, creates an Agent scope, maps idle/maintenance to idle, routes followup/steer/inject into two inbox levels, and clears pending work on cancel by default. | 05 | 05 |
AGENT-SETUP-CONTRACTUnpublished setup, commit, and owned-handle contract | packages/core/agent/src/index.ts:52-174 | Create/resume setup composes the scoped world while objects remain unpublished and may return a synchronous commit; AgentHandle is the teardown capability. | 05 | 05 |
API-CONNECTION-LOOPTwo-stream connection generations and reconnect | packages/client/connection/src/client/connection.ts:3-201 | Each generation opens mux, host, and host.describe together; only after describe/handshake settles can a stream ending reach shared backoff and rebuild both. Stream-open has a 3-second guard, but describe has no generation signal/timeout and can wedge reconnect after abort; sink failures are isolated. | 29 | 29 |
API-HOST-VERSION-CONTRACTHost API intentionally has no protocol version | packages/host/apiproxy/src/api/host.ts:1-53 | The contract says client and host ship together, so protocolVersion is deferred; host.describe.version is defined as the host application package version. | 29 | 29 |
API-HOST-VERSION-PLACEHOLDERhost.describe still returns a placeholder version | packages/host/apiproxy/src/api-proxy.ts:2923-2938 | An implementation TODO says version does not yet read the CLI package.json and currently returns the fixed value 0.0.1. | 29 | 29 |
API-HTTP-BRIDGEHTTP bridge capacity, cancellation, and backpressure | packages/client/connection/src/http-bridge.ts:8-99 | Request bodies are buffered in memory with a 160 MiB default cap; browser disconnect aborts the Fetch signal, and response streaming respects drain backpressure. | 29 | 29 |
API-HTTP-CLIENTBrowser HTTP-carrier transport failures | packages/client/connection/src/client/rpc.ts:24-46 | The browser throws a non-2xx HTTP response as a transport failure, then validates the response envelope and rpcId. | 29 | 29 |
API-HTTP-HANDLERHTTP RPC dispatch and error boundary | packages/client/connection/src/rpc-host.ts:144-223 | The generic Remote/Connection RPC handler accepts only POST application/json; the outer envelope and URL-method identity are checked; invalid requests receive typed bad-request results while unexpected handler throws become HTTP 500 responses. | 29 | 29 |
API-PRIVILEGED-LOOPBACKLoopback fence for privileged Browser APIs | packages/client/connection/src/index.ts:69-195 | Settings, credentials, native dialogs, preset management, and draft-credential model discovery are separately pinned to loopback authority and pass shared Fetch-Metadata/Origin-authority checks; Origin may be absent and only authority is compared when present, so this is not a full same-origin test. | 29 | 29 |
API-RPC-MODELFour-quadrant browser API RPC model | packages/host/apiproxy/src/api/rpc.ts:1-193 | Logical messages are decoupled from HTTP, WebSocket, and in-process carriers; initiators mint rpcId values, responders echo them, and the closed union separates client requests, server responses, server requests, and client responses with business failures carried by RpcResult. | 29 | 29 |
API-RPC-SCHEMASTwo-stage wire validation | packages/host/apiproxy/src/api/rpc.schema.ts:1-140 | The outer Zod schemas validate only the message envelope while retaining unknown payload/value slots; each business method performs the second parse, and error bodies are discriminated by code with required details. | 29 | 29, 33 |
API-TRUST-FENCEThe browser trust fence is not authentication | packages/client/connection/src/api-request-trust.ts:1-123 | Every /api request checks Host authority and rejects cross-site Fetch Metadata or a mismatched Origin; the source explicitly excludes network reachability and identity authentication from this fence. | 29 | 29, 33 |
API-WS-CLIENTBrowser-side WebSocket parsing policy | packages/client/connection/src/client/web-api-client.ts:34-90 | Binary data, malformed JSON, invalid envelopes, and invalid business frames are logged and dropped; only socket closure ends the stream, and AbortSignal closes the socket. | 29 | 29 |
API-WS-HOSTDownlink-only WebSocket carrier | packages/client/connection/src/websocket-downlink.ts:46-137 | Mux and host use independent downlink-only sockets; a client message closes with 1008, a source failure first attempts a stream/error frame, and teardown awaits pump cleanup. | 29 | 29 |
APPROVAL-ACP-ANSWERERACP one-shot machine answerer | packages/acp/acp/src/index.ts:212-229 | ACP claims only owned Agent requests with callId, offers allow-once/reject-once, and collapses unknown non-allow outcomes to rejection. | 19 | 19 |
APPROVAL-ASK-MAPPINGToolRuntime ask outcome mapping | packages/core/tools/src/index.ts:1678-1728 | Missing approval or Agent identity denies; only allowed-once proceeds, while the other outcomes map to distinct denial reasons. | 19 | 19 |
APPROVAL-AUDIT-EVENTSApproval audit and policy events | packages/interaction/user-approval/src/index.ts:34-72 | approval/asked and approval/decided pair by id, while approval/policy is a log-only Session override event. | 19 | 19 |
APPROVAL-AUDIT-REQUESTTurn-enclosed approval audit transaction | packages/interaction/user-approval/src/index.ts:239-276 | Request requires an open turn, appends asked, awaits the decision, and appends matching decided; commit failures reject the call. | 19 | 19 |
APPROVAL-BASH-EXECUTIONBash escalation and process-start order | packages/shell/tool-bash/src/index.ts:190-390 | Bash resolves standing policy, completes one-call approval before any process starts, stamps the mode, and rejects escalation in non-sandboxed compositions. | 19 | 19 |
APPROVAL-CANCEL-DISPATCHPolicy races and tool-body cancellation | packages/core/tools/src/index.ts:1459-1559 | Preparation rechecks caller cancellation, while a started body reaches quiescence before an otherwise successful result becomes aborted. | 19 | 19 |
APPROVAL-CHILD-PINDelegated child permission pinning | packages/subagent/subagent/src/child-agent.ts:130-224 | A child inherits only the parent's explicit sandbox override, not deployment defaults or one-shot grants; approval is pinned to never after fork seed. | 19 | 19 |
APPROVAL-DECIDE-WATERFALLFail-closed answerer waterfall | packages/interaction/user-approval/src/index.ts:298-344 | Never rejects before dispatch; absent, throwing, or rogue answerers become unavailable, and cancellation discards late answers. | 19 | 19 |
APPROVAL-ESCALATION-FLOWFail-closed one-call escalation flow | packages/sandbox/sandbox/src/escalation.ts:143-188 | Runtime checks strict widening, approval availability, and Agent identity; only allowed-once returns the target mode for this call. | 19 | 19 |
APPROVAL-ESCALATION-LADDERStrict escalation ladder and argument pairing | packages/sandbox/sandbox/src/escalation.ts:22-61 | Read-only may widen to workspace-write/full and workspace-write only to full; permission and justification must be paired and nonblank. | 19 | 19 |
APPROVAL-EXEC-SNAPSHOTExecution identity and frozen arguments | packages/core/tools/src/index.ts:1364-1423 | ToolRuntime mints the token, resolves rootCallId, and losslessly snapshots and deep-freezes arguments before policy. | 19 | 19 |
APPROVAL-FS-ESCALATIONFilesystem escalation controller | packages/fs/tool-fs/src/sandbox.ts:37-130 | The shared controller owns capability advertisement, pairing, per-call policy, approval and one-call mode, and maps sandbox denial to a structured retry hint. | 19 | 19 |
APPROVAL-GUARD-CONTRACTMonotonic guard contract | packages/core/tools/src/index.ts:703-753 | A guard returns a denial reason or abstains and has no allow result; runtime stops at the first denial. | 19 | 19, 33 |
APPROVAL-GUARD-REGISTRYGlobal and scoped guard registry | packages/core/tools/src/index.ts:1100-1127 | Guards register globally or per Agent scope; execution checks global first, then the scope chain farthest-first, taking the first denial. | 19 | 19 |
APPROVAL-INVARIANTReplay invariants for approval events | packages/interaction/user-approval/src/invariant.ts:17-102 | The invariant replays and checks open turns, pending asks, duplicate ids, orphan decisions, and closed vocabularies without requiring unmatched asks to clear at turn end. | 19 | 19 |
APPROVAL-OUTCOMESApproval identity and closed outcomes | packages/interaction/user-approval/src/types.ts:10-29 | Each request uses a branded id and may settle only as allowed-once, rejected, cancelled, or unavailable. | 19 | 19, 33 |
APPROVAL-PERMISSION-COMPOSERComposer permission selector and risk confirmation | packages/client/ui-conversation/src/client/skeleton/PermissionSelect.tsx:10-170 | The selector filters custom, submits /permission, and shows checkbox-gated risk confirmation only for the danger-full-access machine key. | 19 | 19 |
APPROVAL-PERMISSION-DECORATIONPermission command popup decoration | packages/client/ui-permission-presets/src/client/index.ts:55-169 | The command popup builds options from the projection, attaches confirmation only to FULL_ACCESS_PRESET, and executes /permission. | 19 | 19 |
APPROVAL-PERMISSION-SETTINGSDefault-permission Settings risk confirmation | packages/client/ui-permission-presets/src/client/PermissionRow.tsx:15-126 | The future-Session default UI likewise gates confirmation only for FULL_ACCESS_PRESET before invoking the settings write. | 19 | 19 |
APPROVAL-PERMISSION-SETTINGS-WRITEFuture-Session default preset write | packages/client/ui-permission-presets/src/client/settings-store.ts:128-155 | The Settings controller updates defaultPreset with an expected revision, explicitly for subsequently created Sessions. | 19 | 19 |
APPROVAL-PRE-DECISIONClosed pre-execute decision authority | packages/core/tools/src/index.ts:582-592 | Pre-execute may only allow, deny, or ask; argument rewriting is explicitly excluded. | 19 | 19 |
APPROVAL-PREPARE-ORDERActual approval and guard order | packages/core/tools/src/index.ts:1453-1506 | Preparation checks cancellation, runs the pre waterfall, resolves ask, applies monotonic guards, and dispatches only after a final cancellation check. | 19 | 19 |
APPROVAL-PRESET-CONFIGConfigurable permission presets and load-time checks | packages/interaction/permission-presets/src/index.ts:139-225 | Presets bundle sandbox and approval; custom is derived-only, and non-confining shells or unresolved defaults fail at load. | 19 | 19 |
APPROVAL-PRESET-DERIVEDeriving the current preset from real knobs | packages/interaction/permission-presets/src/index.ts:280-338 | A still-matching last selection wins, then the first table match, otherwise the service derives custom. | 19 | 19 |
APPROVAL-PRESET-PINInitial Session permission pinning | packages/interaction/permission-presets/src/index.ts:394-430 | Fresh Sessions pin all three facts during synchronous session-created publication; seeded, resumed, or partial Sessions preserve effective state and fill only missing facts. | 19 | 19 |
APPROVAL-PRESET-PROJECTIONPermissions projection and command surface | packages/interaction/permission-presets/src/index.ts:227-277 | The service registers the permissions projection and uses /permission as the canonical report and current-Session switch command. | 19 | 19 |
APPROVAL-PRESET-WRITECanonical preset write path | packages/interaction/permission-presets/src/index.ts:369-392 | A changed selection records permission/preset first and writes only changed sandbox and approval knobs; a no-op writes nothing. | 19 | 19 |
APPROVAL-PWSH-EXECUTIONPowerShell escalation and process-start order | packages/shell/tool-pwsh/src/index.ts:209-406 | PowerShell rejects escalation without sandbox capability; its execution path validates arguments, resolves standing policy, awaits one-call approval, stamps the mode, and only then commits a background starter or runs a foreground process. | 19 | 19 |
APPROVAL-REQUEST-SHAPEApproval request without duplicated arguments | packages/interaction/user-approval/src/index.ts:149-174 | A request carries Agent, tool name, optional callId, reason, and signal; arguments remain linked through the existing tool call. | 19 | 19 |
APPROVAL-SANDBOX-PRECEDENCESandbox policy resolution precedence | packages/sandbox/sandbox-policy/src/index.ts:126-150 | An approved explicit mode outranks the Session log override, which outranks the deployment default; Session cwd supplies the workspace root. | 19 | 19 |
APPROVAL-UI-PANELOne-shot approval panel | packages/client/ui-conversation/src/client/skeleton/ApprovalPanel.tsx:22-87 | The panel derives an optional shell command from the paired root call, shows the reason, and uses a one-shot latch with retry after response failure. | 19 | 19 |
APPROVAL-WEB-REGISTRYHost approval pending registry | packages/host/apiproxy/src/api-proxy.ts:1407-1488 | The proxy pairs requests with undecided, unclaimed, callId-matching audit events; abort and teardown cancel, while disconnect does not remove pending entries. | 19 | 19 |
APPROVAL-WEB-REPLAYPending approval replay on reconnect | packages/host/apiproxy/src/api-proxy.ts:3429-3447 | A new mux subscription replays every unsettled approval request with the same stable rpcId. | 19 | 19 |
APPROVAL-WEB-RESPONDExact approval-response correlation | packages/host/apiproxy/src/api-proxy.ts:3696-3742 | Responses route by rpcId and validate payload, Session, and approval ids; the first valid response settles and late ids are not-pending. | 19 | 19 |
APPROVAL-WEB-TRUSTBrowser request trust fence and boundary | packages/client/connection/src/api-request-trust.ts:1-122 | Host, Fetch Metadata, and Origin checks defend DNS rebinding and cross-site requests; the source explicitly says this is not authentication. | 19 | 19 |
APPROVAL-WIRE-CONTRACTWeb approval wire contract | packages/host/apiproxy/src/api/approvals.ts:1-20 | Approval is a server request with stable rpcId; clients may return only allowed-once/rejected while echoing exact Session and approval ids. | 19 | 19 |
BOOT-HMRTransactional user-configuration refresh | packages/boot/app-boot/src/index.ts:225-265 | HMR watches the exact user patch, regenerates the full patch list, and replaces it transactionally through entry.update; shutdown races return a no-op disposer. | 04 | 04 |
BOOT-TRANSACTIONTransactional boot and failure cleanup | packages/boot/app-boot/src/index.ts:757-801 | Host preparation precedes tree mounting, activation is audited after Loader settlement, and any failure disposes the partial root while preserving the deepest error stack. | 04 | 04, 33 |
CAP-LSP-HOST-FSLSP workspace containment and bounded source reads | packages/lsp/lsp-stdio/src/host.ts:25-120 | Workspace and source are canonicalized through ctx.fs; the source must be contained by the workspace and is read as complete UTF-8 text under an explicit byte cap. | 22 | 22 |
CAP-LSP-REGISTRYClosed extension-routed LSP seam | packages/lsp/lsp/src/index.ts:1-158 | LSP exposes only four normalized operations, atomically validates and reserves provider ids plus extension sets, routes by final extension, and offers no JSON-RPC escape hatch. | 22 | 22 |
CAP-LSP-STDIO-LOADAll-or-nothing LSP stdio activation | packages/lsp/lsp-stdio/src/index.ts:119-215 | The plugin validates every server and resolves every executable before provider registration; conflicts roll back, and teardown removes routes before settling every process. | 22 | 22 |
CAP-LSP-STDIO-POOLPer-workspace LSP process pool and serialized queries | packages/lsp/lsp-stdio/src/index.ts:216-369 | Each canonical workspace lazily owns one server and serializes source-read/open/query/close; one transport replacement is allowed, and disposal drains lookups, queues, and instances. | 22 | 22 |
CAP-LSP-TOOLModel-facing precision LSP navigation tool | packages/lsp/tool-lsp/src/index.ts:1-243 | One read-only lsp tool uses a four-operation enum, one-based UTF-16 positions, the Session workspace, result caps, and a 60-second timeout while recommending search/read for ordinary navigation. | 22 | 22 |
CAP-MCP-CONFIGOne-server MCP configuration and namespace | packages/mcp/mcp-client/src/index.ts:1-128 | The MCP client supports stdio and Streamable HTTP; each instance connects one server and derives its public tool namespace from a constrained unique serverName. | 22 | 22 |
CAP-MCP-GENERATIONMCP client-generation connect, close, and disposal | packages/mcp/mcp-client/src/connection.ts:227-350 | Each attempt creates a fresh Client/transport and syncs after connect; failure to close within the barrier stops reconnect to avoid overlap, while disposal drains attempts and syncs before unregistering. | 22 | 22 |
CAP-MCP-NAMINGDeterministic MCP public tool names | packages/mcp/mcp-client/src/tools.ts:82-102 | Public names are pure functions of serverName/rawName; character or length normalization adds an identity-derived hash suffix, making collisions between distinct wire identities extremely unlikely. | 22 | 22 |
CAP-MCP-RECONNECTSerialized MCP sync and bounded reconnect budget | packages/mcp/mcp-client/src/connection.ts:123-224 | Syncs across all generations serialize; loss triggers exponential backoff, a stability window resets the budget, exhaustion unregisters tools, and the last good generation is not removed early during an outage. | 22 | 22 |
CAP-MCP-RESULTMCP canonical result and lossy Native projection | packages/mcp/mcp-client/src/tools.ts:176-317 | The bridge preserves full JSON content/structuredContent, rejects task-required and isError results, while Native rendering joins text and replaces image/audio/resource with discarded-content placeholders. | 22 | 22 |
CAP-MCP-STARTUPMCP initial discovery and activation policy | packages/mcp/mcp-client/src/index.ts:132-180 | The plugin reserves its namespace, starts the supervisor, and awaits first connection plus tool sync; failOnStartupError decides whether failure rejects activation. | 22 | 22 |
CAP-MCP-SYNCTwo-phase MCP tool-generation synchronization | packages/mcp/mcp-client/src/tools.ts:104-174 | The bridge fully fetches and builds the next generation without registry mutation, then disposes old and registers new; a conflict rolls the partial new generation back to zero. | 22 | 22 |
CAP-MCP-TRANSPORTMCP transport bypasses the subprocess spawn seam | packages/mcp/mcp-client/src/transport.ts:15-50 | Stdio shares the scrubbedParentEnv definition but the MCP SDK performs the spawn; Streamable HTTP is likewise constructed by the SDK from configured URL and headers. | 22 | 22 |
CAP-SKILL-CATALOGVisibility-matched durable Skill replacement catalog | packages/skill/tool-skill/src/index.ts:206-335 | The plugin publishes name/description source entries only for its exact visible tool identity; complete digest changes append whole-list replacements, empty lists retire old names, and incomplete snapshots publish nothing. | 22 | 22 |
CAP-SKILL-COLLECTSkill catalog collection, caching, and incomplete observations | packages/skill/skill/src/index.ts:463-625 | The registry collects and caches complete catalogs by cwd/scope/revision with a bounded revision-race retry; provider failures/incomplete observations are not cached, and nearer layers overwrite. | 22 | 22 |
CAP-SKILL-FS-ROOTSFilesystem Skill roots, ranks, and provider lifecycle | packages/skill/skill-filesystem/src/index.ts:36-260 | The provider defines project/custom/user/bundled ranks, builds roots by cwd, observes watcher completeness, loads bodies by locator, and actively invalidates on model-facing file mutations. | 22 | 22 |
CAP-SKILL-FS-TRUSTFilesystem-versus-host routing for Skill directories and bodies | packages/skill/skill-filesystem/src/index.ts:749-885 | Ordinary roots use ctx.fs for listing and reads when present; trusted bundled roots may use Node host FS; frontmatter is parsed and missing/non-text entries are treated as unavailable. | 22 | 22 |
CAP-SKILL-LAYERSLayered Skill registry and runtime contributions | packages/skill/skill/src/index.ts:346-461 | Registrations enter the calling context's global/scoped layer; nearer same-name entries override outright, rank selects only within one layer, and providers/runtime skills are effect-scoped. | 22 | 22 |
CAP-SKILL-RENDERCanonical Skill wrapper and trusted body | packages/skill/skill/src/index.ts:140-228 | Explicit user invocation carries a durable source; the shared skill_content wrapper escapes framing metadata but embeds the instruction body verbatim because it is trusted local content. | 22 | 22 |
CAP-SKILL-TOOL-LOADSkill loader visibility and double revalidation | packages/skill/tool-skill/src/index.ts:71-161 | The model tool lists by Agent cwd/scope and checks the summary, then gets and rechecks the loaded definition's modelInvocable policy before returning body and resource base. | 22 | 22 |
CAP-SKILL-TYPESSkill summaries, candidates, definitions, and invocation policy | packages/skill/skill/src/index.ts:20-109 | Skill types separate routing summaries, ranked/provider-located candidates, and full bodies while independently expressing model/user invocation and three resource-base kinds. | 22 | 22 |
CAP-SKILL-USER-INVOKEExplicit user Skill gestures and instruction injection | packages/skill/tool-skill/src/index.ts:163-430 | Only whitespace-bounded /name tokens in direct user-source text are scanned; the loaded definition must be userInvocable and is then injected last as instructions using the shared wrapper. | 22 | 22 |
CAP-WEB-DEEPSEEK-MAPDeepSeek native-search result normalization | packages/web/web-search-deepseek/src/provider.ts:112-174 | The adapter requires web_search_tool_result, joins citation excerpts by URL, deduplicates sources, and leaves final result-count truncation to the Web seam. | 22 | 22 |
CAP-WEB-DEEPSEEK-REQUESTDeepSeek Search request, cancellation, and credential resolution | packages/web/web-search-deepseek/src/provider.ts:176-300 | Each search snapshots config, records before dispatch, rejects redirects, sends compatible auth headers, distinguishes cancellation/HTTP/parse failures, and resolves credentials per operation. | 22 | 22 |
CAP-WEB-DEEPSEEK-SETTINGSPer-operation Search settings projection and logging | packages/web/web-search-deepseek/src/index.ts:95-138 | The provider resolves the next operation from the current Settings section plus credential/environment seams and appends the secret-free request to the current initiator Session. | 22 | 22 |
CAP-WEB-DEEPSEEK-WIREProvider-private DeepSeek Search wire | packages/web/web-search-deepseek/src/provider.ts:1-109 | Search uses a separate Anthropic-compatible Messages endpoint, native web_search server tool, and secret-free auxiliary request shape without going through ctx.llm. | 22 | 22 |
CAP-WEB-FETCH-CAPSFetch byte caps and truncation semantics | packages/web/web-fetch-http/src/provider.ts:149-207 | An oversized declared length rejects; a stream crossing the cap retains only a bounded prefix and marks truncation; completed chunks are assembled into exact bytes. | 22 | 22 |
CAP-WEB-FETCH-POLICYHTTP fetch URL and content policy | packages/web/web-fetch-http/src/policy.ts:14-105 | The optional fetcher accepts only HTTP(S), rejects embedded credentials, bounds URLs, defines same-origin redirect semantics, and classifies/decodes supported text while explicitly deferring SSRF blocking. | 22 | 22 |
CAP-WEB-FETCH-TRANSPORTAnonymous bounded same-origin HTTP fetch | packages/web/web-fetch-http/src/provider.ts:1-147 | The fetcher carries no cookies or ambient credentials, unifies cancellation and timeout, handles same-origin redirects manually, rejects unsupported content, and returns status plus decoded body. | 22 | 22 |
CAP-WEB-SELECTIONDeterministic execution-time Web provider selection | packages/web/web/src/index.ts:49-200 | The Web seam separates search and fetch registries, rejects duplicate ids, and selects at call time by explicit configuration or exactly one usable provider; ambiguity and unavailability fail structurally. | 22 | 22 |
CAP-WEB-TOOLWeb tool registration decoupled from provider availability | packages/web/tool-web/src/index.ts:1-91 | tool-web owns schemas, enablement, limits, and timeouts; an enabled tool remains visible when its provider is unavailable and fails structurally at execution. | 22 | 22 |
CAP-WEB-TYPESNormalized Web request and result vocabulary | packages/web/web/src/types.ts:15-129 | Search returns optional content and citeable sources; fetch returns final URL, status, a closed HTML/text body union, and truncation, with non-2xx represented as a result. | 22 | 22 |
CLI-PROFILE-DISPATCHCLI launch-mode dispatch | apps/cli/src/bin.ts:27-52 | After parsing, the CLI dispatches only profile, plugin, and dump-config modes; the profile path receives the environment snapshot, profile, patches, and inner arguments. | 04 | 04 |
CODEMODE-ACTIVATIONUpdates retract the old run before committing current on success | packages/extensions/cordis-host-runner/src/index.ts:810-992 | A new activation first awaits retraction of the old run, then starts Host/Client; a Client-bearing run stays client-pending, and only successful commitActivation sets currentPackageId and clears next. Failure retracts only the new run it owns. | 23 | 23 |
CODEMODE-APPROVAL-SETTLEFirst-answer and exact-run checks for approval responses | packages/extensions/cordis-host-runner/src/index.ts:406-428 | resolveRequestRun accepts only a still-pending response naming the exact active pluginRunId, claims it, settles activation, broadcasts resolution, and steers the result; unknown, stale, or duplicate responses return accepted:false. | 23 | 23 |
CODEMODE-BINDINGSBinding snapshot, recursion exclusion, and convergence | packages/core/tools/src/code-mode.ts:596-640 | Each run builds a null-prototype tools namespace from the calling agent's currently visible schemas, excluding run_code; after runtime settlement it aborts and drains every nested call before converting failures to CODE_RUN_FAILED or returning curated logs/result. | 23 | 23 |
CODEMODE-CLIENT-EVALThe browser half's closure symbol surface | packages/extensions/cordis-client-runner/src/client/evaluator.ts:157-222 | Client source executes in a browser new Function async body whose parameters explicitly inject React, console, styles, host.call, and teaching traps while setting process/Buffer to undefined; the return must be a Plugin. | 23 | 23 |
CODEMODE-CLIENT-GUARDBrowser Context facade and declared-service gate | packages/extensions/cordis-client-runner/src/client/guard.ts:180-233 | The Client half's ctx likewise exposes only lifecycle verbs, optional get, and declared services; slots/theme use specialized guards, while assignment and framework internals are denied. | 23 | 23 |
CODEMODE-CLIENT-LIFECYCLEBrowser package operations serialize per Plugin and recover | packages/extensions/cordis-client-runner/src/client/runtime.ts:176-341 | The Client runner serializes load/unload per pluginId, replaces old activations, retracts only the exact run, and unloads all on disposal; its queue tail contains one failure so later operations do not wedge. | 23 | 23 |
CODEMODE-CLIENT-ORCHESTRATIONBrowser activation follows Host to source to Client to settlement | packages/extensions/cordis-client-runner/src/client/orchestrator.ts:312-381 | The page orchestrates per Plugin: start the Host half, fetch Client source for the exact active run, load the browser half, then answer approval or direct run; failures return stage-specific diagnostics. | 23 | 23 |
CODEMODE-CONTEXT-GUARDDynamic Host Context is a capability facade | packages/extensions/cordis-host-runner/src/guard.ts:680-819 | A Host half may use only lifecycle-safe verbs, ctx.get, and declared injected services; framework internals, Context-valued service returns, and undeclared property access are denied, and apply always receives the facade. | 23 | 23 |
CODEMODE-CORDIS-DEFINEcordis_define only records an immutable Package | packages/extensions/tool-cordis/src/index.ts:148-238 | cordis_define records at least one plain-JavaScript Host/Client half for a new or existing Plugin, returns pluginId/packageId, and explicitly does not execute, request approval, or change currentPackageId. | 23 | 23 |
CODEMODE-CORDIS-INSPECTThree layered inspect tools | packages/extensions/tool-cordis/src/index.ts:34-146 | tool-cordis registers provider listing, schema-validated queries, and session-owned self inspection; exact Package source is returned only when both pluginId and packageId are supplied. | 23 | 23 |
CODEMODE-CORDIS-LIFECYCLE-TOOLSModel contract for run, stop, and undefine | packages/extensions/tool-cordis/src/index.ts:240-379 | cordis_run returns awaiting-approval, starting, or running; stop retains definitions, grants, and version pointers, while undefine stops and permanently removes the entire Plugin. | 23 | 23 |
CODEMODE-CORDIS-PROMPTDynamic Plugin lifecycle, versions, and trust guidance | packages/extensions/tool-cordis/src/prompt.ts:3-54 | The system prompt defines dynamic Plugins as temporary current-process extensions and not a security boundary; it lists the seven-tool workflow, three identities, immutable versions, approval grants, and that a failed update does not automatically restart the old version. | 23 | 23 |
CODEMODE-DEFINE-RUNNERDefine-time validation and Package append | packages/extensions/cordis-host-runner/src/index.ts:146-202 | The runner validates metadata, at least one half, both halves' syntax, and new/existing ownership, then mints a packageId and appends source; define does not start the runtime. | 23 | 23 |
CODEMODE-DYNAMIC-TOOL-GUARDDynamic tool definition, JSON normalization, and bypass closure | packages/extensions/cordis-host-runner/src/guard.ts:542-655 | harness.defineTool validates schema/render/execute and JSON-clones cross-realm outputs; register accepts only marker-tagged definitions, and ctx.tools.get returns a schema view rather than execute, preventing direct ToolRuntime bypass. | 23 | 23 |
CODEMODE-EXECUTIONThe execution boundary also enforces code collapse | packages/core/tools/src/index.ts:1208-1253 | In code mode, model-direct calls may name only run_code; nested calls carrying a parent token may execute agent-visible tools, and the generated SDK excludes run_code itself to close recursive transport. | 23 | 23 |
CODEMODE-FLAT-JSONFlat, iterative worker JSON wire | packages/code-runtime/code-runtime-worker-thread/src/worker-json.ts:247-419 | Lossless JSON is encoded as a flat token stream and strictly decoded iteratively; deep values do not consume JavaScript call-stack depth, and malformed or incomplete inputs return undefined. | 23 | 23 |
CODEMODE-HISTORYNested dispatch records and model history are layered | packages/core/tools/src/code-mode.ts:1-6 | Every Code Mode sub-call is logged as a reconstructable nested dispatch, while only the outer run_code curated result enters model history. | 23 | 23 |
CODEMODE-HOST-CODEDefine-time syntax precheck and synchronous VM timeout | packages/extensions/cordis-host-runner/src/sandbox.ts:196-238 | Host/Client source is compile-only prechecked at define time with the same async wrapper; Host evaluation's vmTimeoutMs bounds only the synchronous portion, while an async body escapes that limit. | 23 | 23 |
CODEMODE-HOST-SANDBOXThe real trust boundary of the dynamic Host VM | packages/extensions/cordis-host-runner/src/sandbox.ts:1-11 | The Host half runs in a fresh node:vm realm and traps redirect work to ctx services, but host-realm helpers remain an escape route; the module explicitly says this is not a malicious-code security boundary. | 23 | 23 |
CODEMODE-INSPECT-REGISTRYInspect-query platform routing and cancellation | packages/extensions/cordis-host-runner/src/inspect-registry.ts:98-198 | Host queries validate input/output locally; Client queries publish an agent-identified request, wait for the first valid same-session response or AbortSignal cancellation, and clean pending state. | 23 | 23 |
CODEMODE-MODESTool presentation modes and sub-call concurrency | packages/core/tools/src/index.ts:650-673 | The tool runtime defines native, code, and both presentation modes; code exposes only run_code, with a default per-program nested-call cap of 10. | 23 | 23, 33 |
CODEMODE-NESTED-DISPATCHNested-call identity, logging, and context commitment | packages/core/tools/src/code-mode.ts:464-594 | Each nested call receives a deterministic subCallId, root/parent identity, the same agent and cancellation signal; start/settle events carry detached argument snapshots, results resolve after ordered commit, and additionalContexts plus concludesTurn are forwarded to the outer execution. | 23 | 23 |
CODEMODE-OUTCOME-STEERINGAsynchronous activation outcomes return through steering | packages/extensions/cordis-host-runner/src/index.ts:1019-1047 | Final page-side success, rejection, or technical failure becomes steering context with exact Plugin/Package/Run identity; failure text includes current/next pointers and same-Plugin repair guidance. | 23 | 23 |
CODEMODE-POLICYNested calls reuse the complete ToolRuntime pipeline | packages/core/tools/src/index.ts:1453-1599 | Staged execution runs pre-execute, approval, monotonic guards, around-dispatch, the real tool body, result normalization, and post stages; cancellation and tool failures materialize as standard results. | 23 | 23 |
CODEMODE-REFERENCE@pluginId injects source-free context only from user messages | packages/extensions/tool-cordis/src/index.ts:497-529 | Explicit references are extracted only from user-source text with a strict ID pattern; injected context carries current base/version state but requires exact source inspection, and missing or cross-session references are reported unavailable. | 23 | 23 |
CODEMODE-REGISTRYPlugin, Package, Run, and approval state model | packages/extensions/cordis-host-runner/src/registry.ts:16-82 | A session-owned Plugin stores an immutable Package map, per-package and future-version grants, current/next pointers, one active run, and the latest attempt; runs and pending approvals have independent identities. | 23 | 23 |
CODEMODE-RETRACTStop-to-quiescence and Session ownership | packages/extensions/cordis-host-runner/src/index.ts:1219-1239 | Retraction removes the live run, unregisters handlers, awaits fiber.dispose, and emits a retract event; action lookup requires plugin.sessionId to equal agent.id. | 23 | 23 |
CODEMODE-RUN-APPROVALHost-only fast path and Client approval state machine | packages/extensions/cordis-host-runner/src/index.ts:238-374 | Host-only Packages activate directly; Client-bearing Packages create an approval request without a grant or enter starting when authorized, while request/package/run identities prevent stale approval from starting the wrong version. | 23 | 23 |
CODEMODE-RUN-SCHEMArun_code input, output, and runtime entry | packages/core/tools/src/code-mode.ts:283-340 | run_code requires code and a non-empty description, returns only logs plus an optional result, resolves the runtime at execution, and forwards outer cancellation into a run-scoped AbortController. | 23 | 23 |
CODEMODE-RUNTIME-DESCRIPTORSlanguage and isolation are descriptors only | packages/code-runtime/code-runtime/src/index.ts:95-134 | CodeRuntime language and isolation guide presentation and diagnostics rather than making a security claim; the source explicitly states that only TypeScript has a published backend. | 23 | 23 |
CODEMODE-RUNTIME-READSAssembly and execution read CodeRuntime separately | packages/core/tools/src/index.ts:1003-1028 | CodeRuntime is read dynamically at prompt assembly and again at run_code execution, without binding the language to one request; the source defers closing the hot-swap window until a second backend ships. | 23 | 23 |
CODEMODE-SCHEDULERA per-program nested scheduler | packages/core/tools/src/code-mode.ts:342-457 | run_code uses one ordered lane for start, prepare, and commit, overlaps only concurrency-safe dispatch bodies, holds exclusive barriers through post-execute, and drains logging work at settlement. | 23 | 23 |
CODEMODE-SCOPEScoped and disposable Code Mode selection | packages/core/tools/src/index.ts:894-973 | Presentation resolves from the nearest scope; an agent or preset can override the deployment default, and disposal restores the previous view and prompt sections. | 23 | 23 |
CODEMODE-SDK-LIVEThe Code Mode SDK is rebuilt at every prompt assembly | packages/core/tools/src/index.ts:865-891 | The tools:sdk section is rebuilt at render time from the calling scope's currently visible tools in stable order rather than frozen when ToolRuntime is constructed. | 23 | 23 |
CODEMODE-SEAMCodeRuntime JSON boundary and failure taxonomy | packages/code-runtime/code-runtime/src/types.ts:9-127 | Binding arguments and results must be lossless JSON, with no seam-level byte cap on intermediate binding resolutions; run failures are exception, timeout, abort, worker-exit, invalid-output, or output-limit and return in a resolved result's error field. | 23 | 23 |
CODEMODE-TRANSPORTrun_code is reserved presentation transport | packages/core/tools/src/index.ts:913-933 | run_code stays outside ordinary filterable registration layers and is inserted after visibility resolution, so agent restrictions cannot remove it and scoped tools cannot shadow it. | 23 | 23 |
CODEMODE-WIREWire-schema collapse and runtime-language validation | packages/core/tools/src/index.ts:976-1028 | Native sends visible tools, code sends only run_code, and both sends both forms; non-native prompt assembly requires a CodeRuntime with a supported language. | 23 | 23 |
CODEMODE-WORKER-BOOTPrograms receive only explicit namespaces and console | packages/code-runtime/code-runtime-worker-thread/src/bootstrap.ts:301-424 | The worker builds null-prototype binding namespaces, bridges async calls over the message port, and executes the program as a strict AsyncFunction body whose injected parameters are only declared namespaces, error classes, and console. | 23 | 23 |
CODEMODE-WORKER-BRIDGEHostile worker messages, budgets, and cancellation | packages/code-runtime/code-runtime-worker-thread/src/index.ts:462-556 | The host shape-checks worker messages, uses own-property binding lookup, and revalidates JSON; duplicate IDs, unknown bindings, bad values, worker exit, busy/wall timeouts, and abort all converge to controlled results. | 23 | 23 |
CODEMODE-WORKER-LIFECYCLEFresh worker and single terminal outcome | packages/code-runtime/code-runtime-worker-thread/src/index.ts:363-460 | Every execution creates a worker with env={}, execArgv=[], and a heap limit; exactly one outcome wins, and the host terminates the worker and drains stdout/stderr before resolving. | 23 | 23 |
CODEMODE-WORKER-LIMITSWorker defaults and disposal semantics | packages/code-runtime/code-runtime-worker-thread/src/index.ts:230-317 | Defaults are 60 seconds busy time, 600 seconds wall time, 64 MiB combined outer output, and 512 MiB old generation; disposal aborts and awaits every worker, and type-strip failures spawn none. | 23 | 23 |
CODEMODE-WORKER-TRUSTworker-thread is containment, not a security boundary | packages/code-runtime/code-runtime-worker-thread/src/index.ts:1-6 | Each run uses a fresh worker, but the module explicitly gives model code bash-equivalent trust despite an empty environment, heap and time bounds, and forced termination. | 23 | 23 |
COMPACT-AUTO-TRIGGERSPre-step pressure and same-Step overflow recovery | packages/compaction/compaction-basic/src/index.ts:137-223 | The pre-step listener warns and continues on failure; canonical context overflow uses an independent budget and returns retry only after Surface generation advances, including durable prune progress before a later summary failure, while cancellation remains final. | 13 | 13 |
COMPACT-COMMANDHuman-facing /compact and failure classification | packages/compaction/command-compact/src/index.ts:22-105 | The argument-free command maps busy, cancelled, changed, summary, commit, and persistence failures to distinct user outcomes, reports shadowed items and tokens with the summary seq on success, and drains active handlers on teardown. | 13 | 13 |
COMPACT-COMMITSnapshot, shrink validation, stability, and synchronous commit body | packages/compaction/compaction-basic/src/region.ts:338-485 | The selected span is priced and snapshotted as token nodes and messages; the framed checkpoint must be strictly smaller; automatic mode requires the whole Surface unchanged while manual mode requires only the selected span stable; summary event and replacement append synchronously adjacent. | 13 | 13, 33 |
COMPACT-CONFIGThreshold and retention budgets resolved per exact Provider and Model | packages/compaction/compaction-basic/src/config.ts:67-166 | Defaults are thresholdRatio .8, retainRatio .16, maxTokens 8192, one extra summary retry, and one overflow retry; exact routes can partially override them, and capacity scales ratios into absolute budgets. | 13 | 13, 14 |
COMPACT-ESTIMATORFixed-density token heuristic | packages/llm/token-meter/src/estimate.ts:12-87 | Text and reasoning use four JavaScript code units per token plus block overhead, tool arguments and schemas use JSON length, and messages add role overhead; this is one shared heuristic, not an exact tokenizer. | 13 | 13 |
COMPACT-EVENTSCompaction lifecycle, shadow-price, and result event vocabulary | packages/compaction/compaction/src/types.ts:16-119 | Start, summary, and end form a log-only bracket; summary records shadowed seqs and token price, route, raw output, and usage, while the following replacement user message changes the Surface; prune is the model-free shadow-price event. | 13 | 13, 14 |
COMPACT-INVARIANTRuntime invariant for compaction brackets, owners, and checkpoints | packages/compaction/compaction/src/invariant.ts:56-217 | The companion validates transaction and command IDs, Turn enclosure, one summary, shadow endpoints and token count, checkpoint source, and successful end; it does not validate that summary or prune is immediately adjacent to its replacement. | 13 | 13 |
COMPACT-MANUALManual compaction under idle maintenance | packages/compaction/compaction-basic/src/index.ts:360-419 | compactNow synchronously enters runMaintenance only while idle with no waking work, selects a useful range with retain zero, writes a turn-null bracket, permits appends outside the span, and flushes a closed attempt before returning. | 13 | 13 |
COMPACT-PAIRINGTool-call and result balanced cuts in current Surface order | packages/compaction/compaction/src/tool-pairing.ts:28-130 | The fold increments for assistant tool calls and decrements for tool results to compute N+1 cuts for N nodes; it rebuilds when replacement generation changes and extends incrementally for ordinary appends. | 13 | 13 |
COMPACT-POLICY-LOOPMain loop for pressure, pruning, retention, and summary retries | packages/compaction/compaction-basic/src/index.ts:248-331 | Pressure first resolves routed capacity and crosses its threshold, optionally prunes and remeasures, then selects a head range retaining a tail; overflow bypasses threshold and retention and prunes first; every summary is remeasured until below threshold or bounded retries expire. | 13 | 13 |
COMPACT-PRUNERReplay-safe model-free content-only tool-result replacement | packages/compaction/compaction-tool-result-pruner/src/index.ts:63-184 | Only text blocks are measured and pruned by code point while rich blocks retain order; for every oversized result in a Surface snapshot it writes a shadow price, then uses Session's content-only replacement citing the original seq. | 13 | 13 |
COMPACT-PRUNER-CONFIGCode-point budgets for the tool-result pruner | packages/compaction/compaction-tool-result-pruner/src/config.ts:7-64 | The default triggers above 8192 Unicode code points and keeps a 4096-point head, 1024-point tail, and fixed marker; validation guarantees output stays within the threshold and can converge. | 13 | 13 |
COMPACT-RANGEHead-anchored range selection that retains a recent tail | packages/compaction/compaction-basic/src/region.ts:90-134 | The selector accumulates at least retainTokens from the Surface tail, then moves the cut headward to a tool-pair-balanced boundary; it returns null when no compactable head or only one indivisible unit remains. | 13 | 13, 33 |
COMPACT-RUNTIME-ORDEROrdering of the pre-Step candidate, waterfall, and message commit | packages/core/agent-loop/src/agent.ts:225-287 | Before the waterfall, the Agent claims input, assembles the prompt, and computes the runtime-context candidate; only after the waterfall returns does it write step/start and user messages, so pressure measurement inside the waterfall cannot see this entering batch. | 13 | 13 |
COMPACT-RUNTIME-PROJECTIONRetained-snapshot projection for dynamic runtime context | packages/core/agent-loop/src/runtime-context.ts:24-75 | The projection remembers the latest owned snapshot still on the Surface, sets retained to null when a replacement cites it, and produces a candidate message only when current text differs from the retained value. | 13 | 13 |
COMPACT-SEAMCompaction backend seam and its three entry points | packages/compaction/compaction/src/index.ts:87-169 | The abstract engine separates pressure or overflow policy, idle compactNow, and explicit compactRegion; every success replaces one balanced Surface span with a user message carrying the common checkpoint source. | 13 | 13 |
COMPACT-SHADOW-PRICEAdjacent shadow-price protocol for O(1) projections | packages/llm/token-meter/src/surface-projection.ts:1-94 | The bounded projection retains only a running total and one pending claim; summary or prune is meant to price the next replacement, any other event expires the claim, and a historical replacement without a claim degrades to zero delta rather than failing. | 13 | 13, 33 |
COMPACT-SUMMARIZERCache-shaped one-shot summary request and checkpoint framing | packages/compaction/compaction-basic/src/summarizer.ts:20-223 | The summary request reuses conversation system, tools, and selected messages and appends one fixed English structure directive; target preference is explicit summary route, then latest route or Agent options; only nonempty text is accepted, images or max-token truncation fail, and raw output and usage are stored separately. | 13 | 13, 14 |
COMPACT-TOKEN-ANCHORProvider-usage anchors and reconstruction from cited chunks | packages/llm/token-meter/src/index.ts:188-310 | At assistant/message, the meter anchors to the Step-start Surface and reassembles real Provider output from cited raw chunks; when reported usage is lower than the full heuristic anchor it falls back to the estimate so negative deltas cannot understate pressure. | 13 | 13 |
COMPACT-TOKEN-MEASUREReplay-aware request-pressure measurement | packages/llm/token-meter/src/index.ts:100-180 | With a matching request header, measurement prefers a conservative Provider-usage anchor plus signed Surface delta; otherwise it reprices header and Surface heuristically, returning immutable O(surface) positional nodes each time. | 13 | 13 |
COMPACT-TRANSACTIONTransaction with a durable start lock and exactly one close attempt | packages/compaction/compaction-basic/src/region.ts:137-253 | After validation it synchronously writes start as the lock, rechecks stability after summarization, commits the body, then writes end; every later failure attempts one error end, while a failed close deliberately leaves an unmatched start, and a closed manual attempt may then flush. | 13 | 13, 33 |
COMPACT-USAGE-PROJECTIONPrimary-conversation usage and next-request pressure projections | packages/llm/token-meter/src/usage-projection.ts:70-205 | The usage fold reads only assistant usage chunks and messages and accumulates last-wins per Turn and Step; context pressure combines a Provider prompt sample with Surface shadow-price deltas for the next request, while usage stored on compaction/summary is not accumulated. | 13 | 13 |
DESIGN-INVARIANT-REGISTRYPackage-owned runtime invariant registry | packages/runtime-diagnostics/invariants/src/index.ts:93-197 | Invariants are selected and uniquely registered per package, run in service-owned child fibers, attribute failures to their package, and release registrations on failed setup or disposal. | 02 | 02, 03 |
DESIGN-SCOPED-LAYERSUnified scope visibility and effect ownership | packages/core/scope/src/store.ts:153-266 | ScopedLayers overlays global and scope-chain contributions with the nearest scope winning; the registration context determines both visibility and effect ownership, and undo reclaims empty layers. | 02 | 02, 07, 33 |
FAILURE-ADAPTER-BOUNDARYFinal adapter failure boundary | packages/llm/llm/src/index.ts:838-938 | The direct unprepared stream path selects, resolves, dispatches, and iterates inside the final boundary; prepared dispatch/iteration also becomes terminal finish, while middleware, consumer, and cleanup errors remain thrown. | 27 | 27 |
FAILURE-AGENT-CANCELAgent cancel, wake latch, and Turn containment | packages/core/agent-loop/src/agent.ts:113-329 | Defines default Inbox clearing and abort, post-abort waking-input reclassification and latching, replacement-activity tracking in whenIdle, balanced turn/end, and a fresh AbortController for the next Turn. | 27 | 27 |
FAILURE-AGENT-DISPOSALMemoized Agent lifecycle disposal | packages/core/agent-loop/src/index.ts:459-530 | Fuses caller, owner, and factory cancellation; the shared disposer performs cancel(disposed), whenIdle, scope.dispose, then registry and ownership detachment. | 27 | 27 |
FAILURE-AGENT-PREPARE-BOUNDARYAgent prepared-call and request-error boundary | packages/core/agent-loop/src/agent.ts:302-458 | The Agent prepares in buildRequest; non-NO_ADAPTER resolution errors throw before streaming and close the Turn directly, while only a terminal failure chunk dispatches agent/request-error. | 27 | 27 |
FAILURE-CHECKPOINT-AGENT-ORDERAgent request-prefix and stream ordering | packages/core/agent-loop/src/agent.ts:225-350 | The Agent records turn/start, claims Inbox input, then records step/start and input messages before building the request and entering the stream; returned chunks continue into the log. | 27 | 27 |
FAILURE-CHECKPOINT-POLICYSemantic checkpoints before model and tool side effects | packages/session/session-checkpoint-policy/src/index.ts:20-82 | With a live session, flushes before the downstream model stream, before a top-level tool body, and during pre-step; failures are fail-closed and cancellation during checkpoint returns not-dispatched. | 27 | 27 |
FAILURE-CHECKPOINT-REQUEST-PREFIXRequest header/context logged before streaming | packages/core/agent-loop/src/agent.ts:403-494 | buildRequest appends request/header and any required request/context before returning the frozen request carrying sessionId. | 27 | 27, 33 |
FAILURE-CHECKPOINT-TOOL-INTENTTool intent logged before scheduler dispatch | packages/core/agent-loop/src/tool-calls.ts:164-175 | Each started call appends tool/call before preparation and scheduler dispatch. | 27 | 27 |
FAILURE-CHECKPOINT-TOOL-WRAPPERScheduler dispatch traverses the tools/execute waterfall | packages/core/tools/src/index.ts:1569-1577 | Scheduled dispatch enters the tools/execute waterfall, whose final next invokes the tool body. | 27 | 27 |
FAILURE-CONFIG-RESOLUTIONDeepSeek two-layer validation and last-good generation | packages/llm/llm-deepseek/src/index.ts:91-256 | Schema plus explicit resolver revalidate catalog, bounds, reasoning, timeout, and retry; initial failure blocks registration while an invalid live snapshot falls back to the complete lastGood generation. | 27 | 27, 33 |
FAILURE-CRASH-REPAIRDeterministic semantic repair of an interrupted Turn | packages/core/session/src/repair.ts:18-132 | Distinguishes TOOL_NOT_STARTED from TOOL_OUTCOME_UNKNOWN, closes dangling tool results before Step/Turn, and instructs side-effect risk verification in recovery text. | 27 | 27, 33 |
FAILURE-CREDENTIAL-ROUTEPer-request credential recovery and in-place retry-policy replacement | packages/llm/llm-deepseek/src/index.ts:225-275 | Credentials resolve lazily from the same request snapshot and missing values throw MISSING_CREDENTIAL; the route registers independently and policy changes use synchronous replace to avoid an empty registry window. | 27 | 27 |
FAILURE-DEEPSEEK-HTTPDeepSeek HTTP errors, Retry-After, and request id | packages/llm/llm-deepseek/src/adapter.ts:117-338 | Parses seconds or HTTP-date Retry-After, two request-id headers, and maps non-2xx status/body into stable failure codes and facts. | 27 | 27 |
FAILURE-DEEPSEEK-STREAMPer-request snapshot, idle watchdog, and transport cleanup | packages/llm/llm-deepseek/src/adapter.ts:214-268 | One stream freezes connection and credential facts, distinguishes TIMEOUT, ABORTED, and TRANSPORT, then aborts the consumer and awaits an unexhausted iterator.return in finally. | 27 | 27 |
FAILURE-HMR-WATCHUser-patch watcher and present-invalid fail-loud behavior | packages/boot/app-boot/src/index.ts:225-338 | The watcher rereads a complete patch generation and performs one entry.update; a present but unreadable, unparsable, or non-array patch throws rather than being skipped. | 27 | 27 |
FAILURE-JSONL-ATOMICITYJSONL materialization, append rollback, and fsync | packages/session/session-persistence-jsonl/src/index.ts:511-701 | Initial write uses a synced temp and non-overwriting publish; POSIX links and fsyncs the parent directory; append write/sync failure truncates and fsyncs the old length, and repair truncation is fsynced too. | 27 | 27 |
FAILURE-JSONL-PREFIXStable JSONL/Zstd prefix and torn-tail repair marker | packages/session/session-persistence-jsonl/src/index.ts:306-444 | The loader uses scanner committed/torn boundaries to construct a stable event prefix and truncation/recovered-events marker, then persists repair through commitRepair. | 27 | 27 |
FAILURE-JSONL-RAW-SCANComplete-record raw JSONL scanner | packages/session/session-persistence-jsonl/src/format.ts:272-377 | Commits only newline-terminated, decodable event records with contiguous sequence numbers; an unfinished fragment does not advance committedBytes. | 27 | 27 |
FAILURE-JSONL-WIN32Windows write-through durable publish | packages/session/session-persistence-jsonl/src/win32.ts:109-120 | Windows publishes the staging path to the final path with MoveFileExW MOVEFILE_WRITE_THROUGH and without replacement or cross-volume copy-fallback flags. | 27 | 27 |
FAILURE-JSONL-ZSTD-SCANComplete Zstd frame scanner | packages/session/session-persistence-jsonl/src/zstd.ts:48-103 | Validates frame header, block, and checksum boundaries, returns only complete frames, and marks the start of an EOF-interrupted final frame as tornStart. | 27 | 27 |
FAILURE-PERSISTENCE-WIRINGPersistence admission, final drain, and retirement order | packages/session/session-persistence/src/coordinator.ts:1084-1161 | Reverse teardown closes event admission before flush, chain draining, and backend close; session retirement flushes before releasing exact-lifecycle state. | 27 | 27 |
FAILURE-REQUEST-LOOPModel-request recovery loop inside one Step | packages/core/agent-loop/src/agent.ts:332-400 | Each attempt rebuilds request and assembler; only terminal error/aborted finish enters request-error, a retry action continues the same Step, and only success commits the assistant message and tools. | 27 | 27 |
FAILURE-RETRY-EXECUTORRetry execution, durable scheduling, and disposal drain | packages/llm/llm-retry/src/index.ts:99-225 | Counts by coordinates and policyKey, records retry before waiting, handles provider-delay caps and always-mode downstream composition, and cancels then drains active recovery on disposal. | 27 | 27, 33 |
FAILURE-RETRY-POLICYProvider-owned retry policy defaults and validation | packages/llm/llm/src/retry-policy.ts:14-191 | Defines normal/always modes and default counts, delays, jitter, and codes; rejects unknown keys, invalid bounds, empty or duplicate codes; returns a frozen policy. | 27 | 27 |
FAILURE-SNAPSHOTSerializable frozen failure snapshot | packages/llm/llm/src/adapter-failure.ts:16-104 | A carried snapshot is trusted only when the Error's own data descriptors for failure/code match; inner fields are read and validated inside a try but need not be own properties, and the copied snapshot is frozen. | 27 | 27 |
FAILURE-TIMEOUT-SIGNALSignal contract for deadlines and idle watchdogs | packages/util/timeout/src/index.ts:57-190 | Signals only notify and callers must stop; the first abort reason wins, code-scoped timeoutOf separates outer cancellation, and the watchdog times only an outstanding demand. | 27 | 27 |
FAILURE-TOOL-DRAINParallel-tool abort and scheduler-failure drain | packages/core/agent-loop/src/tool-calls.ts:112-255 | Abort stops new dispatches, waits and commits started calls in order, then synthesizes skipped-call results; scheduler failure allSettles in-flight work. | 27 | 27, 33 |
FAILURE-TOOL-TIMEOUTCooperative tool timeout policy | packages/guard/timeout-policy/src/index.ts:18-80 | Wraps only tools declaring timeoutMs, temporarily swaps the signal, awaits downstream convergence, returns TOOL_TIMEOUT only when its own timer wins, and never abandons the Promise. | 27 | 27 |
FAILURE-WRITE-BEHINDPer-session write-behind and flush barrier | packages/session/session-persistence/src/write-behind.ts:18-158 | Enqueue clones events; flush shares a barrier and drains to quiescence; failed batches return to the head in order, automatic work pauses, and explicit barriers reject. | 27 | 27 |
INBOX-ACTIVATION-MODELActivation as a residency epoch | packages/subagent/subagent/src/continuation.ts:1-19 | An Activation is explicitly not a request, result, cancellation, or task; it can execute many FIFO Turns while the Agent Inbox remains the sole Turn queue. | 26 | 26 |
INBOX-ACTIVATION-STATEDerived Activation running/waiting/settled states | packages/subagent/subagent/src/continuation.ts:151-159 | State is derived from Agent activity and the owned-child set rather than introducing a second execution state machine. | 26 | 26 |
INBOX-ACTIVITY-CONTRACTAgent status, whenIdle, maintenance, and input contracts | packages/core/agent/src/runtime-types.ts:43-143 | Running spans the whole driver drain, maintenance remains externally idle, whenIdle follows replacement activity, and all three input boundaries are explicit. | 26 | 26 |
INBOX-AGENT-RESUMEPersisted Agent resume path | packages/core/agent-loop/src/index.ts:647-709 | Resume prepares from persistence, rejoins shared setupAndPublish, and publishes a new Agent handle with resume source. | 26 | 26 |
INBOX-CANCEL-CODECancel clear and abort implementation | packages/core/agent-loop/src/agent.ts:134-140 | Default cancel clears the Inbox and wake latch, keepInbox skips clearing, and only a non-idle phase receives the abort signal. | 26 | 26 |
INBOX-CHECKPOINT-POLICYSemantic checkpoints before model and tool side effects | packages/session/session-checkpoint-policy/src/index.ts:20-82 | Pre-step and llm/stream boundaries flush the Session; flush failure prevents model or top-level tool side-effect dispatch. | 26 | 26 |
INBOX-CHILD-CLIENTClient ordinary/child prompt and cancel routing | packages/client/runtime/src/client/sessions/session.ts:184-329 | Ordinary sessions pass queue/steer through; one-shot children are read-only; continuable children are text-only and ignore mode; cancel routes to session.cancel or subagent.interrupt. | 26 | 26 |
INBOX-CHILD-COMPOSERIndependent Send and Stop for a running child | packages/client/ui-conversation/src/client/skeleton/InputBar.tsx:541-555 | A running ordinary session makes Stop primary, while a continuable child retains Send as primary and exposes Stop separately so follow-ups can queue. | 26 | 26 |
INBOX-CHILD-INTERRUPTContinuable-child interrupt semantics | packages/subagent/subagent/src/continuation.ts:507-568 | Interrupt authorizes the live target, calls cancel with keepInbox, and returns immediately; claimed work is not restored, pending work and descendants remain, and absence is a no-op. | 26 | 26 |
INBOX-CHILD-OFFLINE-UIChild composer while the parent is offline | packages/client/ui-subagent/src/client/index.ts:43-52 | One-shot children are always read-only; a parent-offline continuable child keeps the default composer while running to expose Stop, then becomes read-only after stopping. | 26 | 26 |
INBOX-CHILD-REPORTExact-child reporting and parent scheduling | packages/subagent/subagent/src/continuation.ts:583-693 | Only the exact resident child may report; direct parent comes from lineage; wakeup uses followup, quiet uses inject, and reporting does not end the child. | 26 | 26 |
INBOX-CLAIM-REPLAYPost-seed replay and claim order | packages/core/agent/src/inbox.ts:24-78 | Inbox replays only post-seed splices; claim takes every next-step item first and then one next-turn item when requested. | 26 | 26 |
INBOX-CLIENT-MIRRORQueue snapshot mirror and durable handoff | packages/client/runtime/src/client/sessions/queue-mirror.ts:23-73 | The client replaces the queue from whole snapshots and retires one pending steering row when user/message with the same MessageId arrives. | 26 | 26 |
INBOX-COLD-RESUMEContinuable-child cold resume and lineage authorization | packages/subagent/subagent/src/continuation.ts:876-932 | Cold resume inspects persistence, authorizes the durable direct parent first, folds only the post-seed descriptor, materializes, and then submits. | 26 | 26 |
INBOX-COMMIT-IDENTITYCommit-first splices and the identity invariant | packages/core/agent/src/inbox.ts:128-219 | Coordinates are normalized and validated before Session append; live state mutates only after success, and MessageId is unique across both lists. | 26 | 26 |
INBOX-CONSUMED-WORKJoint event fold for consumed work | packages/core/agent/src/consumed-work.ts:60-107 | A single pass joins steps, claims, turn endings, and canceled splices to distinguish accounted Turns from dropped-unrun input. | 26 | 26 |
INBOX-CONTINUATION-ADMISSIONSynchronous admission fence for child follow-up | packages/subagent/subagent/src/continuation.ts:1125-1204 | A no-await span checks signal, drain, disposal, and lineage; it records the accepted ID before synchronously calling child Agent.followup and marking announced. | 26 | 26 |
INBOX-CONTINUATION-DELIVERYResident, disposal-race, and cold-resume delivery | packages/subagent/subagent/src/continuation.ts:459-505 | A per-child lock serializes followup: resident children submit directly, absent children cold-resume, and delivery racing disposal waits for release then retries. | 26 | 26 |
INBOX-CONTINUATION-SEAMContinuable-child start/followup/interrupt/report seam | packages/subagent/subagent/src/index.ts:203-275 | Start ends at initial Inbox acceptance; later followup is the next FIFO Turn; interrupt preserves pending work; report flows from the exact child to its direct parent. | 26 | 26 |
INBOX-CONTROL-TOOLSModel contract for send_message and interrupt_agent | packages/subagent/tool-subagent-control/src/index.ts:25-119 | send_message uses the exact caller for child followup, cannot redirect the current Turn, and returns no child reply; interrupt only requests cancellation and preserves the queue. | 26 | 26 |
INBOX-DRIVER-WAKEInput reclassification, driver wake, and latch | packages/core/agent-loop/src/agent.ts:113-220 | Send redirects post-abort waking input to next-turn; idle wake reserves a driver, active work latches only for maintenance/abort, and exit replays it. | 26 | 26 |
INBOX-EVENT-SCHEMATwo Inbox targets and the durable splice event | packages/core/agent/src/types.ts:9-25 | Only next-turn and next-step exist; agent/inbox/spliced records coordinates, complete inserted messages, and an optional canceled outcome. | 26 | 26 |
INBOX-HISTORY-CLASSIFICATIONDurable steering history classification | packages/client/runtime/src/client/sessions/steering-history.ts:20-63 | Replay records identities removed from next-step without cancellation and classifies only the later user-source user/message as steering. | 26 | 26 |
INBOX-HOST-CONTRACTSession prompt, queue mutation, and cancel wire contract | packages/host/apiproxy/src/api/sessions.ts:315-371 | The contract defines queue/steer prompts, edit/remove/steer mutations, and ordinary cancellation that preserves pending work. | 26 | 26 |
INBOX-HOST-PROJECTIONAuthoritative Web projection of both Inbox lists | packages/host/apiproxy/src/api-proxy.ts:1326-1355 | The Host projects next-turn and next-step, distinguishes steering/context by user source, and applies the current splice inside the synchronous observer to derive post-state. | 26 | 26 |
INBOX-HOST-PROMPTOrdinary prompt admission and mode routing | packages/host/apiproxy/src/api-proxy.ts:2461-2517 | The Host creates a sourced message, routes queue to followup and steer to steer, and returns accepted after synchronous enqueue succeeds. | 26 | 26 |
INBOX-HOST-QUEUE-MUTATIONMessageId queue mutation and strict steer | packages/host/apiproxy/src/api-proxy.ts:2568-2633 | The Host relocates pending items, limits edits to text, accepts strict steer only for running next-turn items, removes then steers the same message, and cancels with keepInbox. | 26 | 26 |
INBOX-INPUT-GESTURESEnter deduplication and whole-queue steer gesture | packages/client/ui-conversation/src/client/skeleton/InputBar.tsx:313-339 | Repeated Enter is suppressed; accelerated Enter on an empty draft steers every still-pending queued row, otherwise submission follows policy. | 26 | 26 |
INBOX-MESSAGE-IDENTITYUnified message identity, source, and freezing | packages/llm/llm/src/message.ts:96-199 | Messages carry stable IDs, roles, exact content, and extensible sources; existing messages are deep-frozen and new messages receive UUIDs. | 26 | 26 |
INBOX-PENDING-STEERING-UIPending steering at the conversation tail | packages/client/ui-conversation/src/client/chat/ChatView.tsx:400-406 | ChatView renders every pending steering item as a separate bubble after the running indicator. | 26 | 26 |
INBOX-QUEUE-DOCKQueueDock filtering and row actions | packages/client/ui-conversation/src/client/queue/QueueDock.tsx:27-205 | The Dock displays only queued placement and offers text edit, remove, and running-only steer for ordinary sessions. | 26 | 26 |
INBOX-RECONNECT-CLIENTClient-generation queue reset | packages/client/runtime/src/client/sessions/session.ts:412-485 | The client clears the old queue mirror on session/subscribed and then accepts the same stream's later snapshot, correctly handling an omitted empty baseline. | 26 | 26 |
INBOX-RECONNECT-HOSTMux reconnect queue baseline | packages/host/apiproxy/src/api-proxy.ts:3430-3455 | Reconnect establishes Session subscriptions and then sends a complete queue baseline only for Agents that still have pending work. | 26 | 26 |
INBOX-SEED-BOUNDARYInbox seed-ownership boundary | packages/core/agent/src/inbox.ts:24-39 | Construction explicitly skips events before seedLength and reconstructs pending state only from the Session's own suffix splices. | 26 | 26 |
INBOX-SEND-MAPFollow-up, steer, and inject mapping | packages/core/agent-loop/src/agent.ts:113-132 | Unified send inserts before optional wake; followup, steer, and inject map to next-turn+wake, next-step+wake, and next-step+quiet. | 26 | 26 |
INBOX-SETTLEMENT-NOTICESettlement-notice ordering and routing | packages/subagent/subagent/src/continuation.ts:1363-1465 | Notice delivery precedes parent-ownership release; closing parents receive inject, idle parents followup, busy parents steer; failures drop and final flush is best-effort. | 26 | 26 |
INBOX-SUBAGENT-HOSTSubagent Host prompt and offline-parent interrupt | packages/host/apiproxy/src/api-proxy.ts:2737-2799 | Child prompt requires a live parent and calls continuation followup; interrupt performs no parent/catalog/persistence lookup and lets the live Activation authorize the durable address. | 26 | 26 |
INBOX-SUBAGENT-WIRESubagent prompt and interrupt receipt contract | packages/host/apiproxy/src/api/subagents.ts:38-119 | Prompt receipt is an accepted MessageId with independent later execution; interrupt receipt acknowledges only the cancel signal, preserves pending work, and accepts absent/idle targets. | 26 | 26 |
INBOX-SUBMISSION-POLICYBusy-Enter queue/steer decision | packages/client/ui-conversation/src/client/input/submission-policy.ts:17-57 | Non-running or non-steer transports force queue; busy state follows the preference, accelerated gesture chooses the opposite, and direct steer is explicitly best-effort. | 26 | 26 |
INBOX-TOOL-CONTEXTOrdered tool-result and additional-context commit | packages/core/agent-loop/src/tool-calls.ts:145-158 | Each finalized tool result is appended in model order, then its additionalContexts are passed one by one to the next-step acceptor. | 26 | 26 |
INBOX-TOOL-CONTINUATIONSame-Turn continuation after tool results | packages/core/agent-loop/src/agent.ts:287-399 | An unconcluded tool outcome continues the Turn into a later Step, and existing next-step work prevents an immediate close even after conclusion. | 26 | 26 |
INBOX-TURN-MACHINETurn/Step claim, admission, and closing machine | packages/core/agent-loop/src/agent.ts:245-329 | A Turn starts before claim; reject yields blocked with no Step, empty enter yields completed with no Step, next-step continues the Turn, and other pending work opens another Turn. | 26 | 26 |
INBOX-WIRE-DOC-DRIFTDurability drift in queue wire comments | packages/host/apiproxy/src/api/events.ts:36-84 | The file carries complete pending messages in queue frames yet says they become durable only at claim and have no durable Session event, contradicting the Inbox splice implementation. | 26 | 26 |
LLM-ADAPTER-REGISTRYOne-to-one provider-route registry | packages/llm/llm/src/index.ts:330-413 | Adapters own non-empty unique routes; conflicts fail all-or-nothing, effect disposal releases exact routes, and replace atomically swaps routes before publishing an update. | 08 | 08, 33 |
LLM-BLOCK-ASSEMBLERCanonical chunk-to-assistant-message assembler | packages/llm/llm/src/assembler.ts:25-163 | Supports interleaved indexes and delta-only protocols, lets the first block-end win, drops unsafe tool calls on max-token truncation, and carries usage, finish, and replay state. | 08 | 08 |
LLM-CHECKPOINT-BARRIERDurable checkpoint before adapter dispatch | packages/session/session-checkpoint-policy/src/index.ts:20-82 | The llm/stream waterfall flushes the complete request prefix before constructing the downstream adapter stream and fails closed with no model I/O when flushing fails. | 08 | 08 |
LLM-CONTENT-PROTOCOLProvider-neutral content and usage vocabulary | packages/llm/llm/src/types.ts:53-141 | Core blocks are text, reasoning, image, tool-call, and tool-result; tool arguments remain raw JSON strings and usage buckets are disjoint. | 08 | 08 |
LLM-DEEPSEEK-CONFIGDeepSeek config resolution, last-good state, and route registration | packages/llm/llm-deepseek/src/index.ts:149-275 | Config is explicitly resolved and validated, bad live snapshots retain last-good state, credentials resolve per request, and retry-policy changes atomically replace the sole deepseek-official route. | 08 | 08 |
LLM-DEEPSEEK-MODELSDeepSeek model capabilities and defaults | packages/llm/llm-deepseek/src/adapter.ts:88-211 | Defaults are a 1M context, 256K output, and text-only input; uncatalogued model ids still pass through, while deployment thinking policy controls off, high, max, and the default effort. | 08 | 08 |
LLM-DEEPSEEK-SERIALIZEProjection from internal messages to DeepSeek chat completions | packages/llm/llm-deepseek/src/serialize.ts:25-186 | Rejects images, expands user-role tool results into role=tool, replays reasoning_content only on tool-call turns, forces thinking off for session titles, and always requests streaming usage. | 08 | 08 |
LLM-DEEPSEEK-TRANSLATEStateful translation from DeepSeek SSE to internal chunks | packages/llm/llm-deepseek/src/translate.ts:26-184 | Builds reasoning, text, and tool indexes, defers block-end, usage, and finish until DONE, subtracts cache hits from prompt totals, and fails empty stop, malformed JSON, or missing DONE distinctly. | 08 | 08 |
LLM-DEEPSEEK-TRANSPORTDeepSeek request snapshot, HTTP, and SSE boundary | packages/llm/llm-deepseek/src/adapter.ts:214-345 | Each stream captures connection and key, sends attribution plus anonymous user, session, and compaction headers, preserves status, Retry-After, and request id, and classifies idle timeout and transport failures. | 08 | 08 |
LLM-FAILURE-BOUNDARYAdapter-failure normalization boundary | packages/llm/llm/src/index.ts:838-938 | Selection, dispatch, iterator construction, and iteration failures become terminal failure chunks, while middleware, consumer, and cleanup failures remain thrown. | 08 | 08, 33 |
LLM-MESSAGE-IDENTITYAssistant provider provenance and replay state | packages/llm/llm/src/message.ts:7-18 | Model messages carry provider, model, and optional adapter-private lossless replay state, which is reusable only under the same adapter ownership. | 08 | 08 |
LLM-MESSAGE-VALUEOne immutable Message value | packages/llm/llm/src/message.ts:128-184 | Delivery, durable history, and provider requests share one stable id, role, content, and source representation, cloned and deep-frozen at creation. | 08 | 08 |
LLM-PI-CONFIGPi AI multi-provider profile shape | packages/llm/llm-pi-ai/src/config.ts:34-178 | Routes default to empty; each profile owns credentials, endpoint, model catalog and overrides, reasoning, cache retention, transport, timeouts, headers, and retry policy. | 08 | 08 |
LLM-PI-PROVIDERPi AI catalog reuse and manual protocol table | packages/llm/llm-pi-ai/src/provider.ts:35-191 | Catalog routes retain their original provider API and auth; manual routes support only openai-completions, openai-responses, and anthropic-messages and are built from configuration. | 08 | 08 |
LLM-PI-REPLAYVersioned adapter-private Pi AI replay state | packages/llm/llm-pi-ai/src/replay.ts:15-215 | Durable content remains authoritative while versioned state stores API, response identity, stop reason, and provider signatures and is validated field-by-field and block-by-block on replay. | 08 | 08 |
LLM-PI-STREAMPi AI exact-model and stream-snapshot boundary | packages/llm/llm-pi-ai/src/adapter.ts:217-357 | Unknown models fail before I/O, stop is unsupported, one call captures profile, model, and credential with SDK retries disabled, and images require model capability plus a durable attachment service. | 08 | 08 |
LLM-PREPARED-CALLOne-shot registration-bound PreparedLlmCall | packages/llm/llm/src/index.ts:771-814 | prepareCall captures resolved config, model context, adapter defaults, and retry policy; stream is one-shot and rejects config drift before dispatch. | 08 | 08 |
LLM-REPLAY-DERIVATIONLog derivation of keyless test replay scripts | packages/test-support/llm-replay/src/index.ts:193-260 | Assistant chunks split at each finish and one turn and step may contain multiple retry calls; throws and hangs cannot be derived from the log alone and require an explicit sidecar. | 08 | 08 |
LLM-REQUEST-INVARIANT-SCOPEField coverage of the request-reconstruction invariant | packages/core/agent-loop/src/invariant.ts:35-55 | The invariant compares messages, model, system, temperature, maxTokens, stop, and tools, but not provider or reasoningEffort. | 08 | 08 |
LLM-RETRY-EXECUTORDurable retry scheduling and cancellable backoff | packages/llm/llm-retry/src/index.ts:111-225 | Writes llm/retry before waiting and llm/retry-started before returning retry; over-cap Retry-After delegates in normal mode and falls back locally in always mode, while disposal aborts and drains. | 08 | 08 |
LLM-RETRY-POLICYProvider-owned retry-policy defaults and validation | packages/llm/llm/src/retry-policy.ts:14-191 | Normal defaults to two retries for EMPTY_RESPONSE, RATE_LIMIT, SERVER, TIMEOUT, and TRANSPORT with 500ms-to-10s exponential backoff and 10 percent jitter; always is unbounded. | 08 | 08 |
LLM-STREAM-PROTOCOLClosed streaming chunks and complete request protocol | packages/llm/llm/src/types.ts:283-355 | Streams use indexed block start, delta, end, usage, and one terminal finish; GenerateOptions carries config, system, tools, messages, session identity, and auxiliary purpose. | 08 | 08 |
LLM-TOKEN-USAGE-PROJECTIONLast-sample-replaces usage projection keyed by Turn and Step | packages/llm/token-meter/src/usage-projection.ts:97-140 | The projection retains one last sample and replaces totals for later usage in the same turn and step, intended to avoid double-counting chunk and final-message usage. | 08 | 08 |
LOG-ATTEMPT-ASSEMBLYRaw chunks and semantic-message commit for each model attempt | packages/core/agent-loop/src/agent.ts:332-400 | Each request derives messages from the current Surface; every chunk is logged first, and only a successful attempt appends an assistant message citing those seqs, while a failed retrying attempt commits no semantic message. | 10 | 10 |
LOG-CHECKPOINT-POLICYSemantic durability checkpoints before model and tool side effects | packages/session/session-checkpoint-policy/src/index.ts:20-82 | The policy flushes before model-stream construction, a top-level tool body, and every pre-step; a failed checkpoint prevents the adapter or tool side-effect body from running, while nested tool dispatch reuses the outer boundary. | 10 | 10, 12, 33 |
LOG-CLIENT-ASSISTANTClient projection of assistant streams, retries, and interruption | packages/client/ui-conversation/src/client/conversation-nodes/assistant.ts:72-205 | The client folds chunks incrementally; llm/retry hides and clears failed-attempt partials while preserving first-token time, and a closed boundary with chunk evidence but no final message can synthesize an interrupted node. | 10 | 10 |
LOG-CLIENT-STITCHHistory-window stitching, live buffering, deduplication, and gap repair | packages/client/runtime/src/client/sessions/session.ts:614-729 | The client installs a tail page, stitches events buffered during subscription by seq, drops overlap, and buffers plus refetches the tail on a seq hole so the conversation engine never receives a discontinuous window. | 10 | 10, 12 |
LOG-CONVERSATION-ASSEMBLERIncremental UI business-context engine over a contiguous raw window | packages/client/runtime/src/client/sessions/conversation-assembler.ts:133-248 | The assembler fully rebuilds on replaceWindow, handles only the tail on append, and adds older pages on prepend while preserving existing context and view identity; business Definitions decide how events become UI nodes. | 10 | 10 |
LOG-CORE-FORKCore Fork rules for live sources and balanced prefixes | packages/core/session/src/index.ts:1067-1153 | Core copies an inclusive prefix only from the current live Session; the boundary must exist and be contiguous, may not end inside an open turn, and the child inherits cwd, parentSession, and exact seedLength. | 10 | 10 |
LOG-HISTORY-CONTRACTWire-level contracts for raw history entries and Fork | packages/host/apiproxy/src/api/sessions.ts:59-338 | History returns each raw event plus an optional current tool view, pages by append-origin message groups, includes tail partials, and never resumes a cold Agent; Fork atSeq is a completed-turn anchor. | 10 | 10 |
LOG-HISTORY-CUTOne synchronous cut for history events and the projection baseline | packages/host/apiproxy/src/api-proxy.ts:1533-1574 | Attached history copies live events while cold history uses inspect; after all awaits, events and the projection watermark are read synchronously so one response cannot mix moments N and N+1. | 10 | 10, 12 |
LOG-HISTORY-PAGINATIONContiguous raw pagination by append-origin message group | packages/host/apiproxy/src/api-proxy.ts:282-313 | The algorithm counts append-origin user and assistant messages backward, gives replacements no quota, and uses sourceEventSeqs to extend the cut to the raw chunk group's start so a page never splits an assistant attempt. | 10 | 10 |
LOG-HISTORY-SCHEMAWire validation for history requests and responses | packages/host/apiproxy/src/api/sessions.schema.ts:141-242 | beforeSeq and maxMessages are checked only as non-negative and positive integers, with no maximum for maxMessages; each response entry validates its raw event and optional view, while the transport schema does not express the contiguous-window invariant. | 10 | 10 |
LOG-HISTORY-VIEWPagination-time tool views and cross-page soft fallback | packages/host/apiproxy/src/api-proxy.ts:804-820 | History backscans tool-call arguments only within the current raw page and invokes the current presenter; a call on an older page or unparseable arguments returns undefined so the client uses a generic card. | 10 | 10 |
LOG-HOST-FORKHost Fork message anchors and composition inheritance | packages/host/apiproxy/src/api-proxy.ts:2363-2458 | atSeq selects the first turn/end for its containing Turn and includes standalone events before the next turn/start; the child inherits cwd, lineage, seedLength, and current composition, and a later workspace-attach failure does not unpublish it. | 10 | 10 |
LOG-PERSISTENCE-ADMISSIONAsynchronous persistence admission after Session creation | packages/session/session-persistence/src/coordinator.ts:1084-1181 | The session/created listener starts initFor in a fire-and-observe manner, session/event enters write-behind, and session/flush is the explicit barrier, so physical persistence of a fork seed is not atomic with child publication. | 10 | 10 |
LOG-PERSISTENCE-READ-FACESFour read contracts: prepare, load, inspect, and readFrom | packages/session/session-persistence/src/coordinator.ts:720-889 | Prepare reserves the sole publishable Session and commits recovery; load commits recovery and returns a balanced view; inspect performs logical repair without publication or writes; readFrom returns a physical stored suffix without recovery. | 10 | 10, 12 |
LOG-PREPARED-COMMITRevision checking and exact commit of prepared repair | packages/session/session-persistence/src/coordinator.ts:891-990 | A cold source synthesizes closers and validates them through Session seeding; after commitRepair changes revision it reloads instead of binding an old memory graph to a new revision, while live load flushes first and rejects an open turn. | 10 | 10, 12 |
LOG-QUERY-TRACEQueries for Surface replacement, sources, and Session lineage | packages/session-query/session-query/src/tracing.ts:21-218 | Query first applies the canonical Surface fold to classify events as current, shadowed, or log-only, then returns replacement chains and direct source or derived links; Session lineage follows header parents into ancestors and recursive descendants and explicitly reports a missing parent. | 10 | 10, 14 |
LOG-RAW-EXPORTByte-preserving export of raw artifacts and lineage media after flush | packages/host/apiproxy/src/session-export.ts:1-265 | Export passes every live Session through the authoritative flush barrier, then streams the backend artifact verbatim with optional descendant logs and deduplicated referenced media into ZIP, without rebuilding UI or Surface projections. | 10 | 10 |
LOG-REPAIR-CLOSERSDeterministic synthetic closers for a crash tail | packages/core/session/src/repair.ts:18-132 | Repair scans only the tail open turn; an unrecorded start gets TOOL_NOT_STARTED, a recorded call without a result gets TOOL_OUTCOME_UNKNOWN, then step/end and interrupted turn/end are added as needed with contiguous seqs and the last real timestamp. | 10 | 10 |
LOG-WRITE-BEHINDPer-session write-behind queue and explicit quiescence barrier | packages/session/session-persistence/src/write-behind.ts:18-158 | Events are cloned into a fixed-deadline queue; a failed stable batch is restored in order and pauses automatic retry, while concurrent flushes share a barrier that explicitly retries until the queue and active write are quiescent. | 10 | 10, 12 |
LOOP-DRIVER-PRESTEPDriver containment and pre-step preparation | packages/core/agent-loop/src/agent.ts:195-243 | kick contains turn failure and cancellation at the driver boundary; preStep claims input, assembles the prompt, projects runtime context, and then enters the agent/pre-step waterfall. | 06 | 06 |
LOOP-REQUEST-BUILDConstruction of reconstructable frozen requests | packages/core/agent-loop/src/agent.ts:403-495 | Shows the request waterfall, exact-adapter prepareCall, adapter-default markers, request/header, request/context, and the final frozen marked request in order. | 06 | 06, 07, 08 |
LOOP-REQUEST-INVARIANTLog-reconstruction invariant for LLM requests | packages/core/agent-loop/src/invariant.ts:18-55 | For loop-marked requests, verifies freezing, a live session, step/header presence, and independently compares deriveMessages and the folded header. | 02 | 02, 06, 07, 33 |
LOOP-RUNTIME-CONTEXTDynamic runtime-context projection | packages/core/agent-loop/src/runtime-context.ts:24-75 | Restores the latest retained snapshot from the surface, follows replacements, proposes an uncommitted user message only on change, and uses a cleared marker to retire old semantics. | 06 | 06, 07 |
LOOP-STEP-STATEStep model stream and tool continuation | packages/core/agent-loop/src/agent.ts:332-400 | Each request uses deriveMessages, logs every chunk, and writes assistant/message on success; max-tokens, no-tool, concluded-tool, and continuation branches are explicit. | 06 | 06, 08 |
LOOP-TURN-STATETurn state machine and end reasons | packages/core/agent-loop/src/agent.ts:245-330 | Covers turn/start before claims, reject, empty initial steps, the step loop, turn-stopping, error normalization, turn/end, and consecutive queued turns. | 02 | 02, 06, 33 |
MEMORY-AGENT-CONTEXTModel-context construction from pre-step to Provider request | packages/core/agent-loop/src/agent.ts:225-494 | The Agent claims input and assembles system and runtime context, durably appends accepted user and context messages after the waterfall, builds each request from the current Surface via deriveMessages(), and records route, system, and tools headers. | 14 | 14 |
MEMORY-JSONL-PERMISSIONSOwner-only, non-overwriting JSONL publication | packages/session/session-persistence-jsonl/src/index.ts:528-615 | POSIX materialization creates directories with 0700 and synchronized temporary files with 0600, publishes through link plus directory fsync, and refuses to overwrite an existing Session log. | 14 | 14 |
MEMORY-PERSISTENCE-FLUSHSession write-behind, flush barriers, and disposal drains | packages/session/session-persistence/src/coordinator.ts:1117-1160 | Every frozen event enters a persistence-owned bounded write queue, session/flush is the immediate durability barrier, and Session disposal drains writes before releasing lifecycle state. | 14 | 14 |
MEMORY-PERSISTENCE-TRANSACTIONDurable append commits and exact prepare/load | packages/session/session-persistence/src/coordinator.ts:690-774 | The coordinator validates contiguous seq values, advances its durable cursor only after a backend batch commits, and uses reservations plus a stable log to produce exact prepared and loaded recovery views. | 14 | 14 |
MEMORY-QUERY-CORPUSThe live-first logical corpus of Session query | packages/session-query/session-query/src/corpus.ts:53-220 | Query merges persistence with live Sessions using live precedence, always prefers a detached live snapshot for one target, bounds cold-batch concurrency, isolates per-item failures, and rechecks attachment after persisted reads. | 14 | 14 |
MEMORY-QUERY-DOCUMENTSRaw-log projection into current, shadowed, and log-only search documents | packages/session-query/session-query/src/documents.ts:15-74 | The document builder applies the canonical Surface fold to a complete raw log and retains Session, seq, type, time, Surface classification, and extracted text for every searchable event. | 14 | 14 |
MEMORY-QUERY-EXTRACTIONFirst-party Session search-text extraction rules | packages/session-query/session-query/src/extraction.ts:13-82 | Extraction includes user and assistant text, tool names, arguments and results, Todos, and selected Turn errors, excludes reasoning, raw chunks, request headers, and unknown events or blocks, and does not inspect user-message source. | 14 | 14 |
MEMORY-QUERY-SQLITE-MODEopenAt modes and the branch that fully disables full-text search | packages/session-query/session-query-sqlite/src/index.ts:85-331 | openAt may be startup, first-search, or never; never retains inherited exact reads, filters, and traces but deterministically rejects both full-text APIs before importing or opening SQLite. | 14 | 14 |
MEMORY-QUERY-SQLITE-SCHEMAOwner-only disposable SQLite FTS5 derived index | packages/session-query/session-query-sqlite/src/schema.ts:27-169 | Persistent database directories and files are created with 0700 and 0600, foreign databases are refused, old derived schemas may be rebuilt, and persistent and live documents use plaintext unicode61 FTS5 tables. | 14 | 14 |
MEMORY-QUERY-TOOL-AUTHWorkspace authorization and rechecks for Session-query model tools | packages/session-query/tool-session-query/src/workspace-access.ts:54-233 | The caller must come from exec.agent; self is readable, cross-Session access requires exact cwd equality, batches are prefiltered, observed headers are rechecked, and unauthorized lineage subtrees collapse to null markers. | 14 | 14 |
MEMORY-REFERENCE-PROJECTIONText projection and exact UTF-8 retention for Session references | packages/context/session-reference/src/projection.ts:35-171 | Projection keeps direct-user text, assistant text, and canonical checkpoints, excludes tools and injected context, then drops older non-checkpoint messages and head-tail truncates with exact omitted-byte accounting when over budget. | 14 | 14 |
MEMORY-REFERENCE-RESOLVERCandidate, budget, and injection semantics of explicit cross-Session snapshots | packages/context/session-reference/src/index.ts:42-217 | The resolver marks sources untrusted and read-only, defaults to three references, 50 candidates, and 65,536 bytes per source, uses cwd only for candidate ranking, and prepares one sourced user context from exact Surface reads. | 14 | 14 |
MEMORY-SKILL-FILESYSTEM-CONFIGFilesystem Skill provider ordering, watch defaults, and naming drift | packages/skill/skill-filesystem/src/index.ts:36-100 | Configuration defines project, custom, and user ranks and defaults watching, symlink following, and 128 project watchers; JSDoc says providerName defaults to local while the schema actually defaults to filesystem. | 14 | 14 |
MEMORY-SKILL-FILESYSTEM-LOADSkill-file discovery, frontmatter parsing, and uncapped body reads | packages/skill/skill-filesystem/src/index.ts:719-885 | Discovery accepts flat .md files or one-level SKILL.md directories, parses name, description, and invocation while retaining the full trimmed body, and neither Node nor policy-filesystem reads impose a Skill-level byte cap. | 14 | 14 |
MEMORY-SKILL-FILESYSTEM-ROOTSProject, custom, user, and bundled Skill roots | packages/skill/skill-filesystem/src/index.ts:241-260 | The provider starts with the nearest project's .dsh/skills and .agents/skills, then adds custom roots, two user roots, and an optional trusted bundled root. | 14 | 14 |
MEMORY-SKILL-HOST-UISession scope and user-invocable filtering in Host skill.list | packages/host/apiproxy/src/api-proxy.ts:3205-3257 | The Host neither creates nor resumes an Agent, resolves cwd from an attached Session header, reads the registry through the live or preset scope, and returns only the wire projection of user-invocable Skills. | 14 | 14 |
MEMORY-SKILL-INVOCATIONSkill catalog, model loading, and explicit user injection | packages/skill/tool-skill/src/index.ts:27-430 | Each catalog description defaults to a 500-character cap but the whole catalog has no aggregate cap; the model tool and user gesture recheck invocation policy, load full bodies on demand, and only whitespace-bounded /name in direct user input creates durable instructions context. | 14 | 14 |
MEMORY-SKILL-REGISTRYLayered Skill registry, shadowing, and on-demand loading | packages/skill/skill/src/index.ts:327-619 | The registry merges global and scope-chain layers, lets the nearest scope shadow same-name entries while rank resolves within a layer, returns summaries from list and snapshot, and loads the winning full definition on demand through get. | 14 | 14 |
MEMORY-WEB-HOST-GATEWeb Session visibility baseline, search-hit gate, and error boundary | packages/host/apiproxy/src/api-proxy.ts:1720-2162 | The Host builds visibility from attached and servable cwd-bearing cold Sessions, accepts only current user or assistant hits in that set, and still interpolates underlying errors with a note to redact before multi-user deployment. | 14 | 14 |
MULTIAGENT-ACP-PROVIDERACP external-provider boundary | packages/subagent/subagent-acp/src/index.ts:124-170 | An ACP child starts out of process, advertises zero start capabilities and no parent history, and runs one-shot with either a configured cwd override or the parent Session cwd. | 24 | 24 |
MULTIAGENT-ACTIVATION-DISPOSALActivation top-down cancellation and child-first release | packages/subagent/subagent/src/continuation.ts:1270-1380 | Disposal installs the admission cutoff, synchronously cancels top-down, disposes children, awaits idle/flush, then releases handles child-first, notifies the parent, and releases ownership. | 24 | 24 |
MULTIAGENT-ACTIVATION-MODELContinuable Activation data model | packages/subagent/subagent/src/continuation.ts:151-240 | Activation state derives from Agent quiescence and owned children; each epoch holds the exact handle, ancestry, accepted IDs, ownership set, and memoized disposal. | 24 | 24 |
MULTIAGENT-ACTIVATION-OWNERSHIPParent ownership and the acceptance gap | packages/subagent/subagent/src/continuation.ts:1094-1174 | A continuation-managed parent acquires ownership before the child runs, and accepted IDs register before synchronous inbox send so neither parent nor child settles during the admission microtask gap. | 24 | 24 |
MULTIAGENT-ASSISTANT-OUTPUTCanonical child assistant output | packages/subagent/subagent/src/assistant-output.ts:1-74 | The canonical rule selects the last non-empty assistant message, otherwise accumulated text deltas, independently of stop reason. | 24 | 24 |
MULTIAGENT-CHILD-COMPOSITIONChild-scoped composition | packages/subagent/subagent/src/child-agent.ts:130-175 | Each in-process child first joins the parent preset, then receives fixed delegation context plus child-scoped persona and tool restrictions. | 24 | 24 |
MULTIAGENT-CHILD-INHERITANCEChild options and durable lineage | packages/subagent/subagent/src/child-agent.ts:38-120 | Children default to parent provider/model/maxTokens; the durable header records cwd, parentSession, origin, delegationDepth, a nonzero seedLength when present, and the ID of the parent's current live composed preset. | 24 | 24 |
MULTIAGENT-CHILD-LOCKPer-child linearization lock | packages/subagent/subagent/src/continuation.ts:319-340 | ChildLock serializes operations by durable child ID and absorbs one critical section's rejection so later callers remain independent. | 24 | 24 |
MULTIAGENT-CLAUDE-PROVIDERFixed Claude Code one-shot provider | packages/subagent/subagent-claude-code/src/index.ts:50-112 | The Claude Code provider advertises zero capabilities and no parent history, resolves the CLI executable, and runs a one-shot child in the parent workspace under the shared subprocess owner. | 24 | 24 |
MULTIAGENT-CODEX-PROVIDERFixed Codex one-shot provider | packages/subagent/subagent-codex/src/index.ts:47-100 | The Codex provider has a fixed name, zero start capabilities, and no parent history; it requires the parent Session cwd and starts each run through the subprocess service. | 24 | 24 |
MULTIAGENT-CODEX-RUNCodex app-server one-shot run lifecycle | packages/subagent/subagent-codex/src/run.ts:28-199 | Each run spawns a fixed app-server and publishes only after initialize and ephemeral-thread success, then runs one text-only Turn; disposal closes the protocol and reclaims the process tree. | 24 | 24 |
MULTIAGENT-CODEX-UNATTENDEDCodex unattended requests and notification filtering | packages/subagent/subagent-codex/src/wire.ts:294-373 | Approvals only cancel/decline, permission and user-input responses are empty, MCP elicitation is declined, and notifications bind the exact thread/Turn while excluding commentary and retaining the last final answer. | 24 | 24 |
MULTIAGENT-CODEX-WIRECodex handshake, ephemeral thread, and result selection | packages/subagent/subagent-codex/src/wire.ts:128-373 | The wire performs initialize/initialized, requires an ephemeral thread, submits one Turn, maps contextWindowExceeded to max-tokens, and selects the last final or unphased answer. | 24 | 24 |
MULTIAGENT-COLD-RESUMEProvider-independent cold resume | packages/subagent/subagent/src/continuation.ts:876-932 | Cold resume inspects persistence, first authorizes the exact direct parent, folds only the child-suffix descriptor, and materializes/resumes directly without invoking the original provider. | 24 | 24 |
MULTIAGENT-CONTINUABLE-STARTContinuable-child start transaction | packages/subagent/subagent/src/continuation.ts:388-457 | The manager reserves identity, snapshots descriptor and policy, prepares the seed, materializes the child, and returns childId/messageId only at inbox acceptance; earlier failure rolls back completely. | 24 | 24, 33 |
MULTIAGENT-CONTROL-TOOLSsend_message and interrupt_agent | packages/subagent/tool-subagent-control/src/index.ts:25-119 | send_message uses the exact calling Agent as direct-parent authority and returns only messageId; interrupt_agent requests cancellation under exact-ancestor authority and returns immediately. | 24 | 24 |
MULTIAGENT-DELEGATED-POLICYDelegated-policy capture and persistence | packages/subagent/subagent/src/child-agent.ts:177-225 | When the corresponding service exists, delegation captures the parent's explicit Session sandbox override and pins approval to never; only defined overrides are appended to the child log. | 24 | 24 |
MULTIAGENT-DEPTHMonotonic delegation depth | packages/subagent/subagent/src/depth.ts:18-50 | Effective depth is the maximum of the durable header and runtime option; caps must be nonnegative safe integers so a resumed child cannot lower itself to top-level. | 24 | 24 |
MULTIAGENT-DESCRIPTORVersioned durable subagent descriptor | packages/subagent/subagent/src/descriptor.ts:1-88 | The model-hidden v2 descriptor distinguishes one-shot and continuable children and stores resumable composition while deliberately omitting subagentDepth, outputSchema, and maxTokens. | 24 | 24 |
MULTIAGENT-DESCRIPTOR-FOLDStrict descriptor parse, snapshot, and fold | packages/subagent/subagent/src/descriptor.ts:195-314 | Current-version descriptors strictly validate fields and are lossless-JSON snapshotted before creation; within a supplied event slice the first descriptor is authoritative. | 24 | 24 |
MULTIAGENT-DESCRIPTOR-PROJECTIONLast-wins projection for descriptors in fork seeds | packages/subagent/subagent/src/projection.ts:111-155 | The identity projection is last-wins so the child's descriptor overrides ancestor identity in its seed; malformed or unknown versions reset to null. | 24 | 24 |
MULTIAGENT-DESCRIPTOR-SEEDBetween-Turn continuable-descriptor seed | packages/subagent/subagent/src/descriptor-seed.ts:13-30 | A continuable child's creation seed contains an optional inherited prefix followed by one model-hidden between-Turn descriptor accepted through Session sequencing rules. | 24 | 24 |
MULTIAGENT-DRAINManager and scoped-forest drain | packages/subagent/subagent/src/continuation.ts:695-803 | Drain closes admission before its first await, waits for materialization boundaries, disposes the forest by roots, and scoped drain opens every cancellation transaction synchronously before aggregating failures. | 24 | 24 |
MULTIAGENT-FINAL-FLUSHBest-effort final flush and persistence requirement | packages/subagent/subagent/src/continuation.ts:1451-1478 | After Activation quiescence the runtime requests a final Session flush; failure only warns that resume may be stale and does not block release, while new continuable starts require persistence. | 24 | 24 |
MULTIAGENT-FOLLOWUPContinuable follow-up routing | packages/subagent/subagent/src/continuation.ts:459-505 | Per-child locking linearizes messages: resident children enqueue or wake, absent children cold-resume, and the caller signal owns work only until inbox acceptance. | 24 | 24 |
MULTIAGENT-FORK-PROVIDERIn-process fork provider and continuable note | packages/subagent/subagent-fork-in-process/src/index.ts:40-94 | Fork copies only the balanced prefix through the last turn/end, supports all four capabilities, and implements prepareContinuable while its source comment says no shipped caller uses it. | 24 | 24 |
MULTIAGENT-INBOX-SPLICEDurable Inbox splice precedes live updates | packages/core/agent/src/inbox.ts:128-192 | Inbox splice first appends durable agent/inbox/spliced, then updates the live inbox and publishes inserted notifications only after append succeeds. | 24 | 24 |
MULTIAGENT-INTERRUPTCurrent-Turn interrupt semantics | packages/subagent/subagent/src/continuation.ts:507-568 | For a live target, interrupt authorizes the exact parent or ancestor, requests keepInbox cancellation, and returns immediately while preserving the Activation, unclaimed messages, and descendants. An absent target is a no-op; only ancestor-caller liveness is checked before lookup. | 24 | 24 |
MULTIAGENT-INVARIANTSSubagent registry and lifecycle invariants | packages/subagent/subagent/src/invariant.ts:14-84 | The invariant companion checks provider add/remove consistency, no duplicate live run IDs, start/end pairing, and matching provider, child ID, and local flag. | 24 | 24 |
MULTIAGENT-JOB-CAPACITYPer-owner background Job capacity | packages/jobs/jobs-local/src/index.ts:126-150 | Job start counts active tasks by owner and rejects a new Job when the configured per-owner limit has been reached. | 24 | 24 |
MULTIAGENT-LIFECYCLEOne-shot and Activation-epoch lifecycle | packages/subagent/subagent/src/lifecycle.ts:76-217 | Listener failures are individually contained; one-shot runs and each continuable residency epoch emit paired start/end edges, with a new runId and epoch-only suffix on cold resume. | 24 | 24, 33 |
MULTIAGENT-LIST-CONCURRENCYListing cold-read concurrency limit | packages/subagent/subagent/src/list-children.ts:27-32 | Read-only cold inspection of local persistence is bounded by the constant four. | 24 | 24, 33 |
MULTIAGENT-LIST-SERVICEDurable child and descendant enumeration | packages/subagent/subagent/src/list-children.ts:117-409 | Listing merges live and persistent corpora, classifies through projections, and degrades per-child read/fold damage to diagnostics without consulting Activation/provider state. | 24 | 24 |
MULTIAGENT-LIST-TOOLlist_agents states and filtering | packages/subagent/tool-subagent-control/src/list-agents.ts:52-105 | Model statuses running/idle/ready derive from the live registry; ready means storage-only resumable, one-shot rows are filtered, and descendant depth constrains follow-up versus interrupt. | 24 | 24 |
MULTIAGENT-ONE-SHOT-DRIVERIn-process one-shot driver | packages/subagent/subagent-in-process-driver/src/index.ts:78-205 | During unpublished setup, the driver applies policy and composition and installs the descriptor-append hook; the event appends at the first entered pre-step after publication, followed by one prompt, idle wait, and idempotent handle disposal. | 24 | 24 |
MULTIAGENT-ONE-SHOT-RESULTOne-shot result suffix and stop reason | packages/subagent/subagent-in-process-driver/src/index.ts:207-233 | Results read only the child-owned suffix, preserve final output, and map the actual Turn end; a completed schema request without a capture is reclassified as error. | 24 | 24 |
MULTIAGENT-OUTPROCESS-SETTLEMENTExternal-run failure normalization and idempotent teardown | packages/subagent/subagent/src/out-of-process.ts:155-215 | Post-publication attempt rejection normalizes to aborted/error with partial output, and the subprocess run handle memoizes teardown and awaits actual exit. | 24 | 24 |
MULTIAGENT-PRESET-INHERITANCEChild joins the parent's exact preset generation | packages/preset/agent-presets/src/index.ts:290-325 | composeFrom binds to the parent's existing standing composition, sharing the same plugin instances, tools, and prompt sections without rereading the preset roster. | 24 | 24 |
MULTIAGENT-REPORT-DELIVERYReport authority and parent scheduling | packages/subagent/subagent/src/continuation.ts:570-693 | Only the exact resident child may report; the recipient resolves from durable direct-parent lineage, wakeup uses followup, quiet uses inject, and reporting does not change Activation lifetime. | 24 | 24 |
MULTIAGENT-REPORT-TOOLContinuable child-scoped report tool | packages/subagent/tool-subagent-report/src/index.ts:40-142 | The report tool and prompt install only in continuable in-process child scopes, send selected content only to the direct parent without ending the Turn, and register/clean up transactionally. | 24 | 24 |
MULTIAGENT-RUN-SETTLEMENTOne-shot background Job settlement | packages/subagent/subagent/src/run-settlement.ts:21-63 | Only completed emits final text, aborted maps to killed, and other reasons map to failed; disposal always runs and preserves both details when result and cleanup fail. | 24 | 24 |
MULTIAGENT-RUNTIME-DISPATCHValidation boundary before provider dispatch | packages/subagent/subagent/src/index.ts:404-495 | Before provider.start, the service validates provider presence, capabilities, depth, schema, and descriptor; startup rejection publishes no lifecycle, and prepareContinuable method presence is the continuation capability. | 24 | 24 |
MULTIAGENT-SDK-PROVIDERIndependent SDK-runtime provider | packages/subagent/subagent-dsh-sdk/src/index.ts:1-119 | The SDK provider starts a complete external runtime with its own composition, model, and tools, advertises no parent-enforced capabilities, and inherits no parent conversation. | 24 | 24 |
MULTIAGENT-SEAMSubagent capabilities and provider seam | packages/subagent/subagent/src/types.ts:75-323 | Providers explicitly declare four start capabilities, parent-history inheritance, one-shot start, and optional prepareContinuable; distinct children may overlap and the manager, not the provider, owns continuable lifecycles. | 24 | 24 |
MULTIAGENT-SETTLEMENT-NOTICEContinuable settlement notice | packages/subagent/subagent/src/continuation.ts:1382-1448 | Every child whose ID was announced attempts to send a stop summary and closing output independently of report; an absent parent is silently skipped, while delivery failure is logged and dropped without blocking teardown. | 24 | 24 |
MULTIAGENT-SPAWN-PROVIDERIn-process spawn provider | packages/subagent/subagent-spawn-in-process/src/index.ts:34-64 | Spawn supports all four capabilities, does not seed parent history, and implements both one-shot start and fresh continuable preparation. | 24 | 24 |
MULTIAGENT-STRUCTURED-OUTPUTTwo-phase commit for child structured output | packages/subagent/subagent-in-process-driver/src/structured.ts:49-141 | The child scope installs a schema tool, prompt, and guard; values stage first and commit only after the authoritative tool result and any Code Mode outer result succeed. | 24 | 24 |
MULTIAGENT-TOOL-CONCURRENCYDelegation-tool concurrency safety and parallel guidance | packages/subagent/tool-subagent/src/index.ts:366-465 | The tool declares concurrency safety because children do not mutate the parent Session, and continuable guidance encourages independent starts in one assistant message. | 24 | 24 |
MULTIAGENT-TOOL-CONFIGDelegation-tool configuration and default depth | packages/subagent/tool-subagent/src/index.ts:28-99 | A tool instance configures provider, toolName, backgroundMode, Agent options, persona/filter, and maxDepth; the loader defaults depth to 3 and permits provider-managed. | 24 | 24 |
MULTIAGENT-TOOL-ROUTESThree delegation-tool execution routes | packages/subagent/tool-subagent/src/index.ts:246-429 | run_in_background and backgroundMode select foreground one-shot, Job-backed one-shot, or continuable background execution with distinct return values and commit points. | 24 | 24 |
OBS-ANON-IDHarness-home anonymous UUID | packages/identity/anonymous-user-id/src/index.ts:1-100 | A random UUID is cached per process and persisted per home when possible; later processes reuse it after convergence, concurrent first launch has a narrow race, and an unwritable home is stable only for the current process. It is not host- or network-derived. | 28 | 28 |
OBS-DURABLE-FAILURELive agent errors and durable turn closure | packages/core/agent-loop/src/agent.ts:202-323 | The Agent emits a coordinate-bearing live error before rethrow, contains it at the driver, and still records structured turn/end in finally. | 28 | 28 |
OBS-FEEDBACK-DISCLOSUREFeedback recording and sharing disclosure | packages/feedback/command-feedback/src/index.ts:1-106 | Feedback is an unflushed log-only event that starts no model work, and its acknowledgement distinguishes four sharing states. | 28 | 28 |
OBS-HARD-OPTOUTFinal telemetry hard opt-out | apps/cli/src/profile-boot.ts:56-170 | Within apps/cli profile composition, any non-empty DSH_TELEMETRY_DISABLED value patches the fixed session-telemetry-otel row id after profile, home, and CLI overlays; another row id/backend is outside that patch. | 28 | 28 |
OBS-HISTORY-APIRaw-history pagination contract | packages/host/apiproxy/src/api/sessions.ts:264-283 | Pages align to message origins and include raw events plus host views; only the tail carries partial/projections, and reads never resume an Agent. | 28 | 28 |
OBS-HISTORY-CLIENTClient contiguous window and gap repair | packages/client/runtime/src/client/sessions/session.ts:376-723 | Load-older checks adjacent sequences, live data deduplicates by seq, and gaps buffer and repull the tail; discontinuities and transport exceptions log to console, while RPC error results silently preserve the window. | 28 | 28, 33 |
OBS-HOST-FAILUREHost live-failure frame | packages/host/apiproxy/src/api/events.ts:110-154 | Defines transient host/agent-error with session id/message but no turn position, and calls it the only outlet for that class of live failure. | 28 | 28 |
OBS-OPS-LOGSTelemetry-failure containment logs | packages/session/session-telemetry/src/coordinator.ts:112-267 | Backend shutdown and per-step capture failures only warn locally and do not affect the agent loop or application teardown. | 28 | 28 |
OBS-OTEL-PIPELINEOTel Logs pipeline and field mapping | packages/session/session-telemetry-otel/src/index.ts:197-232 | Builds LoggerProvider, BatchLogRecordProcessor, and OTLP log exporter, setting resource, two scopes, time, severity, body, and attributes. | 28 | 28 |
OBS-OTEL-SHUTDOWNBatch ownership and bounded shutdown | packages/session/session-telemetry-otel/src/index.ts:265-298 | The backend implements no flush; provider shutdown races an outer deadline that cannot cancel the SDK transport. | 28 | 28 |
OBS-PERSISTENCE-DIAGNOSTICBackground-persistence failure diagnostics | packages/session/session-persistence/src/coordinator.ts:1325-1350 | Background write failure warns that buffered events are retained, while explicit flush still propagates failure. | 28 | 28 |
OBS-PROJECTION-DEGRADEFail-soft projection degradation | packages/host/apiproxy/src/api-proxy.ts:847-898 | Projection helpers for session.list and subagent.history warn on failure and return undefined so responses continue without the projection block. | 28 | 28 |
OBS-QUERY-AUTHWorkspace authorization and lineage pruning | packages/session-query/tool-session-query/src/workspace-access.ts:54-203 | The caller comes from the Agent; self or exact cwd equality authorizes, observed headers are rechecked, and unauthorized subtrees become null markers. | 28 | 28 |
OBS-QUERY-CORPUSLive-preferred logical corpus | packages/session-query/session-query/src/corpus.ts:31-116 | Single-target exact loads bypass persistence for known live targets, unlike corpus-wide operations. Persisted exact targets list/inspect and check header compatibility only if still detached; a late live attachment wins directly. | 28 | 28 |
OBS-QUERY-CURRENT-BOUNDARYCurrent-step self-search boundary | packages/session-query/tool-session-query/src/operations.ts:116-166 | Current-session event search caps its range before the latest step/start and re-authorizes the returned header. | 28 | 28, 33 |
OBS-QUERY-DIAGNOSTICFull local session-query diagnostics | packages/session-query/tool-session-query/src/service-boundary.ts:116-171 | The service boundary best-effort renders complete printable stack/cause chains locally, uses a fixed placeholder for unprintable values, and contains cyclic causes or diagnostic failure. | 28 | 28 |
OBS-QUERY-SANITIZEModel-boundary error sanitization | packages/session-query/tool-session-query/src/service-boundary.ts:19-171 | Preserves caller cancellation, best-effort logs complete printable diagnostics locally with a fixed placeholder for unprintable values, and exposes only allowlisted stable codes/messages or a generic failure to the model. | 28 | 28 |
OBS-QUERY-SERVICEUnified session-query service | packages/session-query/session-query/src/index.ts:74-345 | Exact read/filter/trace behavior is backend-independent; full reads replay-validate and expose surfaces, lineage, event traces, and bounded raw windows. | 28 | 28 |
OBS-QUERY-TRACEEvent relationships and session lineage | packages/session-query/session-query/src/tracing.ts:21-213 | Computes replacement/source/derived links, current/shadowed/log-only classification, and ancestry/descendants with unresolved and cycle semantics. | 28 | 28 |
OBS-RAW-FRAMESRaw mux, transient projections, and remote frames | packages/host/apiproxy/src/api/events.ts:65-154 | The mux carries raw session events, projections are replayable transient pushes, and allowlisted remote frames apply no redaction. | 28 | 28 |
OBS-REQUEST-HEADERRequest-header assembly and logging | packages/core/agent-loop/src/agent.ts:407-470 | The Agent builds a header from effective model config, full system prompt, and tool catalog, then records initial, resume, or change snapshots. | 28 | 28 |
OBS-SESSION-HISTORY-PROJECTIONDirect projection path for ordinary session history | packages/host/apiproxy/src/api-proxy.ts:1555-1573 | The ordinary session.history cut directly calls the live snapshot or detached restore without the list/subagent helper catches. | 28 | 28 |
OBS-SESSION-LIST-PROJECTIONSession-list baseline invokes the fail-soft projection helper | packages/host/apiproxy/src/api-proxy.ts:1720-1764 | Both attached and cold session.list summary baselines inject their optional projection block through listProjectionsFor. | 28 | 28 |
OBS-SESSION-LOGSession event-log contract | packages/core/session/src/types.ts:152-309 | Defines structured turn outcomes and the append-only, lossless, contiguous raw-event source of truth with its major payloads. | 28 | 28 |
OBS-STATS-CONTRACTWhole-log stats contract | packages/session/session-stats/src/types.ts:15-45 | Defines turn, step, model/tool time, TTFT, and decode figures independent of client pagination. | 28 | 28 |
OBS-STATS-FOLDPure session-stats fold | packages/session/session-stats/src/projection.ts:1-183 | Implements per-event step, first-token, assistant, tool-pair, and turn-cleanup timing/counting with usage, skew, and prototype-key guards. | 28 | 28 |
OBS-STATS-UIStats UI projection precedence | packages/client/ui-conversation/src/client/chat/StatsLine.tsx:34-205 | The UI prefers whole-log sessionStats, falls back to a window fold only when absent, and displays timing, throughput, cache, and token figures. | 28 | 28 |
OBS-SUBAGENT-HISTORY-PROJECTIONSubagent history invokes the fail-soft projection helper | packages/host/apiproxy/src/api-proxy.ts:2668-2696 | Both live and detached subagent.history tails compute projections through the fail-soft helper. | 28 | 28 |
OBS-TELEMETRY-CONTRACTTelemetry record and sink contract | packages/session/session-telemetry/src/index.ts:47-130 | Defines ledger/ops channels, minimal attributes, complete bodies, synchronous non-blocking emit, and backend-owned batching and loss. | 28 | 28 |
OBS-TELEMETRY-HANDOFFHandoff cursor and adoption | packages/session/session-telemetry/src/coordinator.ts:32-169 | The module-scope cursor marks handed-off rather than delivered; live adoption, on-demand suffixes, and firstLiveSeq form a capture-side at-most-once high-water mark without constraining downstream retries or end-to-end delivery semantics. | 28 | 28 |
OBS-TELEMETRY-MODESFULL, FEEDBACK_ONLY, and DISABLED | packages/session/session-telemetry-otel/src/index.ts:43-252 | Defaults to disabled; uploading modes build the SDK and FULL captures live, while feedback-only releases an eligible suffix only on canonical feedback: after the cursor when one exists, otherwise from firstLiveSeq. | 28 | 28, 33 |
OBS-TELEMETRY-PROJECTIONCapture projection and copying | packages/session/session-telemetry/src/coordinator.ts:179-220 | Hands off only the first chunk per turn/step and deep-copies other event data through redaction to the backend. | 28 | 28 |
OBS-TELEMETRY-REDACTIONSynchronous redaction waterfall | packages/session/session-telemetry/src/index.ts:24-43 | The seam ships no rule; listeners compose synchronously, throws fail closed per record, and only the outbound copy changes. | 28 | 28 |
OBS-TELEMETRY-SEVERITYOps errors and severity mapping | packages/session/session-telemetry/src/coordinator.ts:228-302 | Agent errors retain only name/message; only error tool results, error turn ends, and agent-error map to error severity. | 28 | 28 |
OBS-TRAJECTORY-BUILDERTrajectory snapshot builder | packages/client/ui-trajectory/src/client/trajectory-snapshot-builder.ts:137-266 | Composes event nodes, requests, schemas, partials, running calls, compactions, and turn errors in raw-sequence order. | 28 | 28 |
OBS-TRAJECTORY-PROMPTPrompt snapshots and change detection | packages/client/ui-trajectory/src/client/trajectory-request-header-definition.ts:9-80 | Reconstructs config, full system text, and tools from request/header and classifies initial/system/tools changes. | 28 | 28 |
OPEN-API-RESERVED-SEATSUnimplemented cursor for session list | packages/host/apiproxy/src/api/sessions.ts:231-240 | The public API accepts an optional cursor, but v1 list returns every session and the cursor is only reserved; search likewise has no continuation cursor. | 34 | 34 |
OPEN-EVENT-RESUME-SEATUnimplemented since hook for the mux stream | packages/host/apiproxy/src/api/events.ts:46-56 | events.mux accepts a since map but ignores it in v1; the reconnect contract is reopen the stream plus refetch history. | 34 | 34 |
OPEN-HOST-VERSION-CONTRACTPublic contract for the Host version | packages/host/apiproxy/src/api/host.ts:35-53 | The HostApi.describe comment defines version as the host application version from apps/cli package.json. | 34 | 34 |
OPEN-HOST-VERSION-IMPLPlaceholder implementation of the Host version | packages/host/apiproxy/src/api-proxy.ts:2923-2938 | The implementation carries a TODO and returns the constant 0.0.1 instead of reading the CLI manifest. | 34 | 34 |
OPEN-LIMITATIONS-GATEPackage limitations-ledger gate | scripts/verify-package-readme-limitations.ts:1-93 | Scans every two-level package manifest, requires the canonical limitations heading and at least one top-level bullet in the sibling README, and permits omission only through an explicitly justified whitelist. | 34 | 34 |
OPEN-SETTINGS-REDACTION-CODESchema shapes missed by the settings secret walker | packages/settings/settings/src/redact.ts:50-109 | The walker recurses only through object, dict, and array; its default branch explicitly returns a secret reachable only through a union, intersection, or transform verbatim without recording the miss. | 34 | 34 |
PARALLEL-ABORTStop-replenish and started-call drain after abort | packages/core/agent-loop/src/tool-calls.ts:198-245 | The pool rechecks abort between replenishment and ordered commits; after cancellation it starts no new calls, drains in-flight work, commits started calls, and appends synthetic results for unstarted calls in the group. | 18 | 18 |
PARALLEL-ABORT-RESULTSynthetic call/result pair for unstarted calls | packages/core/agent-loop/src/tool-calls.ts:248-259 | A model call skipped by cancellation still receives tool/call plus a tool/result carrying structured ABORTED_BEFORE_DISPATCH, keeping replay pairing closed. | 18 | 18 |
PARALLEL-AGENT-STEPAgent-step decision after the complete call batch | packages/core/agent-loop/src/agent.ts:393-399 | The agent awaits the entire executeToolCalls batch before using the aggregated concluded flag to complete the step; otherwise it advances to another step. | 18 | 18 |
PARALLEL-CAP-CONFIGDynamic configuration boundary for the native parallel cap | packages/core/agent-loop/src/index.ts:300-345 | AgentLoop resolves maxParallelToolCalls with the shared default of 10 and reads committed Settings changes through a getter beginning with the next group. | 18 | 18 |
PARALLEL-CLASSIFIERFail-closed classification on the live definition | packages/core/tools/src/index.ts:1269-1285 | executionMode classifies through the currently visible tool definition; missing, unknown, hidden, throwing, or non-exact-true classifiers all return exclusive. | 18 | 18 |
PARALLEL-CODE-BINDINGStaged dispatch and durable events for Code bindings | packages/core/tools/src/code-mode.ts:464-594 | Each nested binding gets a deterministic subCallId and runs through the same staged ToolRuntime, appending code-dispatch-start first; ordered commit defers contexts, returns the program value, and asynchronously shapes and appends code-dispatch. | 18 | 18 |
PARALLEL-CODE-DRAINCancellation, commit, and log drain in Code Mode | packages/core/tools/src/code-mode.ts:448-629 | After the outer run settles it aborts; the run-scoped drain abandons queued-unstarted entries, awaits the live pool and ordered commit lane, and empties logWork; commit finalizes in submission order, forwards contexts, then starts non-blocking settle-log side work. | 18 | 18 |
PARALLEL-CODE-DRIVERIndependent per-run scheduler for Code Mode | packages/core/tools/src/code-mode.ts:328-457 | Each run_code creates its own abort controller, pending and commit queues, in-flight set, and single driver lane; only dispatch/body overlaps, an exclusive barrier lasts through ordered commit, and settlement/log work drains before the run ends. | 18 | 18 |
PARALLEL-DISPATCHConcurrent around-dispatch and tool body stage | packages/core/tools/src/index.ts:1527-1599 | Dispatch fuses caller and wrapper signals, awaits any started body to quiescence, invokes it through tools/execute wrappers, and merges deferred contexts into the normalized result. | 18 | 18, 33 |
PARALLEL-DURABLE-PAIRINGDurable sequence pairing for tool calls and results | packages/core/agent-loop/src/tool-calls.ts:164-288 | Each started call appends tool/call with the original argument string before prepare and retains its sequence; tool/result cites that exact call through sourceEventSeqs. | 18 | 18, 33 |
PARALLEL-FINALIZEOrdered post, finalization, and result notification | packages/core/tools/src/index.ts:1601-1675 | Finalize awaits post-execute, applies definition-owned content finalization, materializes the final snapshot, and synchronously dispatches tools/result; promises returned by observers are error-observed but not awaited. | 18 | 18 |
PARALLEL-GROUPINGGroup progression from live classification | packages/core/agent-loop/src/tool-calls.ts:82-100 | In model order, the scheduler reads the next call's live execution mode: parallel takes the remaining suffix, exclusive forms a singleton, and the consumed cursor advances only after the group finishes. | 18 | 18, 33 |
PARALLEL-LOOP-ENTRYTool scheduling entry after assistant-message commit | packages/core/agent-loop/src/agent.ts:373-399 | The loop appends the complete assistant/message before extracting every tool-call block and invoking executeToolCalls; a step completes directly when no calls exist. | 18 | 18 |
PARALLEL-MODE-CONTRACTConcurrency safety is strict opt-in host metadata | packages/core/tools/src/index.ts:257-269 | ToolDefinition.isConcurrencySafe is a pure synchronous classifier; only true opts in and the metadata is not sent to the model. Authors must avoid parent-owned mutation and make shared-state races commute or fail closed. | 18 | 18 |
PARALLEL-PIPELINE-SPLITScheduler-only staged ToolRuntime view | packages/core/tools/src/index.ts:426-466 | A private symbol-keyed scheduler view splits the full pipeline into prepare, dispatch, finalize, and finish so policy stays ordered while only bodies overlap; ordinary callers still use execute. | 18 | 18 |
PARALLEL-PREPAREOrdered prepare, approval, and guards | packages/core/tools/src/index.ts:1453-1507 | Prepare creates the execution, handles pre-dispatch cancellation, awaits pre-execute, approval, and monotonic guards, then returns dispatch, post-result, or final-result. | 18 | 18, 33 |
PARALLEL-RESULT-OBSERVERNon-awaited tools/result observers | packages/core/tools/src/index.ts:1656-1675 | Result observers are invoked synchronously after the final snapshot; returned promises receive only a rejection logger and do not become scheduler-awaited barriers. | 18 | 18 |
PARALLEL-ROLLING-POOLBounded rolling pool and ordered commit cursor | packages/core/agent-loop/src/tool-calls.ts:121-245 | runGroup overlaps dispatch only and replenishes up to maxParallelToolCalls; settled slots are finalized, appended, and have context accepted only through a contiguous model-order commit cursor. | 18 | 18, 33 |
PARALLEL-SCHEDULER-FAILUREQuiescence boundary for internal scheduler failures | packages/core/agent-loop/src/tool-calls.ts:215-245 | An internal failure stops new dispatch, Promise.allSettled drains every started dispatch, and the first scheduler error is rethrown; this path does not fabricate unattributable tool results. | 18 | 18, 33 |
PARALLEL-TYPED-CLASSIFIERArgument-validating classifier wrapper in defineTool | packages/core/tools/src/schema.ts:545-615 | defineTool validates with the same parameter schema before invoking the typed isConcurrencySafe callback; invalid arguments classify as false. | 18 | 18 |
PERSIST-ATTACH-DECODE-IMPLImplementation difference between full decode and header probe | packages/attachment/attachment-local/src/image.ts:21-65 | probeImage reads only Sharp metadata, while detectImage checks the pixel limit and calls image.raw().toBuffer() for a full decode. | 11 | 11 |
PERSIST-ATTACH-DECODE-SOURCEActual Attachment admission and read branches | packages/attachment/attachment-local/src/store.ts:46-230 | Admission goes through detectImage, while read verifies the digest before calling probeImage and comparing media type, bytes, width, and height. | 11 | 11 |
PERSIST-ATTACH-SEAMAttachment durability seam | packages/attachment/attachment/src/index.ts:28-59 | AttachmentStore exposes immutable binary references; saveImage must validate and durably commit before the owning Session event is appended, and readImage must verify bytes against the reference. | 11 | 11 |
PERSIST-ATTACH-STOREContent-addressed local Attachment publication | packages/attachment/attachment-local/src/store.ts:19-194 | The local store addresses by SHA-256, uses private staging, a synced file, exclusive hard-link publication, and directory fsync, and re-reads and hashes an existing object during deduplication races. | 11 | 11 |
PERSIST-BACKEND-CONTRACTSession persistence backend contract | packages/session/session-persistence/src/coordinator.ts:117-214 | A backend supplies prefix reads, revisions, optional suffix seeking, atomic first materialization, durable append, repair, listing, and close while the coordinator owns the rest of the protocol. | 11 | 11 |
PERSIST-COORDINATORPersistenceCoordinator state and commit order | packages/session/session-persistence/src/coordinator.ts:575-710 | The coordinator keys state, promise chains, and preparations by Session ID, lifecycle state by live Session, and advances materialized state, cursor, and cache invalidation only after durable appendBatch completion. | 11 | 11 |
PERSIST-DOMAIN-CLOSE-GAPOne-way Domain close failure state | packages/storage/storage-domain/src/domain.ts:148-275 | Close first sets disposing and drains the chain; if unit.close rejects, closed and onClosed are never reached and the rejected disposal is cached, leaving writes rejected, reads available, and the name unreopenable. | 11 | 11 |
PERSIST-DOMAIN-ORDERDomain durability-first write ordering | packages/storage/storage-domain/src/domain.ts:135-269 | Domain serializes writes through one promise chain, updates memory only after backend success, then emits a contained changed notification; failed writes leave memory untouched. | 11 | 11 |
PERSIST-JSON-ATOMICJSON KV atomic replacement protocol | packages/storage/storage-json/src/atomic.ts:1-52 | The writer creates an owner-only same-directory temp, writes and fsyncs it, renames it over the target, then fsyncs the parent on POSIX; failures remove the temp and propagate. | 11 | 11 |
PERSIST-JSON-ROOT-GAPJSON Storage relative-root gap | packages/storage/storage-json/src/index.ts:21-66 | Configuration requires an explicit root, but the schema accepts a relative string, the backend stores it verbatim, and later openUnit calls mkdir and join, so a cwd change can redirect newly opened units. | 11 | 11 |
PERSIST-JSON-UNIT-ROLLBACKJSON KV in-memory rollback after failure | packages/storage/storage-json/src/unit.ts:47-140 | Each KV mutation changes unit memory before publishing the whole file and restores old memory on any publish rejection, even though publication can reject during the directory fsync after rename. | 11 | 11 |
PERSIST-JSONL-FORMATJSONL header, path encoding, and chunk packing | packages/session/session-persistence-jsonl/src/format.ts:28-223 | The format starts with a dedicated Session header, injectively escapes unvalidated branded IDs into safe path segments, and can losslessly pack delta runs into storage rows. | 11 | 11 |
PERSIST-JSONL-REPAIRJSONL reads, publication, rollback, and repair | packages/session/session-persistence-jsonl/src/index.ts:306-701 | The reader returns a byte-offset torn marker plus recoverable complete events; first write uses a synced temp and no-clobber publication, failed append restores length, and repair truncates and syncs before normally appending recovered events and closers. | 11 | 11 |
PERSIST-JSONL-ROOTJSONL root and sequential-medium boundary | packages/session/session-persistence-jsonl/src/index.ts:115-200 | The JSONL constructor resolves its root once, normalizes programmatic-construction defaults, returns absolute artifact paths, and intentionally omits seek-capable loadStoredFrom. | 11 | 11 |
PERSIST-JSONL-SCANTail classification of complete JSONL rows | packages/session/session-persistence-jsonl/src/format.ts:272-388 | The scanner checks JSON, storage shape, and sequence for complete newline-terminated records; if no later turn/end follows a defect, finish returns the pre-defect committedBytes, placing even a complete bad row in the truncatable suffix. | 11 | 11 |
PERSIST-READ-FACESPrepare, load, inspect, and readFrom roles | packages/session/session-persistence/src/coordinator.ts:712-970 | Prepare reserves the exact unpublished Session, load commits cold recovery, inspect borrows an immutable view without committing repair, and readFrom bypasses the preparation cache while remaining non-mutating. | 11 | 11 |
PERSIST-SEAM-APISessionPersistence authority and read surfaces | packages/session/session-persistence/src/index.ts:1-240 | The Service Definition makes SessionHeader plus contiguous SessionEvents durable facts and distinguishes locate, create, append, prepare, load, inspect, readFrom, list, and listSnapshots. | 11 | 11 |
PERSIST-SESSION-SQLITE-CONSTRUCTORSession SQLite direct-constructor default leak | packages/session/session-persistence-sqlite/src/index.ts:69-146 | The schema defaults journalMode to wal, but the constructor normalizes only cache and batching defaults and passes the still-optional journalMode onward via a Required cast. | 11 | 11 |
PERSIST-SQLITE-REPAIRSQLite append and repair transactions | packages/session/session-persistence-sqlite/src/index.ts:278-338 | First materialization and batch append occur in one transaction; repair deletes the torn suffix, inserts synthetic closers, and advances the revision in another single transaction. | 11 | 11 |
PERSIST-SQLITE-SCANSQLite torn-suffix classification | packages/session/session-persistence-sqlite/src/schema.ts:220-269 | scanRows treats bad JSON or a sequence gap through the last valid turn/end as committed corruption and marks only a later first defect as a discardable torn tail. | 11 | 11 |
PERSIST-SQLITE-SCHEMAStrict Session SQLite schema and refusal-based versioning | packages/session/session-persistence-sqlite/src/schema.ts:15-171 | The backend uses schema version 15, an application id, store identity, and STRICT sessions and events tables; unknown, foreign, or nonempty unversioned databases are refused rather than migrated. | 11 | 11 |
PERSIST-SQLITE-SUFFIXTrue SQLite suffix seeking | packages/session/session-persistence-sqlite/src/index.ts:220-237 | loadStoredFrom directly queries by session_id and seq >= fromSeq and scans only selected rows; a torn tail shortens the returned view without repair. | 11 | 11 |
PERSIST-STORAGE-REGISTRYNon-owning Storage registry unregistration | packages/storage/storage/src/registry.ts:14-36 | The registry disposer removes a name only while identity still matches and explicitly does not close the backend; medium lifecycle belongs to the provider plugin. | 11 | 11 |
PERSIST-STORAGE-SEAMGeneric Storage backend seam | packages/storage/storage/src/backend.ts:12-104 | StorageBackend owns one medium and its lifecycle; KvUnit guarantees only per-call atomic durability while leaving opaque-JSON schemas and concurrent write ordering to callers. | 11 | 11 |
PERSIST-STORAGE-SQLITE-CONSTRUCTORGeneric SQLite Storage constructor default leak | packages/storage/storage-sqlite/src/index.ts:23-72 | The config schema promises a WAL default, but the public constructor force-casts the optional journalMode and passes it directly to asynchronous openDatabase. | 11 | 11 |
PERSIST-STORAGE-SQLITE-OPENGeneric SQLite open path dereferences journalMode | packages/storage/storage-sqlite/src/schema.ts:52-80 | After resolving the database path, openDatabase enters configureDatabase, which calls journalMode.toUpperCase() without a fallback. | 11 | 11 |
PERSIST-STORAGE-SQLITE-SCHEMAGeneric SQLite Storage physical schema | packages/storage/storage-sqlite/src/schema.ts:15-119 | The generic backend uses physical user_version 1, STRICT units and unit_globals tables, and validated generated physical names for unit tables; other stamped versions are refused rather than migrated. | 11 | 11 |
PERSIST-STORAGE-SQLITE-UNITGeneric SQLite KV unit primitives | packages/storage/storage-sqlite/src/unit.ts:23-147 | Each declared table precompiles upsert, delete, and select statements with a separate global-slot upsert; each KV mutation is one synchronous SQLite statement settled through the Promise contract. | 11 | 11 |
PERSIST-WORKSPACE-BOOTSTRAPHeader-only Workspace bootstrap | packages/workspace/workspace/src/index.ts:426-508 | Bootstrap groups headers by canonical cwd, reuses partial records, writes Workspace rows and order, and writes the initialized=true marker last. | 11 | 11 |
PERSIST-WORKSPACE-INITWorkspace initialization order | packages/workspace/workspace/src/index.ts:118-140 | Initialization opens the Domain, recovers a pending mutation, and validates state; an uninitialized registry lists headers, fully replaces the index, and bootstraps, while an initialized startup fully replaces the header index. | 11 | 11 |
PERSIST-WORKSPACE-INVARIANTSCross-record Workspace invariants | packages/workspace/workspace/src/index.ts:510-551 | Startup validation rejects repeated order IDs, missing or orphan rows, duplicate canonical paths, and a Session accounted by multiple Workspaces. | 11 | 11 |
PERSIST-WORKSPACE-MUTATIONTwo-write Workspace mutation and recovery | packages/workspace/workspace/src/index.ts:285-424 | Create and delete write a durable pending marker before record and order can diverge, include compensation paths, and startup completes only the named mutation rather than guessing other divergence. | 11 | 11 |
PERSIST-WORKSPACE-REFRESHWorkspace header-index refresh paths | packages/workspace/workspace/src/index.ts:561-630 | Startup replacement clears all three header and path maps; an uncached runtime lookup only incrementally indexes list results, while a cached hit returns directly and no public full-refresh path exists. | 11 | 11 |
PERSIST-WORKSPACE-SCHEMAWorkspace Domain schema | packages/workspace/workspace/src/spec.ts:13-75 | Workspace domain version 2 consists of one workspaces table and global state; runtime shapes for ids, path, title, Session ids, and timestamps are largely plain strings. | 11 | 11 |
PERSIST-WORKSPACE-TITLE-GAPStale Workspace create-time title branch | packages/workspace/workspace/src/index.ts:142-163 | Public create(path, title?) still accepts an optional raw title, but a source TODO says its last production caller was deleted and calls for removing the parameter. | 11 | 11 |
PERSIST-WORKSPACE-TITLE-SETTERWorkspace title setter lacks semantic validation | packages/workspace/workspace/src/entity.ts:101-107 | setTitle accepts any string and writes it directly through the record mutation without nonblank, trimming, or length checks. | 11 | 11 |
PERSIST-WRITE-BEHINDFailure-safe Session write-behind queue | packages/session/session-persistence/src/write-behind.ts:19-157 | The queue clones events, uses a fixed deadline, shares concurrent flush barriers, restores failed batches ahead of newer events, and uses explicit flush to retry and drain to quiescence. | 11 | 11 |
PLANSTATE-GOAL-APIGoal Host API mutation contract | packages/host/apiproxy/src/api/goals.ts:25-53 | The public façade exposes only create, edit, pause, resume, complete, and clear; reads use the goal projection and mutations return only ref or cleared acknowledgements. | 15 | 15 |
PLANSTATE-GOAL-API-ERRORSGoal service resolution and wire error mapping | packages/host/apiproxy/src/api-proxy.ts:1787-1825 | The Host resolves the Session-specific GoalService through the Agent preset and maps GoalError to wire internal with the stable domain code under details.goalCode. | 15 | 15 |
PLANSTATE-GOAL-API-ROUTINGHost API Agent cold resume and subagent fence | packages/api/remotes/src/agent-lookup.ts:113-210 | The resolver reuses live Agents, coalesces cold resume per identity, and applies an agent-busy fence to live-owned or persisted subagent identities. | 15 | 15 |
PLANSTATE-GOAL-AUTHORITYExecution authority for model Goal tools | packages/goal/tool-goal/src/authority.ts:29-108 | Requires an exact live, running, current-initiator Agent in an open Turn; direct-human authority needs a root user source, while autonomous terminal actions require the matching current Goal round. | 15 | 15 |
PLANSTATE-GOAL-COMMAND/goal command grammar and state operations | packages/goal/command-goal/src/index.ts:14-170 | /goal provides show, create, edit, pause, resume, and clear by calling GoalService directly and returning text; it exposes no complete, block, or per-command round cap. | 15 | 15 |
PLANSTATE-GOAL-COMMAND-UIGoal command-input projection | packages/client/ui-goal/src/client/goal-command-input.ts:26-70 | The Web builds a separate visible command-input Chat Node from durable /goal command/run events without creating a model message. | 15 | 15 |
PLANSTATE-GOAL-COMMAND-VIEWGoal command-input bubble renderer | packages/client/ui-goal/src/client/GoalCommandInputView.tsx:11-30 | The dedicated renderer displays /goal input as a right-aligned bubble without ordinary message actions. | 15 | 15 |
PLANSTATE-GOAL-COMMITGoal CAS, cache, and commit ordering | packages/goal/goal/src/index.ts:392-577 | Requires the exact live Agent and current GoalRef; cold caches start disarmed, and goal/changed emits only after goal/change append and cache synchronization. | 15 | 15, 33 |
PLANSTATE-GOAL-DRIVERSame-session Goal round driver | packages/goal/goal-round-driver/src/index.ts:75-445 | Full control flow for one attempt and coalesced run per Agent, checkpoint barriers, competing input, double reservation validation, error disarm/block/pause, and teardown quiescence. | 15 | 15 |
PLANSTATE-GOAL-FOLDStrict Goal state fold | packages/goal/goal/src/fold.ts:271-349 | The strict fold validates create, transitions, and clear, and advances roundsStarted only for the sequential goal-sourced user message matching the current active revision. | 15 | 15 |
PLANSTATE-GOAL-PROJECTIONLightweight last-wins Goal projection | packages/goal/goal/src/index.ts:83-113 | The browser projection handles only goal/change, maps clear to null, and preserves the same reference for other events, so admitted goal-round messages do not refresh roundsStarted. | 15 | 15 |
PLANSTATE-GOAL-SERVICEGoalService lifecycle mutations | packages/goal/goal/src/index.ts:216-390 | Defines phase, revision, capacity, and activation rules for get, disarm, create, edit, pause, resume, complete, block, and clear. | 15 | 15 |
PLANSTATE-GOAL-TOOLSget_goal, create_goal, and update_goal | packages/goal/tool-goal/src/index.ts:186-338 | Defines the three model tools, direct-human and action authority, the blocked-round threshold, and autonomous terminal wrap-up through deferContext. | 15 | 15 |
PLANSTATE-GOAL-TYPESGoal identity, revision, phase, and projection types | packages/goal/goal/src/types.ts:15-110 | GoalRef is the revision CAS identity; four durable phases are separate from process-local activation, which the browser projection deliberately omits. | 15 | 15 |
PLANSTATE-GOAL-UIGoalBar phase actions and single-flight | packages/client/ui-goal/src/client/GoalBar.tsx:34-186 | GoalBar hides absent and complete goals, offers phase-dependent pause or resume plus edit and clear, fences duplicate clicks synchronously, and locally suppresses a cleared id. | 15 | 15 |
PLANSTATE-GOAL-UI-REMOTEGoalBar Remote mutation wiring | packages/client/ui-goal/src/client/index.ts:40-99 | Every UI verb reads the latest CAS ref from the current goal projection at call time before invoking edit, pause, resume, or clear Remote. | 15 | 15 |
PLANSTATE-PLAN-ASSEMBLYPlan pre-Step and prompt assembly | packages/plan/plan-mode/src/index.ts:197-233 | Only an accepted pre-Step commits pending state; append failure retains it without blocking the Step, and plan:policy reads the pending target first. | 15 | 15 |
PLANSTATE-PLAN-BOUNDARYPlan selection commit boundary and narration | packages/plan/plan-mode/src/index.ts:396-473 | Idle selections commit immediately; open-Turn selections wait for an accepted pre-Step, survive append failure, and narrate only when the last request header saw the opposite mode. | 15 | 15, 33 |
PLANSTATE-PLAN-CONTROLSPlan command and reviewed exit tool | packages/plan/plan-mode/src/index.ts:268-393 | Defines /plan, exact lowercase off, optional steering text, and exit_plan_mode Markdown, review, dismissal, and delayed-exit rules. | 15 | 15 |
PLANSTATE-PLAN-PROJECTIONPlan double-event projection | packages/plan/plan-mode/src/index.ts:235-266 | The plan projection folds command/run into a wanted target and plan/mode into committed active state, exposing active and pending. | 15 | 15 |
PLANSTATE-PLAN-REVIEW-AUTHHuman-interaction ownership for Plan review | packages/interaction/user-questions/src/index.ts:80-139 | Agent-bound questions require the exact live runtime root; live-owned children are rejected, while a lineage Session later resumed as a root may ask. | 15 | 15 |
PLANSTATE-PLAN-REVIEW-UIDedicated Plan review panel | packages/client/ui-user-questions/src/client/PlanReviewPanel.tsx:36-99 | The dedicated panel renders the Markdown plan, approve, decline, and discuss/cancel actions with a one-shot submission latch. | 15 | 15 |
PLANSTATE-PLAN-STATELogged Plan state and process-local pending intent | packages/plan/plan-mode/src/index.ts:46-195 | plan/mode is a log-only, non-Surface, last-write-wins boolean event, while the controller separately keeps pending selections in a Session-keyed WeakMap. | 15 | 15 |
PLANSTATE-PLAN-UIPlan Web status chip | packages/client/ui-plan/src/client/PlanModeControl.tsx:15-68 | The Web computes the effective target from the plan projection, renders the chip only for Plan, and exits through /plan off. | 15 | 15 |
PLANSTATE-TODO-INVARIANTCoverage boundary of the Todo durable invariant | packages/todo/tool-todo/src/invariant.ts:15-57 | The companion validates the array, trimmed unique content, and status enum, deliberately omits active-count policy, and does not compare item own keys. | 15 | 15, 33 |
PLANSTATE-TODO-ROWHistorical todo_write tool row | packages/client/ui-tool/src/client/tool/toolviews/todo-row.tsx:1-97 | The tool row derives done/total, first-active, and extra-active summaries from raw call arguments with fallback for malformed or rejected input. | 15 | 15 |
PLANSTATE-TODO-TOOLTodo whole-value tool and projection | packages/todo/tool-todo/src/index.ts:28-225 | todo_write requires the complete list, normalizes content, validates duplicates, statuses, and parallel-active policy, appends todo/write, and registers a last-wins projection cleared at turn/start. | 15 | 15 |
PLANSTATE-TODO-UITodoPanel current-list view | packages/client/ui-conversation/src/client/skeleton/TodoPanel.tsx:81-153 | The Web renders a collapsible list, status counts, and all items from the todos projection and hides an empty list. | 15 | 15 |
PLANSTATE-TOOL-EXCLUSIVEFail-closed tool concurrency classification | packages/core/tools/src/index.ts:1269-1285 | Only an exact true from isConcurrencySafe yields parallel execution; omission, exceptions, hidden, unknown, or invalid definitions are exclusive. | 15 | 15 |
PLANSTATE-TOOL-SCHEDULERExclusive tool ordering barrier | packages/core/agent-loop/src/tool-calls.ts:82-119 | The Agent loop classifies calls in model order; an exclusive call forms a one-call group that is awaited, while a parallel group must drain before an exclusive reclassification. | 15 | 15 |
PROFILE-COMPOSEEffective profile patch order | apps/cli/src/profile-boot.ts:121-170 | The application order for bundle, profile, home, CLI, launcher preset, and telemetry overlays, including construction of the row index. | 04 | 04, 33 |
PROFILE-LIVELive recomposition of user patches | apps/cli/src/profile-boot.ts:227-299 | Each generation rereads both user layers, clones patches to prevent reference contamination, and mounts a config-only HMR instance when needed. | 04 | 04, 33 |
PROFILE-LOADBundle resolution and isomorphic composition | packages/boot/app-boot/src/profile.ts:357-420 | Bundle declarations resolve in manifest order, missing dsh.bundle metadata fails, and the same applyEntryPatches operation used by boot composes over an empty root. | 04 | 04 |
PROFILE-MODULE-FALLBACKFlat module fallback for profiles | packages/boot/app-boot/src/profile.ts:204-255 | A breadth-first traversal of dependencies and peerDependencies creates a profiles/node_modules symlink closure from installation locations. | 04 | 04 |
PROFILE-ROOTEmpty root and profile preparation | apps/cli/src/profile-boot.ts:59-103 | Every launch rewrites an empty cordis.yml; patches define the entire real tree and prevent Loader write-back from baking in composed rows. | 04 | 04 |
PROFILE-TEMPLATESProfile directories and built-in templates | packages/boot/app-boot/src/profile.ts:104-168 | Profile-name validation, web/headless bundle templates, the default base bundle, and idempotent initialization of three files. | 04 | 04 |
PROJ-AUTHORITY-LAYERSProjection baselines and non-authoritative checkpoint rows | packages/session/session-projection/src/index.ts:88-118 | ProjectionSnapshot defines one shared asOfSeq cut, while ProjectionCheckpointRow records version, watermark, and internal state and explicitly declares the row a fold shortcut rather than an authority. | 12 | 12, 33 |
PROJ-CACHE-DETACH-WINDOWThe log-before-cache barrier for live checkpoints and its detach exception | packages/session/session-projection-cache/src/index.ts:132-230 | A normal write flushes a still-live Session after taking the registry cut and before putting the cache, while the disposed listener starts flushSoft asynchronously after the live-store check can fail and skip the explicit flush; the source notes residual overreach is left for cold-read detection. | 12 | 12 |
PROJ-CACHE-INTEGRATIONShipped list and detached-History projection paths | packages/host/apiproxy/src/api-proxy.ts:841-877 | Session list uses a registry snapshot for live rows and only cachedSnapshot for cold rows, while detached History restores the complete inspected event log from zero with an empty checkpoint. | 12 | 12 |
PROJ-CACHE-LADDERThe projection cache cold tail-replay ladder | packages/session/session-projection-cache/src/index.ts:154-197 | coldSnapshot reads checkpoints, computes a restore floor, and tail-folds persistence.readFrom; identity or watermark overreach falls back to a full read, followed by a fail-soft refreshed write-back. | 12 | 12, 33 |
PROJ-CACHE-SCHEMAVersioned rows, log-lifecycle identity, and the cache domain | packages/session/session-projection-cache/src/spec.ts:16-69 | Each checkpoint row contains ver, seq, and a JSON value; a complete Session record binds rows to createdAt and cwd identity, and the version-3 session_projcache domain stores derived state that can be discarded. | 12 | 12 |
PROJ-CLIENT-EQUAL-SEQEqual-seq rejection and truncation only beyond lastSeq | packages/client/runtime/src/client/sessions/projection-store.ts:128-177 | apply returns immediately when seq is lower than or equal to the resident row, seed reuses that rule, and generation truncation removes only rows whose seq is greater than lastSeq, so a new-generation value at the same watermark cannot replace the old one. | 12 | 12 |
PROJ-CLIENT-MANAGERConvergence through list baselines, pre-instantiation pushes, and subscribed repair | packages/client/runtime/src/client/sessions/manager.ts:438-735 | The manager replays mutations that arrived during a list pull, applies only carried keys from partial list projections, stores session/projection frames before Session instantiation, and uses subscribed to truncate phantom rows and reset generation state. | 12 | 12 |
PROJ-CLIENT-STOREHigher-seq-wins, full seeding, and generation truncation in the client projection store | packages/client/runtime/src/client/sessions/projection-store.ts:67-177 | The value store rejects lower or equal seq for both baselines and pushes; a full seed clears old keys omitted at the cut, while subscribed truncation removes only rows beyond the Host's durable lastSeq. | 12 | 12 |
PROJ-COLD-RESUMESetup, publication, and rollback for an exact prepared Session | packages/core/agent-loop/src/index.ts:624-710 | Agent resume requires persistence.prepare under fused cancellation, runs setup before publishing the exact preparation, disposes on failure, releases the reservation in finally, and contains no automatic fresh-create branch after resume failure. | 12 | 12 |
PROJ-HISTORY-FAILUREOrdinary History maps projection failures to an internal error | packages/host/apiproxy/src/api-proxy.ts:2242-2269 | History obtains its source, composition, projection cut, and page inside one try; every error except SessionNotFound becomes history unavailable/internal, with no branch that degrades by omitting the projection block as list and subagent History do. | 12 | 12 |
PROJ-HOST-CARRIERProjection change frames and Host-owned projection units | packages/host/apiproxy/src/api-proxy.ts:1273-1323 | The API Proxy broadcasts registry changes as session/projection frames and registers sessionListMetadata plus per-boot imageLimits; imageLimits always returns the same state from apply and therefore travels only through baselines. | 12 | 12 |
PROJ-HOST-COLD-OPENCold History uses inspection without acquiring Agent ownership | packages/host/apiproxy/src/api-proxy.ts:1525-1573 | History reads an attached Session when present and otherwise uses servable inspection; after all awaits it synchronously takes events and the projection cut without resuming or publishing an Agent. | 12 | 12 |
PROJ-IMAGE-LIMITSThe per-boot, baseline-only imageLimits projection | packages/host/apiproxy/src/api-proxy.ts:1302-1323 | The imageLimits unit keeps null state, always returns the same reference from apply, and reads the current attachments-service configuration in view, so it emits no change frame within a boot and travels only through baselines. | 12 | 12 |
PROJ-REGISTRY-DRIVEPer-Session projection cells, synchronous snapshots, and eager drive | packages/session/session-projection/src/index.ts:130-425 | The registry holds state and observedSeq in WeakMap cells and drives every unit from one subscription; missing cells lazily fold the in-memory log, Object.is gates notifications, and observedSeq advances for every event. | 12 | 12 |
PROJ-REGISTRY-REGISTRATIONReference counting and version conflicts for registrations sharing one key | packages/session/session-projection/src/index.ts:137-220 | Registrants with the same key and stateVersion share the first unit and increment refs, while a different version is rejected; the final disposer removes the registration and all cells, and runtime cannot compare function semantics. | 12 | 12 |
PROJ-REGISTRY-RESTOREAnchored restore floors and safe tail folding | packages/session/session-projection/src/index.ts:284-385 | restoreFloor selects one event below the lowest usable watermark, while restore accepts only version-matching rows within the provable log endpoint and requires a reread from seq zero for an unsafe partial restore. | 12 | 12 |
PROMPT-ASSEMBLY-PIPELINEExact evaluation and waterfall order of each assembly | packages/core/system-prompt/src/index.ts:467-541 | Assembly merges scope, variables, and named entries; snapshots and evaluates tool providers; orders and evaluates sections and contexts; canonicalizes tools; then runs the waterfall before reapplying complete and suppression constraints. | 07 | 07, 33 |
PROMPT-CONTEXT-AGENT-INSTRUCTIONSWorkspace instructions enter through a pre-step message | packages/context/agent-instructions/src/index.ts:322-347 | Agent instructions compute after downstream decisions, reconcile pending projections, and insert a new message after the claimed batch and before driver runtime context. | 07 | 07 |
PROMPT-CONTEXT-TIMEPer-step sourced message for time context | packages/context/time-context/src/index.ts:170-208 | Time context resolves timezone and refresh rules after the prepended listener's next returns, then appends a user message with a plugin snapshot source. | 07 | 07 |
PROMPT-CONTEXT-TMUXFirst-step and change gates for tmux context | packages/context/tmux-context/src/index.ts:208-246 | The tmux listener queries only on step one when shell exists, refresh is due, and state changed, then prepends a sourced snapshot to the decision messages. | 07 | 07 |
PROMPT-DEEPSEEK-WIREStable-prefix layout of the DeepSeek wire request | packages/llm/llm-deepseek/src/serialize.ts:143-186 | The adapter places system first, then serializes durable history, always streams, and requests usage; this path writes no explicit cache-control directive. | 07 | 07 |
PROMPT-HEADER-CANONICALRequest-header canonicalization, comparison, and folding | packages/core/session/src/request-header.ts:14-70 | Empty system and tool fields canonicalize to absence; equality covers config, adapter defaults, system, and ordered schemas; offline folding takes the latest full snapshot. | 07 | 07 |
PROMPT-REGISTRY-CONTRACTFive reversible prompt registrations and default sections | packages/core/system-prompt/src/index.ts:337-455 | SystemPrompt effect-registers scoped sections, contexts, runtime-context suppressors, tool providers, and variables; the default identity and persona are ordinary sections too. | 07 | 07 |
PROMPT-RETRY-BOUNDARYProvider retries do not reassemble the prompt within a step | packages/core/agent-loop/src/agent.ts:332-370 | The system prompt is rendered from the assembly outside the retry loop; provider retries rebuild the request and derive messages while reusing that step's assembly and tool schemas. | 07 | 07, 08 |
PROMPT-STEP-BOUNDARYPrompt assembly boundary for every proposed step | packages/core/agent-loop/src/agent.ts:225-243 | PreStep claims input, assembles the prompt, renders runtime context, proposes its message, and enters the pre-step waterfall; rejection or an empty initial step can still avoid opening a step after assembly. | 07 | 07 |
PROMPT-STRICT-RENDERStrict section and context interpolation | packages/core/system-prompt/src/index.ts:204-294 | Rendering drops empty entries and strictly validates variable names, ownership, and values; it blocks prototype lookup and recursive interpolation and fails on malformed references. | 07 | 07 |
PROMPT-TOOL-ORDERDeterministic tool-schema ordering rules | packages/core/system-prompt/src/index.ts:139-183 | The default is code-unit lexicographic order; explicit ordering requires one rest marker, rejects unknown names, and permits known tools hidden in a scope to be absent. | 07 | 07 |
RALPH-CONTRACTRalph's minimal model schema and explicit-use policy | packages/workflow/tool-ralph/src/index.ts:404-435 | Ralph exposes only objective/maxRounds with a fixed tool name and output envelope; its system prompt requires an explicit human request for Ralph/fresh-agent iteration. | 25 | 25 |
RALPH-DOUBLE-VALIDATIONConsumer-side revalidation of Ralph terminal results | packages/workflow/tool-ralph/src/index.ts:246-333 | TypeScript revalidates exact keys, status, round range, status-specific report invariants, and handoff size, rejecting malformed engine-boundary values. | 25 | 25, 33 |
RALPH-EXECUTERalph execution mapping onto a fixed Workflow | packages/workflow/tool-ralph/src/index.ts:437-474 | The tool trims the objective, resolves cap/provider, passes the fixed script/provider/maxTotalAgents to the engine, bridges cancellation, decodes the result, and disposes in finally. | 25 | 25 |
RALPH-FRESH-PROVIDERRalph round cap and fresh-provider capability gate | packages/workflow/tool-ralph/src/index.ts:207-232 | The call round count must be a positive safe integer within the ceiling; the provider must be registered, support structured output, and not inherit parent context. | 25 | 25 |
RALPH-OUTCOMESRalph terminal outcomes and round-failure semantics | packages/workflow/tool-ralph/src/index.ts:282-391 | The decoder distinguishes complete, blocked, budget-limited, and round-failed, bounds roundsStarted, and retains the previous continue report after an ordinary child failure. | 25 | 25 |
RALPH-RENDERBounded, non-certifying Ralph result rendering | packages/workflow/tool-ralph/src/index.ts:351-391 | The renderer says the worker reported completion/blocker or reached its limit; maxResultChars includes envelope and truncation marker, and round failure retains the last handoff. | 25 | 25 |
RALPH-ROUND-PROMPTRalph round prompt and workspace memory | packages/workflow/tool-ralph/src/index.ts:151-167 | Each round carries only the immutable objective, round index, workspace-as-truth instruction, and previous bounded report, explicitly without parent conversation or a previous child Session. | 25 | 25 |
RALPH-SCRIPTBuild-time-fixed Ralph state machine and report rules | packages/workflow/tool-ralph/src/index.ts:80-177 | The fixed script defines report schema/status invariants, bounded handoff, one fresh agent per round, and complete/blocked/round-failed/budget-limited transitions. | 25 | 25 |
REMOTE-AGENT-RESOLVECold-resume policy for Remote session identities | packages/api/remotes/src/agent-lookup.ts:113-211 | Live Agents are reused and concurrent ordinary cold resumes are deduplicated by id; subagent ownership is fenced at entry, after durable inspection, and before resume, while a failed publication race rechecks the published identity and classifies agent-busy. | 29 | 29 |
REMOTE-CLIENT-INVOKERemote client invocation and lifetime cancellation | packages/api/gateway/src/client/index.ts:327-415 | The client projects positional arguments into named wire args, fuses mount lifetime with caller cancellation, and revalidates the response; no active Connection throws before the try, while RPC rejection, abort, and malformed responses fold into RemoteResult only after a Connection exists. | 29 | 29 |
REMOTE-CLIENT-MOUNTTransactional mounting of generated Remote contributions | packages/api/gateway/src/client/index.ts:174-260 | The client mounts only strict descriptors, checks duplicates and namespace collisions before callability, rolls back partial installation in reverse, and aborts in-flight calls when a mount token is withdrawn. | 29 | 29 |
REMOTE-EVENT-ALLOWLISTSingle allowlist for Remote events | packages/api/remotes/src/remote-events.ts:1-29 | One constant controls the 11 forwardable events; the wire uses each Host event's original name and argument list without projection, renaming, or redaction. | 29 | 29 |
REMOTE-EVENT-FORWARDActual forwarding of allowlisted events | packages/host/apiproxy/src/api-proxy.ts:3617-3635 | The Host registers a listener for every allowlisted event, proves its arguments JSON-safe, and wraps it as host/remote-event on the host stream. | 29 | 29 |
REMOTE-GATEWAY-TYPESCarrier-independent Typert Remote contract | packages/api/gateway/src/types.ts:6-46 | An invocation consists of namespace, method, exact named args, and an optionally injected signal, with stable gateway failure categories. | 29 | 29 |
REMOTE-HOST-DISPATCHStrict descriptor dispatch on the Remote host | packages/api/gateway/src/index.ts:90-235 | The Gateway re-resolves the current descriptor on every call, validates exact arguments, resolves Context/lookups, binds the live Service, and validates results; a withdrawn strict definition that was previously seen cannot downgrade to SRC. | 29 | 29 |
REMOTE-HOST-ERRORSRemote cancellation and wire error folding | packages/api/gateway/src/index.ts:159-489 | Only methods declaring cancellation receive a signal; a business rejection observed after abort maps to cancelled, lookup-policy failures retain their RpcError, and other gateway or business exceptions collapse to internal on the wire. | 29 | 29 |
SANDBOX-BASH-CONSUMERSandbox consumption path for one-shot Bash | packages/shell/bash-sandbox/src/index.ts:79-179 | The executor gives the provider exact ['bash','-c',command] and runs the returned argv directly; foreground and background paths retain mode, enforcement, denial, and runner-failure outcomes. | 20 | 20 |
SANDBOX-CONTAINMENTSeparator-aware containment with filesystem-identity fallback | packages/fs/fs-sandbox/src/containment.ts:19-76 | Containment first performs separator-aware lexical comparison; when spellings differ it walks existing ancestors comparing device and inode, treats missing roots conservatively, and supports Windows case and alias semantics. | 20 | 20 |
SANDBOX-E2B-FSRemote identity, reads, and mutations in E2B filesystem | packages/e2b/fs-e2b/src/index.ts:170-454 | The E2B provider builds target identity from POSIX cwd and remote GNU realpath, supplies whole, streaming, and bounded-byte reads, and wraps guarded write and edit with a host-process lock keyed by canonical target. | 20 | 20 |
SANDBOX-E2B-OWNERE2B execution-world owner for one context | packages/e2b/e2b/src/index.ts:22-179 | E2BRuntime creates and shares one sandbox handle, validates API key, absolute Linux cwd, and timeout, prepares a 0700 runtime root, isolates the SDK login shell with randomized HOME, and kills on bootstrap failure or disposal. | 20 | 20 |
SANDBOX-E2B-PGIDE2B process-group identity, TERM-to-KILL, and quiescence probing | packages/e2b/subprocess-e2b/src/process.ts:93-665 | The remote wrapper uses setsid and publishes the actual PGID; termination signals the negative PGID with TERM, escalates to KILL and SDK kill, then confirms group quiescence through ps while excluding zombie and dead entries. | 20 | 20 |
SANDBOX-E2B-PUBLICATIONE2B atomic publication and cancellation commit point | packages/e2b/fs-e2b/src/index.ts:510-579 | Remote writes create a random 0700 sibling staging directory, upload a version-tagged file while preserving mode, commit with ln -T or rename without a signal, and clean up best effort afterward. | 20 | 20 |
SANDBOX-E2B-SUBPROCESSE2B remote executable, process, and terminal seam | packages/e2b/subprocess-e2b/src/index.ts:103-204 | The provider resolves absolute or bare executables inside the shared sandbox, spawns managed process handles, allocates process and terminal state under the owner's runtimeRoot, and fences terminal setup against cancellation and disposal. | 20 | 20 |
SANDBOX-EDIT-TOOLEdit-tool policy, guard, and observation flow | packages/fs/tool-fs/src/edit.ts:112-146 | Edit resolves policy and target before I/O, obtains its version intent inside the try and calls provider atomic edit; failures are mapped consistently and success refreshes the present observation. | 20 | 20 |
SANDBOX-ESCALATIONStrictly monotonic pre-execution escalation approval | packages/sandbox/sandbox/src/escalation.ts:22-187 | The escalation table permits only strictly wider targets; arguments must be paired with a nonblank reason, approval carries cancellation before execution, and only allowed-once returns a wider mode for this call. | 20 | 20 |
SANDBOX-FS-ATOMICLocal atomic staging and publication | packages/fs/fs-local/src/fsio.ts:518-615 | Writes use a 0700 sibling staging directory, a 0600 exclusive file, and sync; cancellation is checked before commit, then publication uses hard-link no-replace, Windows ReplaceFile, or rename, with post-commit cleanup best effort. | 20 | 20 |
SANDBOX-FS-ESCALATIONConditional escalation interface for filesystem mutations | packages/fs/tool-fs/src/sandbox.ts:20-130 | The controller advertises escalation fields only when ctx.fs exposes sandboxMode and then requires shared policy; each mutation resolves standing or approved policy and maps FS_SANDBOX_DENIED to the shared marker and hint. | 20 | 20 |
SANDBOX-FS-FENCEIn-process filesystem fence for mutations only | packages/fs/fs-sandbox/src/index.ts:1-149 | SandboxedFileSystem inherits reads unchanged and checks only write and edit against per-call policy; read-only denies, workspace-write fresh-resolves and checks writable roots, full passes through, and residual TOCTOU is explicitly accepted. | 20 | 20 |
SANDBOX-FS-IDENTITYRealpath identity for present and missing targets | packages/fs/fs-local/src/fsio.ts:105-194 | Present targets use their own realpath; missing targets walk to the nearest existing ancestor, canonicalize it, and append the missing suffix so symlink aliases preserve identity across creation. | 20 | 20 |
SANDBOX-FS-LOCALLocal filesystem cwd and canonical target | packages/fs/fs-local/src/index.ts:40-123 | LocalFileSystem states that cwd is only a relative-path default, not containment; it uses canonical targetKey for lock and I/O identity and platform path semantics for contains. | 20 | 20 |
SANDBOX-FS-LOCAL-MUTATIONLocal per-target mutation lock and guards | packages/fs/fs-local/src/index.ts:70-255 | One provider serializes mutations by targetKey with a FIFO lock; write and edit probe and validate create, replace, or version guards under that lock before atomic writing and returning a new version. | 20 | 20 |
SANDBOX-FS-READ-IOLocal text, byte, and streaming read semantics | packages/fs/fs-local/src/fsio.ts:17-463 | Whole-text reads the complete file with UTF-8 and NUL checks; raw-byte reads enforce maxBytes; streaming decodes across chunks, samples only the first 8192 bytes for NUL, and propagates cancellation. | 20 | 20 |
SANDBOX-FS-SEAMFilesystem provider and event seam | packages/fs/fs/src/index.ts:44-249 | FileSystem declares path, read, list, and atomic-mutation APIs; fs write and edit intents are single-slot waterfalls, observed is synchronous emission, and sandboxMode optionally exposes mutation confinement. | 20 | 20 |
SANDBOX-FS-TYPESFilesystem identity, observation, guard, and error types | packages/fs/fs/src/types.ts:11-203 | The types make target and version opaque identities, distinguish present and absent observations, define guarded create and replace intents, and list structured FsErrorCode including FS_SANDBOX_DENIED. | 20 | 20 |
SANDBOX-LOCAL-DIALECTSLocal platform runner chains and diagnostic dialects | packages/sandbox/sandbox-local/src/index.ts:150-240 | The source defines Linux bwrap-to-Landlock, macOS Seatbelt, and Windows ACL chains with their full or partial enforcement, denial signatures, and runner-failure rules. | 20 | 20 |
SANDBOX-LOCAL-SELECTRunner selection, caching, and fail-closed behavior | packages/sandbox/sandbox-local/src/index.ts:485-539 | The provider caches one chain verdict for its lifetime; a sole candidate is unprobed, multiple candidates are probed in order, and an empty or wholly unusable chain becomes structured unavailable rather than original argv. | 20 | 20 |
SANDBOX-LOCAL-WRAPCustom-runner validation and wrapping | packages/sandbox/sandbox-local/src/index.ts:276-333 | Construction requires runnerCommand and failure signatures together; a configured runner bypasses platform selection, wraps with a bwrap-shaped profile, and is treated as the operator's assertion of full enforcement. | 20 | 20 |
SANDBOX-MODE-EVENTSession sandbox-mode event and fold | packages/sandbox/sandbox-policy/src/session-mode.ts:24-71 | sandbox/mode is a log-only session event; effectiveSandboxMode scans backward for the latest value, and setSandboxMode only appends that event. | 20 | 20 |
SANDBOX-OBSERVATIONObservation state machine isolated by session owner | packages/fs/fs-observation-policy/src/index.ts:17-130 | The plugin stores ephemeral state in WeakMap<owner, Map<target, observation>>; unseen, absent, and present determine create or version guards, disposal resets state, and three listeners occupy intent slots and synchronously record observations. | 20 | 20 |
SANDBOX-PERMISSION-PRESETSPermission-preset defaults and startup validation | packages/interaction/permission-presets/src/index.ts:139-225 | The service defaults to workspace-write plus ask and danger-full-access plus never, requires shell and approval, validates confinement only through ctx.shell.sandboxMode, and pins initial permission for new sessions. | 20 | 20 |
SANDBOX-PERMISSION-WRITEThree-event write path for permission presets | packages/interaction/permission-presets/src/index.ts:369-430 | A switch conditionally appends permission/preset, then updates sandbox/mode and approval/policy through canonical setters; new sessions also receive any missing durable facts. | 20 | 20 |
SANDBOX-POLICYPer-call resolution of shared sandbox policy | packages/sandbox/sandbox-policy/src/index.ts:60-150 | SandboxPolicyService itself defaults to read-only; each resolve selects explicit mode, then the session's last override, then deployment default, and prefers session cwd as the workspace root. | 20 | 20 |
SANDBOX-PROFILESBwrap, Landlock, and Seatbelt profiles | packages/sandbox/sandbox-local/src/profiles.ts:11-58 | Bwrap read-only binds the root and gives workspace mode an isolated /tmp; Landlock grants host /tmp and workspace; Seatbelt allows by default, denies file writes, then permits the shared writable roots. | 20 | 20 |
SANDBOX-READ-TARGETRead-target resolution and absent observation | packages/fs/tool-fs/src/read-target.ts:12-34 | The shared helper resolves from session cwd and stats the target; confirmed absence emits an absent observation before FS_NOT_FOUND, and non-regular files are rejected. | 20 | 20 |
SANDBOX-READ-TOOLBounded window and present observation in the read tool | packages/fs/tool-fs/src/read.ts:134-163 | Read performs one stat for type, size, and version, selects whole or streaming I/O by size, builds a bounded window, and emits a present observation only after success. | 20 | 20 |
SANDBOX-RESULT-CLASSIFIERSandbox denial and runner-failure classifiers | packages/shell/bash-sandbox/src/helpers.ts:25-116 | Spawn attribution requires a usable workdir and exact runner path or syscall; settled runner failure uses exit gates, informational-line exclusions, and fatal stderr matches, while denial matches signatures only on nonzero exit. | 20 | 20 |
SANDBOX-SEAMSandbox contract for process file-effect confinement | packages/sandbox/sandbox/src/index.ts:23-175 | The source defines the three modes as file-effect policy and requires the provider to accept a complete per-call policy, return exact wrapped argv plus enforcement and diagnostic rules, and fail closed when unavailable. | 20 | 20 |
SANDBOX-SEARCH-WORLDSubprocess execution-world assumption of glob and grep | packages/fs/tool-fs-search/src/index.ts:1-24 | Search tools run packaged ripgrep through ctx.subprocess and deliberately do not inject ctx.fs; returned paths are follow-up readable only when subprocess workdir and filesystem root are co-located, and that is not runtime validated. | 20 | 20 |
SANDBOX-SESSION-CWDSession-cwd resolution for filesystem tools | packages/fs/tool-fs/src/session-cwd.ts:16-46 | Tools take cwd from the calling agent's session header, recanonicalize when parent traversal is involved, and let the sandbox policy root take precedence for mutation resolution. | 20 | 20 |
SANDBOX-TERMINAL-FENCEPersistent-terminal mode fence and confined spawn | packages/terminal/terminal-bash/src/index.ts:27-145 | An owner-scoped listener rejects a different sandbox/mode while PTYs are open or being created; spawn resolves session policy, wraps argv, uses its root, and awaits close cleanup on initialization failure. | 20 | 20 |
SANDBOX-WRITABLE-ROOTSCanonicalization and derivation of writable roots | packages/sandbox/sandbox/src/roots.ts:20-55 | canonicalPath best-effort uses native realpath; writableRoots is empty for read-only and canonicalizes and deduplicates the workspace root, /tmp, and os.tmpdir() for workspace-write. | 20 | 20 |
SANDBOX-WRITE-TOOLWrite-tool policy, intent, and observation flow | packages/fs/tool-fs/src/write.ts:102-128 | Write resolves policy and target before I/O, obtains the single-slot intent, invokes provider mutation, maps denials and errors, and records a present observation with the returned version after success. | 20 | 20 |
SDK-DOC-STALE-ACCEPTEDStale TypeScript SdkProtocolError comment | packages/sdk/client/src/client.ts:55-290 | The class comment still uses a prompt response lacking accepted:true as its example, while the implementation and current wire contract require messageId. | 29 | 29 |
SDK-JSONL-TRANSPORTSDK newline-delimited JSON transport | packages/sdk/protocol/src/transport.ts:1-268 | Outbound frames always write jsonrpc:2.0; inbound frames are classified only by id/method without validating that field or the full envelope. StringDecoder preserves split UTF-8; malformed lines and unknown response ids are ignored, while missing and failing handlers map to -32601/-32603. | 29 | 29 |
SDK-PY-CLIENTPython SDK synchronous client and bidirectional request surface | python/sdk/src/deepseek_harness/client.py:24-397 | The Python client sends the same requests and exposes future server-request APIs; its environment copies the parent then merges overrides. After the shutdown response, close terminates a still-live process; clearing _proc permits restart, but start does not clear the sentinels that close leaves in the global-notification and server-request queues. | 29 | 29 |
SDK-PY-MODELSLenient Python initialize-response model | python/sdk/src/deepseek_harness/models.py:26-32 | Python permits ServerInfo.name/version and InitializeResponse.serverInfo all to be absent. | 29 | 29 |
SDK-PY-READERPython SDK waiting, parsing, and subscriptions | python/sdk/src/deepseek_harness/client.py:228-396 | Each request is correlated by UUID and a queue; timeout removes its waiter and attaches process diagnostics, the reader ignores malformed JSON and separates server requests, responses, and notifications, and a throwing filter terminates only its own subscription. | 29 | 29 |
SDK-PY-RESULTPython SDK configuration and RunResult contract | python/sdk/src/deepseek_harness/api.py:13-84 | The Python high-level configuration offers session_root, base_url, and api_key conveniences merged into the environment; its RunResult additionally contains finish_reason and session_root. | 29 | 29 |
SDK-PY-RUNPython high-level receipt-to-idle run semantics | python/sdk/src/deepseek_harness/api.py:97-242 | Python likewise subscribes to the session tree before using the messageId receipt as the start and collecting through idle; it additionally derives finish_reason from the last turn/end and raises SdkProtocolError when reason.kind is not a string. | 29 | 29 |
SDK-SERVER-EVENTSGlobal notification subscriptions in the SDK server | packages/sdk/server/src/server.ts:48-103 | Construction subscribes to every session/event, agent/status, and child lifecycle in the context; local subagent completion is reported only from the snapshotted local flag, never inferred from ids or lineage. | 29 | 29 |
SDK-SERVER-INITSDK server initialization and dispatch state | packages/sdk/server/src/server.ts:48-201 | The class comment says reinitialization is unsupported, yet the class has no initialized state; initialize rewrites cwd/provider/model/maxTokens on every call, and handleRequest does not gate session/prompt on the handshake. | 29 | 29 |
SDK-SERVER-SESSIONSSDK session creation and teardown | packages/sdk/server/src/server.ts:127-239 | A sessionId is created lazily on first prompt, concurrent creation of the same id is coalesced, prompt verifies the exact Agent is still live, and shutdown rejects new creation, settles in-flight creation, and allSettles every handle plus the fallback adapter. | 29 | 29 |
SDK-SERVER-SHUTDOWNSDK runtime shutdown and exit order | packages/sdk/server/src/index.ts:40-91 | After the shutdown result is written, the next event-loop turn flushes the transport, disposes the root fiber, and exits 0; successful plugin-only unmount shuts down the server then closes transport, but a shutdown rejection skips close because there is no finally. | 29 | 29 |
SDK-TS-CLIENTTypeScript SDK errors, timeouts, and close | packages/sdk/client/src/client.ts:175-401 | The client lazily starts a subprocess and initialize only checks that identity fields are strings; timeout removes only the local pending entry while server work continues; wire errors retain code/data, transport errors add exit code plus a 400-line stderr tail, and close performs best-effort shutdown before authoritative process reaping. | 29 | 29 |
SDK-TS-DISPOSETypeScript SDK process-reaping ladder | packages/sdk/client/src/dispose.ts:13-99 | Reaping proceeds through stdin EOF, POSIX SIGTERM, and SIGKILL while cleaning timers and listeners at each tier; it resolves only after observing exit, and Windows skips directly to forced termination. | 29 | 29 |
SDK-TS-RESULTTypeScript SDK launch and RunResult contract | packages/sdk/client/src/types.ts:22-70 | An explicit env replaces the complete child environment; RunResult contains only sessionId, finalResponse, events, and notifications, with no finish reason. | 29 | 29 |
SDK-TS-RUNThe TypeScript high-level run activity interval | packages/sdk/client/src/api.ts:139-245 | Subscription precedes prompt, notifications before the matching durable inbox receipt are ignored, collection runs through the next whole-agent idle, and finalResponse is the interval's last committed assistant text rather than a prompt-causal result. | 29 | 29 |
SDK-WIRE-METHODSThe SDK wire's three requests and four notifications | packages/sdk/protocol/src/types.ts:15-105 | Clients have only initialize, session/prompt, and shutdown; the server notifies session.event, session.status, subagent.started, and subagent.finished; prompt returns only messageId, and full SessionEvent envelopes enter the wire vocabulary. | 29 | 29 |
SEC-ACP-BRIDGEACP session and approval bridge semantics | packages/acp/acp/src/index.ts:212-274 | ACP creates a one-shot owned approval answerer per session; authenticate is a no-op, and the method surface puts the client cwd into new-Agent metadata without adding user authentication. | 31 | 31 |
SEC-ACP-CWDACP absolute-cwd validation | packages/acp/acp/src/index.ts:430-433 | A new-Session request with a non-absolute cwd is rejected before Agent creation. | 31 | 31 |
SEC-ACP-TRUSTACP trusted programmatic stdio boundary | packages/acp/acp/src/index.ts:1-45 | The ACP adapter describes itself as a trusted programmatic stdio boundary and allows its controller to create Agents. | 31 | 31 |
SEC-APPROVAL-CLOSEDApproval audit and fail-closed settlement | packages/interaction/user-approval/src/index.ts:239-343 | Approval requires an open turn and records asked/decided events; never, absent or failing answerers, invalid answers, and cancellation do not execute, and only allowed-once is a grant. | 31 | 31 |
SEC-BOOT-TRANSACTIONTransactional boot and failure cleanup | packages/boot/app-boot/src/index.ts:757-801 | Prepare, mount, settle, and activation audit run in order; any failure disposes the partial root while preserving the deeper error stack. | 31 | 31 |
SEC-BROWSER-FENCEBrowser API Host/Origin request fence | packages/client/connection/src/api-request-trust.ts:1-122 | Requests are checked through Host, Fetch Metadata, and Origin signals; the source explicitly describes the mechanism as a request fence rather than authentication. | 31 | 31 |
SEC-BROWSER-PRIVILEGEDBrowser API privileged configuration plane | packages/client/connection/src/index.ts:69-159 | Configuration-mutating methods are loopback-only, while ordinary Agent/Session methods remain a high-authority control plane for any reachable client that passes the request fence. | 31 | 31 |
SEC-CHILD-ENVHeuristic child-environment scrubbing | packages/subprocess/subprocess/src/index.ts:37-66 | Child processes remove ambient names matching KEY/PASSWORD/SECRET/TOKEN or DSH_*; an explicit env layer may then restore any entry, making this a naming heuristic rather than secret-taint tracking. | 31 | 31 |
SEC-CREDENTIAL-FILEManaged credential file protection and parsing | packages/credentials/credentials-local/src/index.ts:87-185 | On POSIX, an existing file with group/other permission bits is rejected before reading; Windows skips the mode assertion, and parsing/error paths avoid emitting secret values. | 31 | 31 |
SEC-CREDENTIAL-LAYERSLocal credential-layer precedence | packages/credentials/credentials-local/src/index.ts:1-34 | The provider resolves inherited environment, managed store, then fallback environment in order, and does not copy the managed file into process.env. | 31 | 31 |
SEC-CREDENTIAL-RESOLVECredential resolution, value-free description, and shadow guard | packages/credentials/credentials-local/src/index.ts:249-380 | Inherited references are dominant and read-only, managed/fallback references resolve through explicit layers, describe omits values, and set/unset reject writes shadowed by inherited environment both before queuing and at execution. | 31 | 31 |
SEC-CREDENTIAL-SEAMCredential reference/value separation seam | packages/credentials/credentials/src/index.ts:1-99 | Configuration and UI carry CredentialRef values and value-free descriptions, while a provider resolves the secret at the concrete operation boundary. | 31 | 31 |
SEC-CUSTOM-RUNNERCustom-runner trust contract | packages/sandbox/sandbox-local/src/index.ts:276-333 | A configured custom runner bypasses platform selection; implementation validates only command and failure-signature shape, then treats the operator-provided runner as full enforcement. | 31 | 31 |
SEC-DYNAMIC-CLIENTDynamic Client-code evaluator capability surface | packages/extensions/cordis-client-runner/src/client/evaluator.ts:1-222 | The Client evaluator runs code with new Function in the page realm, shadows selected bare globals, and sets process and Buffer to undefined, while ambient page globals remain reachable. | 31 | 31 |
SEC-DYNAMIC-GUARDDynamic-plugin Context facade and tool-bypass guard | packages/extensions/cordis-host-runner/src/guard.ts:620-819 | Property-style Service access requires a declared injection, but optional ctx.get is not declaration-gated; wrappers reject only direct Context returns, while the tools facade prevents access to a live execute function that could bypass ToolRuntime. | 31 | 31 |
SEC-DYNAMIC-RUNDynamic Host and Client package activation branches | packages/extensions/cordis-host-runner/src/index.ts:238-312 | A Host-only package can activate immediately; a package containing Client code requires approval or an existing grant, and a package-wide grant can cover later versions. | 31 | 31 |
SEC-DYNAMIC-VMnode:vm is not a malicious-code boundary | packages/extensions/cordis-host-runner/src/sandbox.ts:1-11 | The Host runner explicitly states that node:vm is convenience isolation, not a security boundary against malicious code. | 31 | 31 |
SEC-E2B-OWNERSingle owner for the E2B remote context | packages/e2b/e2b/src/index.ts:1-179 | Configuration resolves the API key and cwd, each Context owns one shared sandbox handle, randomizes HOME for internal login shells, creates an owner-only runtime directory, attempts rollback kill after setup failure, requests kill on timeout or disposal, and avoids forwarding the API key into the remote environment. | 31 | 31 |
SEC-ENV-LAYERSLaunch environment layering and bootstrap denylist | packages/boot/app-boot/src/index.ts:92-198 | Launch layers inherited, invoking-directory .env, and Harness-home .env; both files are parsed before bootstrap-sensitive variables and prefixes are rejected, then accepted values are materialized with inherited values winning. | 31 | 31 |
SEC-ESCALATIONOne-shot sandbox escalation control flow | packages/sandbox/sandbox/src/escalation.ts:143-188 | The escalated mode must be wider and an Agent plus approval service must exist; reason and call identity are audited, and only allowed-once stamps the wider mode onto that call. | 31 | 31 |
SEC-FS-FENCEFilesystem mutation containment | packages/fs/fs-sandbox/src/index.ts:1-149 | The wrapper leaves reads unchanged and fences only writeText/editText; workspace-write recanonicalizes immediately before the syscall and checks workspace/temp containment, while accepting a residual ancestor-symlink race after the final check. | 31 | 31 |
SEC-LANDLOCK-PROBEEnforcement result of the Landlock probe | packages/sandbox/sandbox-local/src/index.ts:500-527 | The runner chain uses functional probes to select a usable rung; the Landlock probe returns full, partial, or unusable according to launcher and ABI support. | 31 | 31 |
SEC-LOADER-IMPORTRoot Include module resolution and creation | packages/boot/app-boot/src/index.ts:475-528 | Relative plugins resolve beside the configuration, bare plugins resolve through the module base, and Loader then creates the composed tree. | 31 | 31 |
SEC-LOCAL-RUNNERSLocal sandbox runner selection and static guarantees | packages/sandbox/sandbox-local/src/index.ts:150-240 | Linux selects bubblewrap then Landlock, macOS uses Seatbelt, and Windows uses the ACL runner; bubblewrap and Seatbelt advertise full, Windows advertises partial due to ACL and hard-link semantics, and Landlock is probe-determined. | 31 | 31 |
SEC-MCP-EXECMCP invocation and result boundary | packages/mcp/mcp-client/src/tools.ts:218-277 | The bridge does not locally validate arguments against the advertised input schema; it normalizes the top-level result while separating Native text projection from canonical JSON content retained for Code Mode, and the remote server remains the execution authority. | 31 | 31 |
SEC-MCP-SYNCMCP tool discovery and generation swap | packages/mcp/mcp-client/src/tools.ts:128-173 | Discovery first builds the complete candidate map; swap disposes the old set before registering the new set sequentially, and a registry conflict clears the partial new set to an empty generation rather than restoring the old one. | 31 | 31 |
SEC-MCP-TRANSPORTMCP stdio and HTTP transport boundary | packages/mcp/mcp-client/src/transport.ts:1-49 | A stdio server is spawned directly by the MCP SDK with a scrubbed environment, while an HTTP server receives the configured URL and headers. | 31 | 31 |
SEC-MODEL-PARSEModel tool-argument parsing boundary | packages/core/agent-loop/src/tool-calls.ts:59-110 | Tool blocks become execution requests; valid JSON is parsed, empty arguments become an object, and invalid JSON remains a raw string for downstream validation. | 31 | 31 |
SEC-PATCH-LAYERSUser-patch parsing and fail-loud behavior | packages/boot/app-boot/src/index.ts:267-337 | Optional and required patch layers may replace configuration, insert Loader rows, and use !!js; a present layer that is unreadable, unparsable, or has the wrong top-level shape fails launch. | 31 | 31 |
SEC-PLUGIN-PNPMPlugin installation and automatic bundle activation | apps/cli/src/plugin.ts:55-157 | Plugin commands forward to pnpm; after success, installed dependencies declaring bundle patches are reconciled into the profile, relative specs anchor to the invocation directory, and git build policy is delegated to pnpm. | 31 | 31 |
SEC-PRESETS-PINApplication and pinning of per-session permission facts | packages/interaction/permission-presets/src/index.ts:379-430 | New sessions receive durable preset, sandbox-mode, and approval-policy facts; existing or partially initialized sessions gain only missing facts without rewriting prior choices. | 31 | 31 |
SEC-PRESETS-VALIDATEPermission-preset dependencies and default-table validation | packages/interaction/permission-presets/src/index.ts:155-225 | The service requires a shell advertising the sandboxMode policy capability and an approval service; its table maps workspace-write to ask and danger-full-access to never, validating the default before publishing settings. | 31 | 31 |
SEC-PROFILE-ORDEREffective profile layering order | apps/cli/src/profile-boot.ts:121-170 | Effective configuration composes bundle, profile, home, CLI, and launcher-owned overlays in order, allowing later administrative layers to alter or insert runtime rows. | 31 | 31 |
SEC-PROVIDER-CONFIGProvider endpoint and credential configuration | packages/llm/llm-deepseek/src/index.ts:149-246 | The DeepSeek adapter validates bounded request and model settings, snapshots the configured endpoint, credential reference, and request settings, and resolves the actual key when performing the operation; the endpoint itself is only a string. | 31 | 31 |
SEC-PROVIDER-TRANSPORTProvider HTTP transport data boundary | packages/llm/llm-deepseek/src/adapter.ts:214-345 | The adapter sends messages, tool schemas, request parameters, API key, and request identifiers to the configured endpoint and consumes its streamed response. | 31 | 31 |
SEC-RAW-TOOL-REGISTERLow-level tool registration contract | packages/core/tools/src/index.ts:1031-1061 | register validates the output contract, timeout, and reserved names, but does not inject generic input validation around an arbitrary ToolDefinition.execute. | 31 | 31 |
SEC-REMOTE-CARRIERRemote calls reuse the active Connection | packages/api/gateway/src/client/index.ts:399-409 | A generated Remote call requires the active Connection, sends endpoint and arguments through its /api RPC, and parses the result with the descriptor codec. | 31 | 31 |
SEC-REMOTE-CODECSStrict-codec gate for generated Remote | packages/api/gateway/src/client/index.ts:549-575 | The Client gateway requires strict codecs for results, parameters, and contextual invocation and parses wire values through their schemas; absence or parse failure fails loudly. | 31 | 31 |
SEC-REMOTE-EVENTSRemote-event allowlist and verbatim data | packages/api/remotes/src/remote-events.ts:1-29 | Forwarded events use an explicit allowlist, but allowed payloads are sent verbatim without a generic redaction layer. | 31 | 31 |
SEC-REMOTE-MOUNTFixed mounting surface for Remote contributions | packages/api/remotes/src/client/index.ts:97-121 | The Client assembly mounts only predefined contribution categories and cleans up mounted entries in reverse order on failure and disposal. | 31 | 31 |
SEC-SANDBOX-SEAMSandbox file-effect contract | packages/sandbox/sandbox/src/index.ts:23-175 | The sandbox defines only three file-effect modes; a provider must return wrapped argv, enforcement level, and diagnostic dialect or fail closed, while network and process visibility are outside the contract. | 31 | 31, 33 |
SEC-SDK-CLIENTTypeScript SDK as a trusted stdio controller | packages/sdk/client/src/client.ts:175-260 | The SDK client may own the server subprocess, inherit or override its environment, and control it over stdio RPC; timeout abandons the client pending entry rather than cancelling server work. | 31 | 31 |
SEC-SDK-FILTERClient-side Session-tree filtering | packages/sdk/client/src/client.ts:354-370 | The SDK client filters global notifications locally by root Session tree; this helper is not server-side authorization. | 31 | 31 |
SEC-SDK-PYTHONPython SDK environment inheritance | python/sdk/src/deepseek_harness/client.py:63-83 | The Python client copies the complete parent environment, merges caller overrides, and then starts the stdio server. | 31 | 31 |
SEC-SDK-SERVERSDK server initialization and global event surface | packages/sdk/server/src/server.ts:48-124 | The stdio server accepts initialize parameters selecting cwd, provider, and model and projects global events to the controller; the private pipe relies on process ownership rather than protocol authentication. | 31 | 31 |
SEC-SKILL-INVOCATION-GATESModel and user skill-invocation gates | packages/skill/tool-skill/src/index.ts:127-227 | The model tool checks model-invocable on both the summary and loaded definition, explicit user invocation injects only user-invocable skills, and the model catalog retains only model-invocable entries. | 31 | 31 |
SEC-SKILL-TRUSTSkill wrapper and verbatim instruction trust | packages/skill/skill/src/index.ts:157-183 | The skill wrapper escapes the name attribute, but embeds the body verbatim as trusted local content, making skill provenance part of the instruction supply chain. | 31 | 31 |
SEC-TOOL-ARG-SNAPSHOTArgument snapshot and freeze before policy | packages/core/tools/src/index.ts:1364-1450 | Execution arguments are lossless-JSON snapshotted and deeply frozen before policy; values that cannot be safely read or serialized produce an error result. | 31 | 31 |
SEC-TOOL-DEFINEdefineTool input and output validation | packages/core/tools/src/schema.ts:538-617 | defineTool compiles parameter and output schemas, validates arguments before user code, and softly validates replay arguments that may originate from an older schema. | 31 | 31 |
SEC-TOOL-GATETool pre-execute, approval, and guard order | packages/core/tools/src/index.ts:1453-1506 | pre-execute begins at default allow, only ask invokes approval, an allowed result still passes monotonic guards, and denial or cancellation settles before body dispatch. | 31 | 31 |
SEC-WORKER-TRUSTWorker thread non-security-boundary declaration | packages/code-runtime/code-runtime-worker-thread/src/index.ts:1-6 | The source states that worker containment is not an adversarial security boundary and model-written worker code should be treated as bash-equivalent authority. | 31 | 31 |
SESSION-APPEND-COMMITSynchronous commit point of Session.append | packages/core/session/src/index.ts:550-654 | Append snapshots JSON and surface metadata, freezes the candidate, validates the surface, and resolves precommit dispatch; log.push is the commit point, after which observer failures are contained and reentrant append is rejected. | 09 | 09, 33 |
SESSION-CORE-EVENTSCore SessionEvent vocabulary | packages/core/session/src/types.ts:230-332 | Core declares Turn and Step boundaries, user messages, raw assistant chunks, assembled assistants, tool calls and results, todos, request header and context, and end-seed events with their payload semantics. | 09 | 09 |
SESSION-DERIVED-CACHEIncremental derived-message cache | packages/core/session/src/index.ts:700-747 | Without replacement only new surface nodes are projected; a generation change rebuilds fully; every call returns a fresh array while sharing frozen messages from events. | 09 | 09, 14 |
SESSION-EVENT-ENVELOPESessionEvent envelope, surface markers, and ignorable flag | packages/core/session/src/types.ts:335-435 | Events are a type-discriminated union with seq, time, and data; only three message event types may carry surfaceOp and sourceEventSeqs, and an unknown event is skippable only with ignorable=true. | 09 | 09 |
SESSION-FORMAT-HEADERSession format version and durable header | packages/core/session/src/types.ts:33-99 | The format version is fixed at zero with no compatibility promise; the header stores identity, creation time, cwd, fork parent and seed length, subagent origin and depth, and agent preset. | 09 | 09, 12 |
SESSION-INVARIANT-COMMITInvariant precommit staging and postcommit advancement | packages/core/session/src/invariant.ts:189-250 | The companion builds traces from existing logs, validates and stages a pure transition during internal dispatch, and advances only after matching session/event publication, so a veto cannot pollute state. | 09 | 09 |
SESSION-LOSSLESS-JSONSingle-pass lossless-JSON snapshot | packages/core/session/src/json.ts:69-178 | An iterative traversal reads, validates, and copies a plain JSON graph once, rejecting sparse, cyclic, and exotic objects, negative zero, non-finite numbers, and non-string own keys. | 09 | 09 |
SESSION-RELATIONAL-INVARIANTOptional Turn, Step, and tool relational invariant | packages/core/session/src/invariant.ts:54-165 | The companion checks sequence order, Turn and Step numbering and closure, execution-event enclosure, and same-Step call/result pairing, leaving merge-extensible event relations to their owner. | 09 | 09 |
SESSION-SEED-ACCEPTANCEPer-event seed acceptance and end-seed boundary | packages/core/session/src/index.ts:499-547 | Seed events are snapshotted or adopted, checked for envelope, header, and contiguous sequence, and accepted through the same surface transition; construction records firstLiveSeq and appends end-seed when absent. | 09 | 09 |
SESSION-SURFACE-PROJECTIONThe sole event-to-model-visible-message projection | packages/core/session/src/surface.ts:70-142 | Only user messages, non-empty assistant messages, and tool results project, reusing frozen messages directly; boundaries, chunks, and log-only events never enter model history. | 09 | 09, 10, 14 |
SESSION-SURFACE-PROVENANCESurface eligibility and source-provenance validation | packages/core/session/src/surface.ts:184-243 | The three eligible event types require surfaceOp while all others forbid surface metadata; source sequences must be unique and earlier, and replacements must cite every shadowed node. | 09 | 09 |
SESSION-SURFACE-REPLACEAtomic fold of positional surface replacement | packages/core/session/src/surface.ts:245-379 | Replace locates start and end in the current node list, then one splice installs the new node and increments generation; a tool result may rewrite only the content of one current result. | 09 | 09 |
SESSION-UNKNOWN-EVENT-GATERecovery refusal for unknown required events | packages/session/session-persistence/src/coordinator.ts:1046-1065 | After normalization, persistence load checks every event against the known catalog and fails the entire session closed when an unknown event is not marked ignorable. | 09 | 09 |
SHELL-BACKGROUND-OUTCOMEBackground Shell outcome mapping | packages/shell/tool-bash/src/background.ts:9-27 | Signal-killed processes map to killed; every other exit, including nonzero, maps to completed with an exit-code detail; a TODO records that an unconfined spawn failure can still alias a kill. | 21 | 21 |
SHELL-BASH-CWDBash canonical policy-root workdir resolution | packages/shell/tool-bash/src/index.ts:138-156 | Bash prefers the sandbox-policy workspace root, otherwise canonicalizes the Session cwd, and resolves a relative workdir against that identity. | 21 | 21 |
SHELL-BASH-TOOLBash foreground/background ownership handoff | packages/shell/tool-bash/src/index.ts:330-389 | The tool first resolves approval, directory, and managed env; background atomically preflights and spawns through jobs.start after a signal check, while foreground passes the tool signal to the executor. | 21 | 21 |
SHELL-E2B-SEAMRemote E2B subprocess and Terminal provider | packages/e2b/subprocess-e2b/src/index.ts:51-205 | E2B implements SubprocessRuntime with remote executable lookup, ordinary process handles, Terminal allocation, publication fences, and disposal cleanup, without requiring consumer-specific tools. | 21 | 21 |
SHELL-ENV-LIST-GAPManaged-environment list built-in omission | packages/shell/shell-env/src/index.ts:175-192 | A source TODO states that list() enumerates contributor declarations but omits registry-owned built-ins, so diagnostics/UI cannot treat it as an exhaustive environment catalog. | 21 | 21 |
SHELL-ENV-SCRUBShared ambient environment scrub | packages/subprocess/subprocess/src/index.ts:37-66 | The child baseline removes credential-shaped names and every DSH_* variable; a later explicit provider overlay can restore deliberately forwarded values. | 21 | 21 |
SHELL-EXECUTOR-CONTRACTOne-shot Shell executor result contract | packages/shell/shell/src/index.ts:46-100 | run rejects only for infrastructure failure; nonzero, timeout, and abort are result facts; start has no timeout, output is incrementally consumed, and substrate composition teardown reaps background processes. | 21 | 21 |
SHELL-JOB-NOTICESJob completion delivery and wake budget | packages/jobs/tool-jobs/src/index.ts:205-300 | Unreported completion chooses inject or followup from owner busy/idle state; the default consecutive wake cap is three, and only a claimed user source resets the exact-Agent budget. | 21 | 21 |
SHELL-JOB-TOOLSJob output, list, and cancellation tools | packages/jobs/tool-jobs/src/index.ts:302-401 | The three tools provide optionally bounded waits, consuming output, visible listing, and cancellation requests; wait timeout leaves the Job alive and the kill snapshot does not consume output. | 21 | 21 |
SHELL-JOBS-CLEANUPExact-owner Job teardown and cancellation failure boundary | packages/jobs/jobs-local/src/index.ts:442-528 | Owner/service disposal requests cancellation and awaits every Job; a throwing cancel force-fails and reports possible orphaning, while a cancel that returns without settling may block teardown. | 21 | 21 |
SHELL-JOBS-SETTLEMENTScoped Job access and first-wins settlement | packages/jobs/jobs-local/src/index.ts:307-440 | Owner access and listener/observer routing are isolated by Session and scope; settlement is first-wins and commits the record, releases waiters, updates observers, then invokes completion listeners. | 21 | 21 |
SHELL-JOBS-STARTLocal Job preflight, allocation, and registration | packages/jobs/jobs-local/src/index.ts:86-190 | Before producer run, the Job Registry validates a scoped controller, fields, exact live owner, and per-owner active cap; only then does it run the producer, mint kind-N, and register the record. | 21 | 21 |
SHELL-MANAGED-ENVPer-execution managed DSH environment registry | packages/shell/shell-env/src/index.ts:81-216 | The registry validates contributor and key ownership, collects built-ins plus current contributions per call, sorts and freezes them, and exposes an optional JSONL location through the persistence seam. | 21 | 21 |
SHELL-OUTPUT-SPILLBounded tail collector and trustworthy spill protocol | packages/subprocess/subprocess-local/src/spawn.ts:84-247 | The local collector retains an exact byte tail, uses a private directory and exclusive mode-0600 spill, deletes it beyond the completeness cap, exposes lossy offset reads, and suppresses paths after seal failure. | 21 | 21 |
SHELL-PERSISTENT-BASHPersistent Bash marker protocol and per-owner serialization | packages/shell/tool-bash-persistent/src/index.ts:62-398 | The wrapper uses random markers, scrollback, and a per-owner promise queue to delimit commands; timeout, abort, send failure, or shell exit resets the PTY, while nonzero exit is a marker result. | 21 | 21 |
SHELL-PROCESS-TREELocal process-tree signalling and quiescence | packages/subprocess/subprocess-local/src/spawn.ts:253-543 | POSIX uses a detached process group for TERM-to-KILL and continues probing group liveness; Windows requests tree termination through taskkill /T /F, while waitForExit uses direct-child exit as its observable proxy. | 21 | 21 |
SHELL-PTY-CLEANUPIdentity-fenced PTY signalling and cleanup | packages/subprocess/subprocess-local/src/terminal.ts:93-248 | The PTY rejects direct SIGKILL to the top-level shell, tracks descendants by PID plus start identity, and verifies quiescence through descendants-shell-descendants TERM/KILL cleanup, failing if survivors remain. | 21 | 21 |
SHELL-PTY-READINESSPTY readiness inference, interrupt, and close quiescence | packages/terminal/terminal-bash/src/session.ts:225-564 | Readiness combines session exit, a controlled prompt plus foreground group, exact stdin wait, and silence inference; cancellation sends real SIGINT and close awaits termination plus completion. | 21 | 21 |
SHELL-PWSH-CWD-GAPPowerShell raw Session-cwd resolution | packages/shell/tool-pwsh/src/index.ts:147-158 | PowerShell defaults directly to session.header.cwd and resolves relative workdir against it, without Bash's policy-root preference and canonicalPath step. | 21 | 21 |
SHELL-PWSH-INJECTCurrent PowerShell inject declaration | packages/shell/tool-pwsh/src/index.ts:42-50 | Current production source declares tools/shell/systemPrompt/shellEnv, directly demonstrating drift in the README list. | 21 | 21 |
SHELL-SPAWN-CONTRACTExplicit subprocess spawn, output, and handle contract | packages/subprocess/subprocess/src/types.ts:55-193 | The spawn spec explicitly carries argv, cwd, stdio, grace, signal, and env; done rejects only on spawn failure, collected output uses independent byte offsets, and terminate/wait are tree-scoped. | 21 | 21 |
SHELL-SUBPROCESS-SEAMSubprocess execution-world and lifecycle seam | packages/subprocess/subprocess/src/index.ts:37-139 | Defines the shared environment scrub and the contracts for executables, ordinary processes, PTYs, tree-scoped termination, output reads, and service disposal. | 21 | 21 |
SHELL-TERMINAL-SERVICEExact-Agent PTY publication, ownership, and close | packages/terminal/terminal/src/index.ts:104-405 | The Terminal service reserves name/spawn, rechecks the exact live owner before publication, allows one active send per session, fences every operation by owner, and deletes only after quiescent, retryable close. | 21 | 21 |
SHELL-TERMINAL-TOOLSSix owner-scoped Terminal tools and background send | packages/terminal/tool-terminal/src/index.ts:157-399 | Defines open, send, read, signal, close, and list; every call requires an Agent, and background send hands an exclusive operation, cancellation, and bounded output to a pty-send Job. | 21 | 21 |
TINV-BUILT-COMPANIONSBuilt companion verification | scripts/verify-built-package-invariants.mjs:31-82 | Stages manifest-declared lib files, imports companions through package exports with plain Node, and checks the Loader-consumable namespace shape. | 32 | 32 |
TINV-CI-CONSUMERSActual gate closure of the consumer job | scripts/run-gates.ts:374-419 | The consumer graph assembles build, publint, built companions, snapshots, browser snapshots, documentation typecheck, Node-next types, and built-bin smoke with explicit dependencies. | 32 | 32 |
TINV-COMPANION-GATESource companion gate | scripts/package-invariants.ts:11-286 | Scans package topology and checks companion exports, dependencies, AST shape, owner names, reporter use, and explicit no-runtime-rule explanations. | 32 | 32 |
TINV-CONFIG-CATALOGConfiguration-catalog generation contract | scripts/gen-config-catalog.ts:1-7 | Declares that the catalog comes from entries, config types, JSDoc, and static schemas, with schema paths required to exist on declared types. | 32 | 32 |
TINV-CONFIG-CATALOG-CHECKConfiguration-catalog path and freshness checks | scripts/gen-config-catalog.ts:719-875 | Folds composed schemas, checks config types path by path, renders deterministically, and byte-checks the committed catalog under --check. | 32 | 32 |
TINV-CONFIG-CLOSURECordis configuration closure | scripts/verify-cordis-config.ts:72-364 | Scans Loader YAML, recursively traverses entries, inserts, and include patches, and validates example, app, and bundle dependencies, source-plane mappings, and string-selected backend closure. | 32 | 32 |
TINV-CONFIG-METADATADynamic configuration metadata validation | scripts/verify-cordis-config.ts:1-471 | Rejects !!js in metadata fields that Loader does not interpolate and parse-checks the allowed entry-level disabled expression without executing it. | 32 | 32 |
TINV-CORDIS-CATALOGCordis API projection and freshness | scripts/gen-cordis-catalog.ts:701-918 | Generates runtime APIs and bilingual documentation regions from discovered services and events, enforces partition closure, and checks every committed output. | 32 | 32 |
TINV-DOC-SYNCDocumentation-sync aggregate gate | scripts/run-gates.ts:571-615 | Combines source projections, catalogs, examples, types, and generated-document checks into doc-sync leaf gates. | 32 | 32 |
TINV-LOOP-REQUESTAgent-loop request invariant | packages/core/agent-loop/src/invariant.ts:18-55 | Compares the outgoing frozen request, messages, and headers against expected input derived from the Session durable log. | 32 | 32 |
TINV-REGISTRYRuntime invariant registry | packages/runtime-diagnostics/invariants/src/index.ts:49-197 | Implements pre-filter name reservation, per-installer child fibers, package-attributed failures, atomic rollback, and ordered disposal. | 32 | 32 |
TINV-REPLAY-DERIVEDeriving replay scripts from durable logs | packages/test-support/llm-replay/src/index.ts:1-263 | Splits calls at terminal chunks, reconstructs marked local compaction calls, and requires explicit overrides for throw or hang behavior. | 32 | 32 |
TINV-RUNTIME-CLOSURERuntime dependency closure | scripts/verify-runtime-closure.ts:24-73 | Traverses reachable workspace dependencies and optional dependencies from deployment-manifest roots, rejecting required workspace peers that the root manifest does not explicitly supply. | 32 | 32 |
TINV-SESSION-COMMITSession post-commit guard | packages/core/session/src/invariant.ts:189-242 | Seeds the validation baseline from existing durable events and applies the staged transition only after session/event publishes successfully. | 32 | 32 |
TINV-SESSION-RULESSession precommit rules | packages/core/session/src/invariant.ts:22-165 | Requires precommit purity, legal stages for core execution events, and the prior-call relationship for append-mode tool results with the TOOL_NOT_STARTED exception. | 32 | 32 |
TINV-SNAPSHOT-GATESnapshot gate assembly | scripts/run-gates.ts:497-527 | Defines a snapshot gate that depends on build by default and pins DSH_EXAMPLE_MODE=lib; example and package snapshots use built artifacts while script snapshots use real source entries. | 32 | 32 |
TINV-SNAPSHOT-SCENARIO-MODEMode-aware concurrency for ACP scenarios | packages/test-support/acp-snapshot/src/suite.ts:1080-1098 | The ACP snapshot suite uses describe.concurrent only in replay mode; record and refresh use serial describe. | 32 | 32 |
TINV-TEST-HOSTExhaustive invariant test host | scripts/test-invariants.ts:67-272 | Selects the owner companion from the test path; the dedicated topology path selects every companion, and a readiness barrier makes the target wait for companion activation. | 32 | 32 |
TINV-TYPE-EQUIVDocumentation type-equivalence check | scripts/verify-type-equiv.ts:199-300 | Scans all documentation blocks, partitions paired-language copies as derivatives, and requires primary blocks to correspond one-to-one with the manifest and match source structure and JSDoc. | 32 | 32 |
TINV-WINE-RUNNERSubstantive checks in the Wine Windows runner | scripts/wine-windows-gates.sh:31-282 | The runner verifies the Windows Node archive checksum and win32 x64 identity, then runs Host and Client build plus VitePress production-site build as its two surfaces. | 32 | 32, 34 |
TOOL-CANCELLATIONCaller and wrapper signal fusion and the two cancellation outcomes | packages/core/tools/src/index.ts:1880-1944 | A dispatch-scoped relay watches caller and wrapper signals and cleans up at settlement; cancellation maps to ABORTED or ABORTED_BEFORE_DISPATCH according to whether the body started and preserves existing additional contexts. | 16 | 16 |
TOOL-CANONICAL-OUTPUTCanonical-value validation, pure projections, and final materialization | packages/core/tools/src/index.ts:1783-1862 | The registry snapshots and validates body or policy values, runs render and metadata projections, marks canonical results with the execution token, renormalizes unmarked wrapper successes, and freezes a durable projection that omits the value. | 16 | 16 |
TOOL-CODE-RUNTIME-WINDOWThe unbound Code-runtime window between assembly and execution | packages/core/tools/src/index.ts:1003-1028 | The runtime is read live during prompt assembly and again during run_code execution; source explicitly records that a cross-language hot reload could hand a program written for one SDK to another runtime and defers request binding. | 16 | 16 |
TOOL-DECISIONSPre and post decision vocabulary and monotonic guards | packages/core/tools/src/index.ts:580-711 | Pre decisions can only allow, deny, or ask and deliberately cannot rewrite arguments; post may accept, replace one projection, add context, or block; a guard can return a reason or abstain but cannot force allow. | 16 | 16 |
TOOL-DEFINE-HELPERHard execution validation and soft replay validation in defineTool | packages/core/tools/src/schema.ts:538-616 | The helper compiles schemas, hard-validates arguments before the body with INVALID_ARGS, makes presenters and the concurrency classifier fail softly for old or invalid arguments, and binds typed output projectors. | 16 | 16 |
TOOL-DEFINITIONCanonical output, execution, and presentation contracts in ToolDefinition | packages/core/tools/src/index.ts:212-301 | A definition combines model schema, canonical output schema/render/meta, body, timeout and concurrency metadata, finalization, and pure UI presenters while explicitly separating successful values from durable content. | 16 | 16, 17 |
TOOL-EXECUTION-IDENTITYRoot, call, and token identity, nested parentage, and result control signals | packages/core/tools/src/index.ts:304-472 | ToolExecutionInput distinguishes root calls, opaque parent tokens, Agent, and caller signal; registry executions add an unforgeable token, while ToolRunContext carries control only through deferContext and concludeTurn on its own result. | 16 | 16 |
TOOL-HOST-PRESENTERHost pairing and fail-soft fallback for live and replay presenters | packages/host/apiproxy/src/api-proxy.ts:735-779 | The Host computes call and result views from the current scoped definition and looks up result arguments; a cross-page missing call, JSON parse error, or presenter throw only omits the view while the original event still ships for generic client fallback. | 16 | 16, 17 |
TOOL-LOOP-COMMITAgent-loop commits for tool calls, ordered results, and context | packages/core/agent-loop/src/tool-calls.ts:59-289 | The loop appends raw tool/call before prepare, runs the staged registry, commits final tool/result in model order citing the call seq, then accepts additional context and concludesTurn; cancelled unstarted calls receive synthetic pairs. | 16 | 16 |
TOOL-PIPELINE-DISPATCHAround dispatch, caller-signal fusion, body execution, and deferred context | packages/core/tools/src/index.ts:1527-1599 | The registry fuses wrapper and original caller signals, resolves the current definition, awaits body quiescence, validates a successful value, restores the wrapper signal, and normalizes around results and body-deferred contexts; pipeline throws become final errors. | 16 | 16 |
TOOL-PIPELINE-FINALIZECaptured finalizer, double materialization, and observer containment after post | packages/core/tools/src/index.ts:1601-1675 | Finalization runs post and rechecks cancellation, materializes the candidate, invokes the content-only finalizer captured at call start, materializes and freezes again, and contains all synchronous and asynchronous result-observer failures. | 16 | 16 |
TOOL-PIPELINE-PREPAREExecution creation, argument materialization, and the ordered pre/guard gate | packages/core/tools/src/index.ts:1328-1506 | The registry mints a token, snapshots and freezes arguments, handles Code Mode collapse and pre-dispatch aborts, then runs scoped pre-policy, approval, and monotonic guards, normalizing ordinary policy failures into staged results. | 16 | 16 |
TOOL-POST-POLICYValue or content replacement, blocking, and context rules in post-execute | packages/core/tools/src/index.ts:1731-1781 | Post accept may replace value or content but not both; value reruns canonical projection and cannot replace a failure, while block discards body contexts and keeps only contexts explicitly supplied by the blocker. | 16 | 16 |
TOOL-PRESENTATION-INTENTSProvider-neutral call and result render-intent vocabulary | packages/core/tools/src/presentation.ts:1-388 | Core defines generic, terminal, and diff pending cards plus generic, terminal, diff, search, read, and web completed cards, with structured fields for follow-along, truncation, line views, and citations independent of a particular UI. | 16 | 16, 17 |
TOOL-PRESENTATION-MODESNative, Code, Both, and per-scope presentation | packages/core/tools/src/index.ts:650-1001 | Configuration or scoped presentAs selects native, code, or both; Code Mode adds the collapse instruction, typed SDK, and reserved run_code and filters Provider schemas to the transport only under code while retaining the SDK end-capability view. | 16 | 16 |
TOOL-REGISTRATIONRegistration-validation boundary for raw ToolDefinition values | packages/core/tools/src/index.ts:1030-1061 | Registration checks the output contract, supported output schema, timeout, and reserved name and inserts the live definition in the calling scope; it does not wrap raw definitions with per-call parameter validation. | 16 | 16 |
TOOL-RESULT-TYPESToolExecutionResult and pre/post decision unions | packages/core/tools/src/index.ts:555-600 | A success carries an execution-local value, content, metadata, context, and optional concludesTurn, while a failure has no value; pre decisions are allow, deny, or ask and post decisions accept, replace value or content, or block. | 16 | 16 |
TOOL-RUNTIME-INVARIANTInvariant for tool-pipeline order, freezing, and Code dispatch lineage | packages/core/tools/src/invariant.ts:17-120 | The companion checks pre, execute, and post stage order per execution, frozen final execution, result, and content with nonempty identity, and nested Code dispatch root/parent lineage within an open Turn. | 16 | 16 |
TOOL-SCHEMA-PROJECTIONModel-schema allowlist, Code SDK output schema, and fail-closed classification | packages/core/tools/src/index.ts:1228-1285 | Native schemas project only detached name, description, and parameters, the Code SDK additionally carries output schemas, and executionMode is parallel only for an exact true while absence, invalid input, or exceptions are exclusive. | 16 | 16, 17 |
TOOL-SCHEMA-SUBSETThe enforced JSON Schema subset and stack-safe validator | packages/core/tools/src/json-schema.ts:1-430 | The schema vocabulary is limited to types, oneOf, container and literal constraints, and lossless annotations; it rejects unknown keywords, cycles, exotic records, and sparse arrays and uses an explicit task stack for path-qualified violations. | 16 | 16 |
TOOL-SCOPE-VIEWScoped restrictions, shadowing, guards, and one visibility resolver | packages/core/tools/src/index.ts:1064-1226 | Restrictions intersect along the chain and filter inherited capability while exempting and allowing shadows from own registrations; global and chain guards can only deny, and get, schema, and dispatch resolve from the same live view. | 16 | 16 |
TOOLCAT-GENERATORCatalog completeness guards, isolated package boots, and schema rendering | scripts/gen-tool-catalog.ts:556-704 | The generator rejects omitted on-disk tool packages and pending boots that harvest zero schemas, then uses a fresh Context per package to load ToolRuntime, collect scoped schemas, dispose, and render name, description, parameters, and source. | 17 | 17 |
WEBUI-BOOT-SETTLETwo-phase boot and the all-ACTIVE gate | packages/client/web/src/boot.tsx:150-237 | Boot settles the immediately-prefetch barrier, leaving individual failures for import retry and reporting, before creating Loader entries and verifying every root fiber is ACTIVE. | 30 | 30 |
WEBUI-BROWSER-CONTEXTBrowser Cordis Context boot | packages/client/web/src/boot.tsx:97-143 | The page parses the boot graph, constructs ClientModuleSystem and an independent Context, then enters browser boot. | 30 | 30 |
WEBUI-CHAT-STORESession-scoped Chat UI store | packages/client/ui-conversation/src/client/stores.ts:1-34 | The chat-store handle defines selection, draft, view, inspect state, a persistence key, and the sole action set. | 30 | 30 |
WEBUI-COLD-SESSION-DISPATCHCold-session frame dispatch policy | packages/client/runtime/src/client/sessions/manager.ts:675-789 | An uninstantiated session drops ordinary events; projections and jobs land in manager mirrors, while only interactions and queue snapshots unrecoverable from history enter the replay buffer. | 30 | 30 |
WEBUI-CONNECTION-GENERATIONWebSocket generations and backoff | packages/client/connection/src/client/connection.ts:19-201 | One generation opens mux and host streams plus describe concurrently; after readiness settles, stream loss reaches shared backoff. The dual-onOpen wait has a three-second guard, but describe has no generation signal/timeout and can wedge reconnect after a stream has ended; sink failures are isolated. | 30 | 30, 33 |
WEBUI-CONVERSATION-DEFINITIONConversation Definition contract | packages/client/runtime/src/client/contract/conversation.ts:164-227 | A Definition specifies event-only matching, stable ids, start/update folding, location data, and target-specific view-node construction. | 30 | 30 |
WEBUI-CONVERSATION-FOLDConversation Context fold rules | packages/client/runtime/src/client/sessions/conversation-assembler.ts:337-446 | Multiple Definitions may claim one event; Contexts group by kind and id, duplicate starts and unordered updates fail, and fallback handles only unclaimed targets. | 30 | 30 |
WEBUI-CONVERSATION-INCREMENTALIncremental Conversation append and prepend | packages/client/runtime/src/client/sessions/conversation-assembler.ts:162-257 | replaceWindow handles complete windows and registry rebuilds; append processes only the new event and location-dependent Contexts, while prepend accepts only fresh events and replays the affected closure. | 30 | 30 |
WEBUI-CONVERSATION-VIEW-VALIDATIONConversation view-node stability validation | packages/client/runtime/src/client/sessions/conversation-assembler.ts:707-743 | The assembler validates that buildViewNode returns the requested target and a key stable for the same Context and target. | 30 | 30 |
WEBUI-FOUR-SHARESType composition of four props shares | packages/client/ui-slots/src/index.ts:200-450 | The type layer derives the runtime share from SlotMap owner/key/scope/slot inject, and the other shares from parent-registration children, store, and business inject before composing ComposedProps. | 30 | 30 |
WEBUI-GENERIC-TOOLVIEWGeneric Tool renderer dispatch | packages/client/ui-tool/src/client/tool/toolviews/GenericToolCard.tsx:36-77 | GenericToolCard selects terminal, read, diff, search, web, and other generic cards from the pure model variant. | 30 | 30 |
WEBUI-HMR-HOSTHost HMR graph and SSE | packages/client/hmr/src/index.ts:30-190 | Host HMR polls bundles by default, updates revisions on content changes, and publishes graph and rebuilt messages through its event endpoint. | 30 | 30 |
WEBUI-HMR-SWAPBrowser HMR swap order | packages/client/hmr/src/client/index.ts:1-180 | The browser serializes rebuilt handling, invalidates and prefetches first, then drains the old fiber, removes styles, and refreshes without rollback; Cordis activation epochs cascade provider-fiber replacement. | 30 | 30 |
WEBUI-HOST-GRAPHHost-side client graph publication | packages/client/modules/src/index.ts:184-419 | ClientModuleRegistry scans Loader entries, accepts those with a fiber, not disabled, and declaring a Web client, registers bundle routes, and injects the current graph into the page. | 30 | 30 |
WEBUI-LAZY-MODULESLazy module materialization | packages/client/modules/src/client/system.ts:77-195 | The client module system separates script arrival from factory execution and owns require/import, caching, cycle checks, styles, and invalidation. | 30 | 30 |
WEBUI-LAZY-SESSIONLazy Session instantiation | packages/client/runtime/src/client/sessions/manager.ts:254-320 | SessionManager creates a Session only on resolution or open and applies buffered cold interactions to the new instance. | 30 | 30 |
WEBUI-LIST-REFETCHSingle-flight session-list refetch | packages/client/runtime/src/client/sessions/manager.ts:438-470 | refreshList is single-flight and replays live mutations observed during the request over the returned baseline. | 30 | 30 |
WEBUI-LOCALE-INSTALLLocale service and settings-row installation | packages/client/locale/src/client/index.ts:346-391 | The locale plugin installs LocaleFace into SlotRegistry and registers its Language preference row in General settings. | 30 | 30 |
WEBUI-LOCALE-OWNERLocaleRuntime ownership of language and dictionaries | packages/client/locale/src/client/index.ts:104-207 | LocaleRuntime owns provisional and active locale, Host-settings synchronization, dictionary revision, namespace fallback, and paired zh/en registration. | 30 | 30 |
WEBUI-LOCATION-INDEXConversation location index | packages/client/runtime/src/client/sessions/conversation-location-index.ts:201-464 | The location index preserves unchanged Turn and Step object references and returns changed sequences; boundary append revisits only sequences owned by that Turn. | 30 | 30 |
WEBUI-MANAGER-RECONNECTSessionManager reconnect resync | packages/client/runtime/src/client/sessions/manager.ts:878-909 | Reconnect refreshes the session list and open subagent catalogs, then starts resync for resident Sessions. | 30 | 30 |
WEBUI-MANIFEST-CONTRACTManifest wire contract | packages/client/modules/src/client/manifest.ts:43-143 | A manifest row defines id, url, rev, inject, and immediately; the parser validates row-field shape and splits module and plugin views. | 30 | 30, 33 |
WEBUI-REACT-BINDINGReact binding for bare snapshot sources | packages/client/web-react/src/bind.ts:1-24 | bindSnapshotSelector converts a getSnapshot/subscribe source into a useSyncExternalStoreWithSelector hook. | 30 | 30 |
WEBUI-RENDER-KITReact props composition for a Slot entry | packages/client/web-react/src/scoped-slots.tsx:343-470 | At the terminal layer, the renderer composes global and session hooks, projection, store, renderSlot, SessionProvider, locale, and business props. | 30 | 30 |
WEBUI-ROOT-DECLARATIONui-layout declares root-level children | packages/client/ui-layout/src/client/index.ts:120-137 | ui-layout registers the root entry and declares sidebar, conversation, details, and shell.overlay as children. | 30 | 30 |
WEBUI-RUNTIME-RECONNECTRuntime actions across connection generations | packages/client/runtime/src/client/index.ts:204-232 | Death of an old generation clears pending interactions; a ready replacement refreshes session and workspace baselines and emits connection/reset. | 30 | 30 |
WEBUI-RUNTIME-STORE-OWNERRuntime owns the snapshot-store engine | packages/client/runtime/src/client/index.ts:69-73 | runtime constructs SnapshotStoreEngine outside React as the state substrate for later object services. | 30 | 30 |
WEBUI-RUNTIME-WIRINGReact-free runtime wiring | packages/client/runtime/src/client/index.ts:182-232 | runtime creates Slot, Conversation, Session, and Workspace object services and routes mux, host, and remote frames into that object layer. | 30 | 30 |
WEBUI-SELECTION-ADDRESSABILITYAddressability gate for the selected Session | packages/client/runtime/src/client/sessions/manager.ts:1020-1075 | The manager projects current only when the selected id remains in list items or the retained subagent-address map, and exposes currentAddress only for that addressable current. | 30 | 30 |
WEBUI-SESSION-GAP-REPAIRSession sequence windows and gap repair | packages/client/runtime/src/client/sessions/session.ts:612-724 | Session installs a contiguous history window, stitches live buffers by sequence, and repairs holes by buffering later frames and repulling history instead of publishing a gapped sequence. | 30 | 30, 33 |
WEBUI-SESSION-PROVIDERKeyed remount in strict SessionProvider | packages/client/web-react/src/session-provider.tsx:119-159 | The root provider follows current; a strict provider requires sessionId and uses it as the key that remounts the session subtree. | 30 | 30 |
WEBUI-SESSION-RESYNCOpen-state gate on Session reconnect resync | packages/client/runtime/src/client/sessions/session.ts:412-425 | resync no-ops for a cold Session that has never opened; only an open or opening Session advances generation, clears the old window, and opens again. | 30 | 30 |
WEBUI-SESSION-RUNTIMESessionRuntime ownership of selection and provide | packages/client/runtime/src/client/sessions/service.ts:228-365 | SessionRuntime owns the list, persisted selection, manager, scope map, and current provide bundle; provider-roster changes rebuild materialized bundles. | 30 | 30 |
WEBUI-SESSION-SCOPE-LIFECYCLESession-scope resolution and pruning | packages/client/runtime/src/client/sessions/service.ts:599-766 | resolve lazily creates the Cordis scope, Session, binding, and sources; off-stage prune disposes them, while removal during staging defers until the stage moves. | 30 | 30 |
WEBUI-SESSION-SELECTIONSession-selection projection and persistence | packages/client/runtime/src/client/sessions/service.ts:659-733 | The service persists an addressable current; a masked gap clears the persisted cell while the manager's in-process selection may resurface when the row returns. | 30 | 30 |
WEBUI-SETTINGS-SCOPESettingsScope concurrency and recovery semantics | packages/client/ui-settings/src/client/settings-scope.ts:35-269 | Each namespace serializes reads and writes and carries expectedRevision; a stale read may advance revision/base/user metadata but does not publish decoded value/status. Failures or invalidation refetch, and non-loopback uses memory mode. | 30 | 30 |
WEBUI-SETTINGS-SHELLGeneral-settings Slot shell | packages/client/ui-settings-general/src/client/index.ts:84-177 | ui-settings-general occupies sidebar.settings, declares its child locations, and derives navigation and copy from the Slot ledger and locale revision. | 30 | 30 |
WEBUI-SHELL-INSTALLApp-shell renderer installation | packages/client/web/src/app-shell.ts:29-49 | app-shell waits for slots, sessions, and layout, installs the React Slot renderer, and exports a stable renderApp closure. | 30 | 30 |
WEBUI-SHELL-ROOTRoot Slot assembly | packages/client/web/src/app.tsx:26-43 | The final App assembly only subscribes to the session title and calls renderSlot('root', {}), without enumerating business UI packages. | 30 | 30 |
WEBUI-SINGLE-STAGE-LIMITCurrent single-stage session model | packages/client/runtime/src/client/sessions/service.ts:599-766 | One current drives a single staged occupant; an absent current or masked gap retains the previous occupant, and a removed-while-staged scope stays frozen until the next stage move. | 30 | 30 |
WEBUI-SLOT-CASCADEDeclared-subtree cascade disposal | packages/client/ui-slots/src/index.ts:1123-1148 | An entry disposer recursively removes descendant registrations and declarations rooted in its children. | 30 | 30, 33 |
WEBUI-SLOT-CORE-COMMITAtomic Slot registration commit | packages/client/ui-slots/src/index.ts:787-895 | Before commit, SlotCore validates declarations, kind parameters, child conflicts, and store scope, then writes the ledger atomically. | 30 | 30 |
WEBUI-SLOT-DECL-INJECTDeclaration-gated Slot injection | packages/client/runtime/src/client/slots.ts:128-204 | inject waits for a target declaration, activates and disposes across declaration epochs, and binds the wait and callback effect to the caller's fiber. | 30 | 30 |
WEBUI-SLOT-TYPE-CONTRACTSlotMap and children type contract | packages/client/ui-slots/src/index.ts:90-145 | SlotMap defines each location's kind, scope, and owner props; registration children define the child Slots that may be declared and rendered. | 30 | 30 |
WEBUI-STALE-AUTHORIZATIONRuntime revalidation of renderSlot authorization | packages/client/web-react/src/scoped-slots.tsx:31-88 | Every child render revalidates entry liveness in the ledger and children authorization, rejecting stale closures and undeclared keys. | 30 | 30 |
WEBUI-STORE-CONTRACTSlot-store read/write contract | packages/client/ui-slots/src/store.ts:19-125 | A store handle declares state and actions; component props expose selector reads and baked actions rather than instance set/update. | 30 | 30 |
WEBUI-STORE-SCOPE-LIFECYCLESlot-store scope caching and cleanup | packages/client/runtime/src/client/slots.ts:264-456 | Store instances are cached by handle and root/session scope key; session-scope pruning removes both the instance and its persisted value. | 30 | 30 |
WEBUI-THEME-DOMThemePresenter DOM-write boundary | packages/client/ui-layout/src/client/theme-presenter.ts:1-61 | ThemePresenter projects only color-scheme, the dark attribute, owned CSS variables, and meta theme-color, and can clean up those writes. | 30 | 30 |
WEBUI-THEME-OWNERThemeRuntime ownership of preference and tokens | packages/client/ui-theme/src/client/index.ts:139-238 | ThemeRuntime owns light/dark/system, the system media query, token layers, and theme/change without writing the DOM directly. | 30 | 30 |
WEBUI-THEME-PRESENTEREvent-driven ThemePresenter installation | packages/client/ui-layout/src/client/index.ts:145-155 | ui-layout applies the initial ThemeRuntime snapshot, subscribes to theme/change, and cleans up the presenter on fiber disposal. | 30 | 30 |
WEBUI-TOOL-DISPATCHRecursive ToolCallTree keyed dispatch | packages/client/ui-tool/src/client/tool/ToolCallTree.tsx:13-104 | Root calls and subCalls recursively enter the toolview Slot through the same wire-name key; an unregistered key uses GenericToolCard fallback. | 30 | 30 |
WEBUI-TOOL-LOCAL-STATEComponent-local state in a Tool row | packages/client/ui-tool/src/client/tool/components/ToolRow.tsx:128-180 | ToolRow keeps expanded in React useState, making that transient presentation state follow component lifecycle. | 30 | 30 |
WEBUI-TOOL-MODELPure derived model from a frozen Tool block | packages/client/ui-tool/src/client/tool/models/tool-call-model.ts:204-240 | The tool-call model purely derives variant, lifecycle, summary, path, input, and output from the frozen block and wire name. | 30 | 30 |
WEBUI-TOOL-REGISTRATIONTool UI Slot registration | packages/client/ui-tool/src/client/apply.ts:22-44 | ui-tool registers the tool-call Chat node, declares a keyed toolview child, and independently installs generic and specialized tool views. | 30 | 30 |
WEBUI-TOOLVIEW-CONTRACTAtomic ToolView props contract | packages/client/ui-tool/src/client/contract/slots.ts:7-49 | Toolview owner props carry only callId, wire tool name, frozen block, cwd, a Host-bound openFile callback, and a local inspect callback in a session-scoped keyed Slot. | 30 | 30 |
WORKFLOW-AGENT-OPTIONSClosed agent() option set and schema validation | packages/workflow/workflow-worker-thread/src/runtime.ts:347-398 | The runtime accepts only label, phase, schema, provider, and model, explicitly rejects deferred/unknown options, and constrains the object-rooted JSON Schema subset. | 25 | 25 |
WORKFLOW-AGENT-RESULTagent() result, failure, and disposal semantics | packages/workflow/workflow-worker-thread/src/runtime.ts:249-345 | Within a slot the call starts a child; completion returns text or structured data, ordinary failure/missing structured data returns null, infrastructure rejection is fatal, and disposal always runs. | 25 | 25 |
WORKFLOW-CANCEL-BOUNDARYHook-boundary cancellation and never-reject drive | packages/workflow/workflow-worker-thread/src/runtime.ts:116-187 | Cancellation rejects queued slots and makes every later hook throw CANCELLED; drive checks settlement around the initial VM timeout and normalizes every failure into a result. | 25 | 25 |
WORKFLOW-CANCEL-RACEFirst-wins settlement between result and cancellation | packages/workflow/workflow-worker-thread/src/host.ts:486-516 | The host atomically claims terminal ownership before cleanup; an earlier result stays, while an already accepted cancellation turns a racing non-cancel result into cancelled. | 25 | 25 |
WORKFLOW-CAPSDeployment limits of the workflow worker | packages/workflow/workflow-worker-thread/src/index.ts:31-48 | Configuration separates concurrent children, total children per run, items per combinator, synchronous slice, and disposal grace; concurrency auto-resolves from CPU count. | 25 | 25, 33 |
WORKFLOW-CHILD-BRIDGEHost child bridge to the Subagent seam | packages/workflow/workflow-worker-thread/src/host.ts:329-412 | After its admission gate, the host starts a child with parent, shared signal, schema, and provider/model overrides, then forwards a snapshotted result after publishing the handle. | 25 | 25 |
WORKFLOW-CHILD-QUIESCENCEDeduplicated child disposal and quiescence | packages/workflow/workflow-worker-thread/src/host.ts:414-483 | Each child disposal is memoized; quiescence waits for both pending provider starts and published children, with failures logged and contained. | 25 | 25 |
WORKFLOW-CHILD-SNAPSHOTWorker-boundary snapshot of child results | packages/workflow/workflow-worker-thread/src/host.ts:385-412 | The host snapshots output, structured data, and stop reason as JSON; inability to cross losslessly is returned as a child infrastructure failure. | 25 | 25 |
WORKFLOW-COMBINATORSparallel barrier and per-item pipeline | packages/workflow/workflow-worker-thread/src/runtime.ts:400-466 | parallel applies Promise.all to all thunks; pipeline moves each item independently through every stage with no cross-stage barrier; ordinary errors become null and fatal errors propagate. | 25 | 25 |
WORKFLOW-DISPOSEBounded cleanup transaction of workflow disposal | packages/workflow/workflow-worker-thread/src/host.ts:206-251 | Memoized disposal immediately drives child cleanup, waits for result and quiescence within the same grace, then unconditionally terminates the worker and performs a final sweep. | 25 | 25 |
WORKFLOW-DURABLE-RECORDDurable root-workflow projection and degradation | packages/workflow/tool-workflow/src/index.ts:69-330 | The recorder filters lifecycle events by run and disables that run after append failure; execute records only root transport calls and writes run-end after disposal/quiescence. | 25 | 25 |
WORKFLOW-ERROR-TAXONOMYMachine-routable fatal WorkflowError taxonomy | packages/workflow/workflow/src/index.ts:102-148 | Parse, meta, arguments, options/schema, caps, child infrastructure, JSON boundary, and cancellation have codes; ordinary child failure is outside the fatal taxonomy. | 25 | 25 |
WORKFLOW-EVENT-PAIRINGExactly-once end ledger for every published child | packages/workflow/workflow-worker-thread/src/host.ts:553-582 | A live host ledger guarantees exactly one agent-end for every forwarded agent-start and synthesizes a cancelled end when the worker can no longer speak. | 25 | 25 |
WORKFLOW-EVENTSObserve-only workflow event vocabulary | packages/workflow/workflow/src/index.ts:36-100 | The seam defines start, phase, log, agent-start, agent-end, and end; phases have no execution semantics, events expose no control handle, and end omits the result value. | 25 | 25 |
WORKFLOW-FATALITYUnforgeable fatality routing inside combinators | packages/workflow/workflow-worker-thread/src/runtime.ts:400-455 | parallel and pipeline rethrow only host-realm fatal WorkflowErrors, while ordinary script throws map to per-item null. | 25 | 25 |
WORKFLOW-HMR-HOLDERHolder-bound dependency lifetime of an accepted run | packages/workflow/workflow-worker-thread/src/index.ts:164-180 | The engine captures the subagent handle before returning, allowing an existing run to keep starting and cleaning children after engine HMR unload. | 25 | 25 |
WORKFLOW-JSON-BOUNDARYLossless JSON materialization boundary | packages/workflow/workflow-worker-thread/src/realm.ts:42-151 | Cross-realm copying rejects values JSON cannot preserve, cycles, sparse arrays, exotic prototypes, and symbol keys while safely retaining a __proto__ data key. | 25 | 25 |
WORKFLOW-LIFECYCLEWorkflowEngine lifecycle contract | packages/workflow/workflow/src/index.ts:150-186 | Invalid requests throw before publication; the holder owns a live run, cancellation and disposal are bounded, listener failures are contained, and end follows result settlement exactly once. | 25 | 25, 33 |
WORKFLOW-METAComplete workflow metadata validation and normalized copy | packages/workflow/workflow-worker-thread/src/meta.ts:12-82 | The validator collects unknown, missing, and mistyped fields and phases, then builds a normalized non-aliasing copy only from validated fields. | 25 | 25 |
WORKFLOW-REALM-TRUSTExplicit trust premise that the VM is not a security boundary | packages/workflow/workflow-worker-thread/src/realm.ts:1-39 | The source calls the VM escapable and limits it to host-loop isolation and termination; getters, proxies, and thrown-value rendering may execute script code. | 25 | 25 |
WORKFLOW-RECORD-INVARIANTCold-load and incremental Workflow-record invariants | packages/workflow/tool-workflow/src/invariant.ts:67-163 | The fold rejects missing starts, duplicate sequences/ends, run-end with open members, and post-terminal updates, and applies to both existing Sessions and live appends. | 25 | 25 |
WORKFLOW-RECORD-TYPESBrowser-safe Workflow Session record types | packages/workflow/tool-workflow/src/types.ts:13-63 | Four log-only events record run identity/name, child sequence/label/phase/id, member outcome, and terminal reason. | 25 | 25 |
WORKFLOW-SEAMWorkflow start request and holder-owned run | packages/workflow/workflow/src/runtime-types.ts:14-49 | A request carries script, metadata, args, provider/total overrides, parent, and signal; a live run exposes a never-rejecting result, cancellation, and idempotent disposal. | 25 | 25 |
WORKFLOW-SLOTSFIFO concurrency slots and pre-queue total counting | packages/workflow/workflow-worker-thread/src/runtime.ts:222-274 | Slot waits are FIFO; total agents are counted and checked before acquisition, cancellation rejects waiters, and a post-acquire check closes races. | 25 | 25 |
WORKFLOW-START-VALIDATIONWorker-engine pre-publication validation and start | packages/workflow/workflow-worker-thread/src/index.ts:53-201 | The engine parse-checks the same wrapper, resolves provider and run ceiling, publishes start only after constructing the worker, and maps later outcomes into run settlement. | 25 | 25 |
WORKFLOW-TOOL-CONTRACTModel-facing Workflow authoring contract | packages/workflow/tool-workflow/src/index.ts:133-270 | The tool description defines meta, script, args, hooks, failures, and foreground constraints; prompt policy requires explicit large orchestration, while the consumer owns schema and rendering. | 25 | 25 |
WORKFLOW-TOOL-EXECUTEWorkflow tool execution, cancellation, and finally disposal | packages/workflow/tool-workflow/src/index.ts:272-330 | The tool requires a calling Agent, starts a foreground run, bridges abort, awaits the never-reject result, maps non-completed outcomes to errors, and disposes in finally. | 25 | 25 |
WORKFLOW-VM-GLOBALSClosed global surface of the workflow VM | packages/workflow/workflow-worker-thread/src/runtime.ts:75-114 | Each realm receives only agent, parallel, pipeline, phase, log, and args, and compiles the body in the same async wrapper. | 25 | 25 |
WORKFLOW-WORKER-SPAWNFresh worker with scrubbed environment and structured clone | packages/workflow/workflow-worker-thread/src/host.ts:32-169 | Each run creates a new Worker with ambient env and execArgv cleared, preserving only platform temp/development loader pins, while init crosses through workerData clone. | 25 | 25 |
production-test · 137
| ID | Pinned source | What this excerpt supports | First citation | All citing chapters |
|---|---|---|---|---|
AGENT-ATOMIC-TESTAtomic publication, concurrent same-ID, and creation-only signal tests | packages/core/agent-loop/tests/scope-lifecycle.spec.ts:242-365 | Tests prove both registries stay unpublished through setup, announcements are ordered, only one concurrent preparation enters, and a creation signal cannot cancel a returned live handle. | 05 | 05 |
AGENT-INBOX-TESTInbox replay, replacement, unique identity, and cancellation tests | packages/core/agent/tests/agent.spec.ts:41-142 | Tests cover invalid persisted splices, replacement across queues, duplicate MessageId rejection, and clear producing two durable canceled splices. | 05 | 05 |
AGENT-REGISTRY-TESTRegistry split-publication and stale-detach tests | packages/core/agent/tests/agent.spec.ts:258-298 | Tests prove enter and announce are separate, detach is idempotent, stale capabilities cannot delete replacements, and detach from a created listener waits for every listener to return. | 05 | 05 |
AGENT-TEARDOWN-TESTReentrant teardown ordering during creation notifications | packages/core/agent-loop/tests/scope-lifecycle.spec.ts:623-715 | Tests prove the registry remains stable for every listener during notification; rollback then unwinds scope, emits agent/disposed, and emits session/disposed in order. | 05 | 05 |
APPROVAL-ESCALATION-TESTSSandbox escalation fail-closed tests | packages/sandbox/sandbox/tests/escalation.spec.ts:20-111 | Tests cover argument pairing, strict widening, audit reasons, missing service/Agent, and every non-grant outcome. | 19 | 19 |
APPROVAL-GUARD-TESTSMonotonic scoped-guard tests | packages/core/tools/tests/scoped.spec.ts:284-375 | Tests prove a prepended allow cannot bypass an owner guard and cover global composition, scope isolation, disposal, and live registration. | 19 | 19 |
APPROVAL-PRESET-TESTSPermission preset and Session-pinning tests | packages/interaction/permission-presets/tests/permission-presets.spec.ts:67-300 | Tests cover folds, custom, shared-bundle identity, writes, configuration failures, new-Session defaults, seed/resume preservation, and HMR catch-up. | 19 | 19 |
APPROVAL-SERVICE-TESTSApprovalService behavior and policy tests | packages/interaction/user-approval/tests/approval.spec.ts:42-503 | Tests cover open turns, audit pairing, answerer failures, cancellation, fresh ids, unbypassable never, Session overrides, and model context. | 19 | 19 |
APPROVAL-TOOLS-TESTSToolRuntime approval negative-path tests | packages/core/tools/tests/tools.spec.ts:676-853 | Tests cover pre denial, missing approval seam, ask outcomes, cancellation, Agent-less calls, and rogue answers. | 19 | 19 |
APPROVAL-WEB-TESTSWeb approval registry and recovery tests | packages/host/apiproxy/tests/api-proxy-approval.spec.ts:87-329 | Tests cover round trip, stable-id replay, malformed/foreign/late responses, abort, teardown, parallel pairing, and unaudited delegation. | 19 | 19 |
CODEMODE-TEST-CLIENT-LIFECYCLEClient replacement, serialization, failure recovery, and disposal tests | packages/extensions/cordis-client-runner/tests/runner.client.spec.ts:201-344 | Tests cover new-revision replacement, per-Plugin operation serialization, queue recovery after failure, activation-failure teardown, exact retraction, and runner disposal. | 23 | 23 |
CODEMODE-TEST-DYNAMIC-GUARDDynamic Context escape and capability-gate tests | packages/extensions/cordis-host-runner/tests/sandbox-context.spec.ts:44-246 | Tests pin rejection of ctx.root bypass, Context-returning services, undeclared services, and access to live ToolDefinition.execute while preserving declared and optional-get paths. | 23 | 23 |
CODEMODE-TEST-DYNAMIC-RUNNERDynamic definition, ownership, approval, and asynchronous-failure tests | packages/extensions/cordis-host-runner/tests/runner.spec.ts:98-247 | Tests cover define-only behavior, syntax rejection, cross-session hiding, the Host-only fast path, Client approval/refusal, Client-failure unwind, and failed updates. | 23 | 23 |
CODEMODE-TEST-POLICY-FAILURENested policy, error, cancellation, and quiescence tests | packages/core/tools/tests/code-mode.spec.ts:935-1206 | Tests pin program-side rejection for tool errors, pre-execute denial, lossless JSON, context retention, CODE_RUN_FAILED, outer cancellation, and nested-work drain after runtime rejection. | 23 | 23 |
CODEMODE-TEST-PRESENTATIONCode Mode presentation-matrix regression tests | packages/core/tools/tests/code-mode.spec.ts:118-160 | Tests pin native/code/both wire schemas, SDK presence, and the code-only prompt rule, including its order before ordinary tool guidance. | 23 | 23 |
CODEMODE-TEST-SCHEDULERNested scheduler, barrier, ordering, and drain tests | packages/core/tools/tests/code-mode.spec.ts:509-799 | Tests cover concurrency-safe overlap, exclusive barriers, the cap, ordered pre/post stages, run-settlement drain, context commitment, and queued-unstarted abandonment. | 23 | 23 |
CODEMODE-TEST-VERSIONINGVersion-pointer and failure-ownership tests | packages/extensions/cordis-host-runner/tests/versioning.spec.ts:1-106 | Tests show that failed updates preserve currentPackageId while cleaning attempt state, pending approval can be cancelled and retracted, and an attaching page's failure does not stop an existing Host run. | 23 | 23 |
CODEMODE-TEST-WORKERWorker failure-budget and isolation tests | packages/code-runtime/code-runtime-worker-thread/tests/runtime.spec.ts:128-338 | Tests cover syntax/runtime exceptions, an empty environment, lossless output, busy/wall timeouts, abort, late bindings, OOM/worker exit, and the combined output cap. | 23 | 23 |
CODEMODE-TEST-WORKER-HOSTILEHostile worker-port and bidirectional JSON validation tests | packages/code-runtime/code-runtime-worker-thread/tests/runtime.spec.ts:442-603 | Tests inject unknown bindings, duplicate IDs, junk messages, forged log/done messages, and lossless-JSON violations, verifying that the host fails closed without crashing. | 23 | 23 |
COMPACT-PRUNE-TESTTests for prune-first two-mechanism composition and replayable checkpoints | packages/compaction/compaction-basic/tests/compaction-basic.spec.ts:769-879 | Test source requires no opportunistic pruning below pressure, no LLM call when pruning suffices, summarization of the pruned Surface when it does not, and checkpoint source and token price with fresh-Session replay equality. | 13 | 13 |
COMPACT-REAL-LOOP-TESTReal-loop contract tests for between-Step pressure and same-Step overflow | packages/compaction/compaction-basic/tests/compaction-loop-repro.spec.ts:217-381 | Test source requires pressure to run between the prior step/end and next step/start; overflow creates a checkpoint and retries within the same Step, removing the old sentinel from retry messages. | 13 | 13 |
DESIGN-SCOPE-TESTScope inheritance, isolation, and reverse-teardown tests | packages/core/scope/tests/scope.spec.ts:24-220 | Tests verify nearest tags, synchronous registration, shared quiescence, reverse teardown, key-based routing, and events flowing to ancestor scopes without leaking down to descendants. | 02 | 02 |
FAILURE-CANCEL-TESTAbort-to-idle latch and queued-tail cancellation tests | packages/core/agent-loop/tests/cancel.spec.ts:129-403 | Verifies latch replay, clearing, removal, slow convergence, and disposal boundaries, and pins default mid-Step cancellation dropping the entire queued tail. | 27 | 27 |
FAILURE-CANCEL-TOOL-TESTReplay-integrity test for cancellation after assistant message | packages/core/agent-loop/tests/cancel.spec.ts:405-458 | Cancellation keeps tool-body execution at zero but records a matching call and TOOL_ABORTED_BEFORE_DISPATCH result that a later request can replay. | 27 | 27 |
FAILURE-CHECKPOINT-TESTCheckpoint ordering, rejection, and cancellation tests | packages/session/session-checkpoint-policy/tests/session-checkpoint-policy.spec.ts:62-238 | Verifies adapter/tool dispatch follows flush, checkpoint rejection blocks side effects, cancellation produces the canonical not-dispatched result, and nested tools reuse the outer checkpoint. | 27 | 27 |
FAILURE-CRASH-CONTRACTBackend-agnostic crash-repair shared contract | packages/session/session-persistence/tests/contract.ts:118-265 | Pins interrupted-Turn preservation and closure, a retryable result for an unstarted tool, unknown-outcome guidance for a recorded tool, and a replayable transcript. | 27 | 27 |
FAILURE-CRASH-CONTRACT-JSONLJSONL backend instantiates the shared contract | packages/session/session-persistence-jsonl/tests/jsonl.spec.ts:102-115 | The real JSONL backend suite invokes runPersistenceContract. | 27 | 27 |
FAILURE-CRASH-CONTRACT-MEMORYIn-memory backend instantiates the shared contract | packages/session/session-persistence/tests/persistence.spec.ts:240-249 | The in-memory persistence suite invokes runPersistenceContract. | 27 | 27 |
FAILURE-CRASH-CONTRACT-SQLITESQLite backend instantiates the shared contract | packages/session/session-persistence-sqlite/tests/sqlite.spec.ts:51-60 | The real SQLite backend suite invokes the same runPersistenceContract. | 27 | 27 |
FAILURE-CRASH-E2ESIGKILL recovery E2E at model and tool boundaries | packages/session/session-checkpoint-policy/tests/crash-recovery.e2e.ts:39-110 | Hard-kills a child process to prove the complete request is durable before model dispatch and the call is durable before a tool side effect, with a missing result repaired as TOOL_OUTCOME_UNKNOWN. | 27 | 27 |
FAILURE-CRASH-FIXTUREModel-dispatch and tool-side-effect failpoints | packages/session/session-checkpoint-policy/tests/fixtures/crash-child.ts:21-60 | The child waits forever after the adapter receives a request or the tool writes its external-effect marker, giving the parent precise SIGKILL boundaries. | 27 | 27 |
FAILURE-DISPOSAL-TESTAgent teardown order, shared quiescence, and ID-reuse tests | packages/core/agent-loop/tests/scope-lifecycle.spec.ts:921-1051 | Proves turn/end precedes unregistration, concurrent disposal waits for the same boundary, and an ID cannot be reused before scope cleanup completes. | 27 | 27 |
FAILURE-DYNAMIC-CONFIG-TESTDeepSeek dynamic endpoint/key/policy/last-good tests | packages/llm/llm-deepseek/tests/dynamic-config.spec.ts:61-186 | Verifies next-request endpoint/key refresh, recovery after adding a key, in-place policy update, and no URL/key leakage from a rejected generation before later recovery. | 27 | 27 |
FAILURE-HMR-CONFIG-TESTLast-good and later recovery test for invalid config refresh | packages/boot/app-boot/tests/config-reload.spec.ts:61-84 | Both parse failure and empty-file validation failure preserve the last-good running tree, and the next valid edit replaces it successfully. | 27 | 27 |
FAILURE-HMR-USER-PATCH-TESTUser-patch HMR failure, recovery, and removal test | packages/boot/app-boot/tests/user-patches.spec.ts:315-356 | Covers add, apply failure, parse failure, recovery, and removal; failed candidates do not replace the current live configuration. | 27 | 27 |
FAILURE-JSONL-TESTJSONL torn-tail, append-only, and fsync-rollback tests | packages/session/session-persistence-jsonl/tests/jsonl.spec.ts:585-674 | Covers a torn partial line, open-event preservation and closers, byte-stable committed prefixes, and retry without a sequence gap after fsync rollback. | 27 | 27 |
FAILURE-REQUEST-TESTRequest-error narrow seam and cancellation precedence tests | packages/core/agent-loop/tests/request-error.spec.ts:30-141 | Proves middleware failures bypass recovery, repeated failures stay in Turn 1/Step 1, cancellation beats a retry action, and recovery-listener failure closes the Turn. | 27 | 27 |
FAILURE-RETRY-SEMANTICS-TESTRetry scheduling, partial-chunk isolation, and budget tests | packages/llm/llm-retry/tests/retry.spec.ts:175-344 | Verifies retry is recorded first, same-Step success, EMPTY_RESPONSE recovery, failed partial chunks do not become a message or tool side effect, and bounded exponential exhaustion. | 27 | 27 |
FAILURE-TIMEOUT-TESTTool-timeout and caller-abort race tests | packages/guard/timeout-policy/tests/timeout-policy.spec.ts:97-193 | Covers cooperative return, abort throw, caller-first, and timeout-first behavior, proving timeout still waits for the tool cleanup gate before completion. | 27 | 27 |
FAILURE-WIRE-RECOVERY-TESTReal DeepSeek HTTP/SSE transport recovery tests | packages/llm/llm-retry/tests/transport-recovery.spec.ts:85-219 | Covers refused connection, stream/partial disconnect, empty response, clean partial EOF, and stalled body while pinning identical request bodies, same-Step behavior, and default retry classification. | 27 | 27 |
INBOX-CANCEL-BEHAVIOR-TESTClaimed work, keepInbox, and latch tests | packages/core/agent-loop/tests/cancel.spec.ts:75-174 | Tests prove claimed work is not restored, pre-abort queued work parks, post-abort waking sends replay, and default cancel clears the latch. | 26 | 26 |
INBOX-CANCEL-DROP-TESTDefault cancellation drops the queued tail | packages/core/agent-loop/tests/cancel.spec.ts:384-403 | Default cancel during a running Turn records an aborted ending and drops the queued tail before it runs. | 26 | 26 |
INBOX-CANCEL-LATCH-TESTAbort-to-idle wake-latch test matrix | packages/core/agent-loop/tests/cancel.spec.ts:103-218 | Covers pre-abort parking, post-abort replay, latch clearing/removal, and slow cancellation convergence. | 26 | 26 |
INBOX-CONSUMED-WORK-TESTConsumed-work boundary tests | packages/core/agent/tests/consumed-work.spec.ts:38-158 | Covers no work, failed/cancelled/blocked claims, empty rewrites, out-of-Turn claims, drops, replacements, and later absorption. | 26 | 26 |
INBOX-CRASH-RECOVERYHard-crash recovery at model dispatch | packages/session/session-checkpoint-policy/tests/crash-recovery.e2e.ts:82-110 | After a hard child-process kill, recovery retains the complete request prefix with interrupted closers and repairs missing tool results as unknown outcomes. | 26 | 26 |
INBOX-FIFO-PROPERTYFollow-up FIFO Turn property tests | packages/core/agent-loop/tests/properties.spec.ts:107-190 | Synchronous bursts, sequential sends, and mixed settlement verify one increasing Turn per ordinary message without reordering. | 26 | 26 |
INBOX-PRESTEP-CUTOFF-TESTPre-step claim cutoff and late-input tests | packages/core/agent-loop/tests/interception.spec.ts:257-363 | Inject and steer arriving during pre-step miss the first request and enter the next Step in order; input after a blocked batch survives. | 26 | 26 |
INBOX-TURN-STOPPING-TESTTurn-stopping steering regression | packages/core/agent-loop/tests/contract-regressions.spec.ts:317-340 | When the model would otherwise stop, steer from a turn-stopping listener forces a second model Step in the same Turn. | 26 | 26 |
LLM-MULTI-ATTEMPT-REPLAY-TESTReplay test for multiple provider attempts in one Turn and Step | packages/test-support/llm-replay/tests/llm-replay.spec.ts:119-132 | The test explicitly splits failed and successful chunk streams sharing a turn and step into two provider calls, proving attempt identity cannot be represented by turn and step alone. | 08 | 08 |
LLM-PREPARED-PIN-TESTPrepared-call route and retry-policy pinning test | packages/llm/llm/tests/service.spec.ts:227-257 | The test dispatches a prepared call after route replacement and proves the old adapter and policy still serve it while the registry exposes the new policy. | 08 | 08 |
LLM-RETRY-SAME-STEP-TESTRetry remains in the same Turn and Step test | packages/llm/llm-retry/tests/retry.spec.ts:175-224 | The first provider attempt fails and the second succeeds; only one turn/start and one step/start exist while the adapter receives two requests. | 08 | 08 |
LLM-RETRY-WIRE-TESTIdentical wire bodies and partial-chunk semantics across retries | packages/llm/llm-retry/tests/transport-recovery.spec.ts:112-198 | Tests expect identical request bodies across failed and successful attempts, retain failed chunks outside the surface, commit only one assistant message, and do not retry STREAM_CLOSED by default. | 08 | 08 |
LOG-FORK-CONTRACTTests for empty forks, stable boundaries, frozen seeds, and rejection cases | packages/core/session/tests/fork.spec.ts:63-318 | Tests cover empty-child lineage, detached frozen seeds, earlier boundaries before an open source tail, every turn-end reason, post-turn log-only events, and rejection of invalid, stale, open-turn, and duplicate-child cases. | 10 | 10 |
LOG-RAW-CHUNK-TESTComplete raw-chunk retention and reassembly test | packages/core/agent-loop/tests/loop.spec.ts:529-547 | The test requires all seven protocol chunks that produce text abc to remain in order and be reassembled by the canonical assembler. | 10 | 10 |
LOG-REPAIR-CONTRACTBackend contract test: inspect does not commit repair while load does | packages/session/session-persistence/tests/contract.ts:118-266 | The contract proves inspect returns a balanced logical view with synthetic closers without changing revision, whereas load persists recovery, advances revision, and yields paired calls and results. | 10 | 10 |
LOG-REQUEST-RECONSTRUCTIONTheorem test for byte-equal reconstruction of every request | packages/core/agent-loop/tests/request-reconstruction.spec.ts:566-613 | A fresh Session rebuilds messages from the event prefix before the first chunk, while the request-header fold rebuilds model, reasoning, system, tools, temperature, maxTokens, and stop, all deep-equal to the dispatched request. | 10 | 10 |
LOG-TORN-TAIL-CONTRACTTorn-tail truncation and committed-prefix preservation test | packages/session/session-persistence/tests/coordinator-contract.ts:1427-1479 | The backend returns a valid committed prefix plus a torn marker; load truncates the fragment, retains every committed open-turn event, and appends deterministic closers. | 10 | 10 |
LOOP-ERROR-CONTAINMENT-TESTDurable error and loop-unload tests | packages/core/agent-loop/tests/loop.spec.ts:1353-1398 | A model failure becomes both live agent/error and durable turn/end error; unloading an owner mid-turn stops the driver and removes it from the registry. | 06 | 06 |
LOOP-INTERCEPTION-TESTEmpty continuation, blocked step, and concurrent pre-step input tests | packages/core/agent-loop/tests/interception.spec.ts:207-363 | Tests cover an empty post-completion decision opening no step, rejection retaining only turn boundaries, and steer/inject arriving after a claim remaining for the next step or wake. | 06 | 06 |
LOOP-ORDER-TESTSimple-turn and tool-round-trip ordering tests | packages/core/agent-loop/tests/loop.spec.ts:162-233 | Tests prove inbox receipt precedes the turn, four boundaries nest strictly, assistant usage is durable, and tool call/result enter the second derived request. | 06 | 06 |
LOOP-OUTCOME-TESTAbort and sticky max-tokens outcome tests | packages/core/agent-loop/tests/loop.spec.ts:945-1054 | Tests confirm mid-stream cancellation records aborted, max-tokens is sticky within one turn but not across turns, and a truncated step does not execute tool calls. | 06 | 06 |
LOOP-RECONSTRUCTION-TESTByte-equal request reconstruction from the log | packages/core/agent-loop/tests/request-reconstruction.spec.ts:566-613 | Across tool steps, later turns, prompt changes, and request-config changes, a fresh Session rebuilds messages and folded headers from pre-dispatch events with field equality. | 06 | 06 |
LOOP-REQUEST-ERROR-TESTRequest-error recovery boundary tests | packages/core/agent-loop/tests/request-error.spec.ts:30-141 | Middleware failures bypass recovery, provider failures may retry repeatedly within one step, cancellation beats retry, and a failing recovery listener ends the turn in error. | 06 | 06, 07, 08 |
MEMORY-MCP-CONTRACT-TESTMemory MCP overlay and fixture-discovery test boundary | apps/cli/tests/memory-mcp-configs.spec.ts:83-131 | Tests check row fields, version pins, and obvious secrets, then replace each real command with a keyless fixture to prove tool discovery; none of the three real memory providers is executed. | 14 | 14 |
MEMORY-REFERENCE-CONTRACT-TESTSession-reference snapshot, exclusion, and replay-independence tests | packages/context/session-reference/tests/session-reference.spec.ts:320-641 | Tests require projection of only current conversation and checkpoints, exclusion of nested injections, fixed capture metadata, target independence after source mutation, compaction, or deletion, and equality after fresh Session replay. | 14 | 14 |
MULTIAGENT-CODEX-WIRE-TESTCodex wire protocol-selection test | packages/subagent/subagent-codex/tests/subagent-codex.spec.ts:363-435 | The test verifies the fixed handshake, ephemeral thread, text input, cross-thread/Turn filtering, reasoning/commentary exclusion, and last-final selection. | 24 | 24 |
MULTIAGENT-CONTINUATION-ACCEPTANCE-TESTInbox-acceptance commit-point test | packages/subagent/subagent/tests/continuation.spec.ts:101-191 | The test proves startContinuable returns the accepted inbox message ID after its splice is recorded but before it is claimed into a user/message event or any model request is sent. | 24 | 24 |
MULTIAGENT-FORK-OPEN-TURN-TESTFork exclusion of the open Turn test | packages/subagent/subagent-fork-in-process/tests/subagent-fork-in-process.spec.ts:134-158 | The test hangs the parent's second Turn, forks during it, and proves the child seeds only the first complete Turn before completing its own. | 24 | 24 |
OBS-TEST-HANDOFFCapture, reload, and failure-containment tests | packages/session/session-telemetry/tests/telemetry.spec.ts:161-539 | Covers first-chunk-only capture, on-demand suffixes, reload cursors, rejected middle records, non-awaited flush, shutdown ordering, and backend containment. | 28 | 28 |
OBS-TEST-OTEL-COMPOSITIONReal Loader telemetry-composition tests | packages/session/session-telemetry-otel/tests/loader-composition.e2e.ts:78-153 | Covers scrubbed outbound copies with canonical secrets retained, feedback-only prefixes, and disabled local behavior. | 28 | 28 |
OBS-TEST-OTEL-MODESOTel sharing-mode tests | packages/session/session-telemetry-otel/tests/otel.spec.ts:273-489 | Covers feedback suffixes, rejection of non-canonical consent, zero disabled transport, mode disclosure, default-off behavior, and fail-loud config. | 28 | 28 |
OBS-TEST-OTEL-WIREReal SDK-pipeline wire test against a local mock collector | packages/session/session-telemetry-otel/tests/otel.spec.ts:1-163 | Sends OTLP/HTTP JSON through the real OTel SDK pipeline to a local scripted node:http mock collector and verifies service.name/user.id, both scopes, a source timestamp, severity, session.cwd/event attributes, and the shutdown marker. | 28 | 28 |
OBS-TEST-REDACTIONRedaction-boundary regression tests | packages/session/session-telemetry/tests/redact.spec.ts:39-128 | Covers no-rule pass-through, ledger/ops scrubbing, listener composition, untouched canonical logs, and throw-to-withhold behavior. | 28 | 28 |
OBS-TEST-STATSStats counting and timing tests | packages/session/session-stats/tests/projection.spec.ts:58-291 | Covers rejected, cancelled, max-token, retry, tool pairing, invalid usage, clock skew, late mount, and HMR. | 28 | 28 |
OBS-TEST-STATS-PAGINGPaged-history stats E2E | apps/web/tests/stats-paged-history.e2e.ts:73-135 | A long history's tail page immediately shows full-session totals that remain unchanged after load-older. | 28 | 28 |
PARALLEL-ABORT-TESTSNative scheduler cancellation tests | packages/core/agent-loop/tests/tool-calls.spec.ts:459-631 | Tests cover cancellation before a group, during prepare, while stopping replenishment and synthesizing unstarted results, and prevention of crossing into a later exclusive barrier. | 18 | 18 |
PARALLEL-CAP-TESTSNative rolling-pool cap tests | packages/core/agent-loop/tests/tool-calls.spec.ts:264-365 | Tests verify invalid-cap rejection, the default, rolling replenishment at cap two, full serialization at cap one, and the shared configured limit for factory-created agents. | 18 | 18 |
PARALLEL-CODE-ORDER-TESTThe Code Mode ordering fixture labeled out-of-order | packages/core/tools/tests/code-mode.spec.ts:731-765 | The test asserts submission-ordered post and contexts, but gate.release() explicitly releases A FIFO before releaseAll, so the fixture does not actually make B complete before A. | 18 | 18 |
PARALLEL-CODE-TESTSCode Mode pool, barrier, and drain tests | packages/core/tools/tests/code-mode.spec.ts:509-730 | Tests cover parallel overlap, exclusive barriers, the maxParallelSubCalls cap, ordered prepare, barriers through post-execute, and run settlement waiting for an in-progress commit. | 18 | 18 |
PARALLEL-CONTEXT-TESTTest for retaining ordered additional contexts after cancellation | packages/core/agent-loop/tests/tool-calls.spec.ts:523-589 | The test shows contexts from started calls remain in the next-step inbox as C1, C2, are not logged as user/message when cancellation ends the turn, and enter the log in order on the next wake. | 18 | 18 |
PARALLEL-FAILURE-TESTScheduler-invariant failure drain test | packages/core/agent-loop/tests/tool-calls.spec.ts:633-690 | The test injects an internal scheduler rejection and confirms no third body starts, the turn does not end early, the started sibling drains, and the first error closes the turn. | 18 | 18 |
PARALLEL-GROUP-TESTSParallel groups, exclusive barriers, and live replacement tests | packages/core/agent-loop/tests/tool-calls.spec.ts:99-218 | Tests cover parallel siblings, parallel-exclusive-parallel grouping, definition replacement after a barrier, and a result observer reclassifying an unstarted call as exclusive. | 18 | 18 |
PARALLEL-ORDER-TESTSModel-order result tests under out-of-order settlement | packages/core/agent-loop/tests/tool-calls.spec.ts:220-262 | Tests release the second parallel call first and confirm no result appears before the first completes; durable results and deriveMessages still end in C1, C2 order. | 18 | 18 |
PARALLEL-RECLASS-TESTSLive reclassification tests for queued calls | packages/core/agent-loop/tests/tool-calls.spec.ts:144-217 | Tests show that registry replacement inside an exclusive barrier and synchronous result-observer replacement both affect unstarted calls; the current pool drains before the new exclusive definition runs. | 18 | 18, 33 |
PERSIST-SESSION-SQLITE-CONSTRUCTOR-TESTSession SQLite direct-construction test supplies WAL | packages/session/session-persistence-sqlite/tests/sqlite.spec.ts:677-691 | The direct-construction test bypasses Schemastery to verify the preparation-cache default but explicitly supplies journalMode: wal, leaving omitted journalMode uncovered. | 11 | 11 |
PLANSTATE-GOAL-DRIVER-TESTGoal round-cap and fail-closed tests | packages/goal/goal-round-driver/tests/goal-round-driver.spec.ts:186-260 | Tests admit exactly rounds 1 through N and durably block at the cap; hot-load disarms, while provider, error, max-token, and prompt rejection paths stop continuation. | 15 | 15 |
PLANSTATE-GOAL-DURABILITY-TESTPer-round Goal durability-barrier tests | packages/goal/goal-round-driver/tests/goal-round-driver.spec.ts:465-510 | A creation or prior-round checkpoint failure disarms without extra dispatch, while success requires an observed flush between rounds one and two. | 15 | 15 |
PLANSTATE-GOAL-PROJECTION-TESTGoal projection fail-soft and same-reference tests | packages/goal/goal/tests/projection.spec.ts:142-187 | Tests pin the same-reference fast path for non-goal and malformed goal-shaped events so projection driving remains fail-soft. | 15 | 15 |
PLANSTATE-GOAL-WRAPUP-TESTAutonomous Goal terminal wrap-up test | packages/goal/tool-goal/tests/tool-goal.spec.ts:352-415 | Tests require autonomous complete to add one closing context while concludesTurn stays undefined; a direct-human mutation adds no such context. | 15 | 15 |
PLANSTATE-PLAN-LOOP-TESTPlan real-loop and retry tests | packages/plan/plan-mode/tests/integration.spec.ts:66-174 | Tests prove a write tool still executes in Plan, schemas remain stable, and a same-Step retry reuses old assembly until a later Step applies the mode. | 15 | 15 |
PLANSTATE-TODO-PROJECTIONTodo standing-projection tests | packages/todo/tool-todo/tests/projection.spec.ts:68-123 | Tests prove null before first write, latest whole-list wins, turn/end retention, clearing at the next turn/start, and key removal on unload. | 15 | 15 |
PLANSTATE-TODO-TESTTodo write, replacement, and validation tests | packages/todo/tool-todo/tests/tool-todo.spec.ts:70-209 | Tests cover successful writes and counts, trimming, whole replacement, parallel policy, rejection of blanks, duplicates, unknown fields and enums, and non-Agent callers. | 15 | 15 |
PROFILE-HMR-TESTHMR last-known-good configuration test | packages/boot/app-boot/tests/user-patches.spec.ts:315-371 | The test covers addition, apply failure, parse failure, recovery, and removal; failed candidates never replace the previous valid plugin tree. | 04 | 04 |
PROFILE-ORDER-TESTBundle and user-layer ordering test | packages/boot/app-boot/tests/profile.spec.ts:121-143 | The test verifies bundle manifest order, wholesale configuration replacement by later layers, and empty composition without a user layer. | 04 | 04 |
PROMPT-ASSEMBLY-MUTATION-TESTProvider membership, complete section, and assembly snapshot tests | packages/core/system-prompt/tests/system-prompt.spec.ts:212-333 | Tests pin tool-provider membership snapshots, complete-section restoration and conflicts, and isolation of mutations between assemblies. | 07 | 07 |
PROMPT-CACHE-E2EReal DeepSeek API prefix-cache test | packages/core/agent-loop/tests/request-cache.e2e.ts:71-103 | When an API key is present, the E2E requires every assistant usage after the first to report positive cacheReadTokens and verifies the tool value reaches the final answer; this study did not execute the test. | 07 | 07 |
PROMPT-CANCEL-TESTNo-step disposal and cancellation during prompt assembly | packages/core/agent-loop/tests/contract-regressions.spec.ts:1100-1199 | Tests prove disposal or cancellation during blocked assembly leaves only turn start and aborted turn end, with no step, chunk, message, or adapter request. | 07 | 07 |
PROMPT-HEADER-CHANGE-TESTStable prompts omit headers while real changes write full snapshots | packages/core/agent-loop/tests/request-reconstruction.spec.ts:433-455 | Tests prove per-step reassembly adds no header when values are equal; a real system-prompt change writes a second full header with reason change while preserving history. | 07 | 07 |
PROMPT-SCOPE-SHADOWScoped persona shadowing and provider non-evaluation test | packages/core/system-prompt/tests/scoped.spec.ts:32-79 | Tests prove a same-name scoped section shadows only its scope, leaves the global view intact, and prevents evaluation of the shadowed text provider. | 07 | 07 |
PROMPT-VARIABLE-TESTVariable live iteration and strict interpolation tests | packages/core/system-prompt/tests/system-prompt.spec.ts:449-580 | Tests cover same-generation variable registration, unknown, undefined, and malformed references, prototype-like names, and non-recursive substitution values. | 07 | 07 |
SANDBOX-FS-FENCE-TESTFilesystem-fence mode and escape tests | packages/fs/fs-sandbox/tests/fs-sandbox.spec.ts:59-235 | Tests cover read-only mutation denial and reads, workspace and temp writes, absolute, parent, and symlink escapes, fresh targets, full mode, per-call overrides, and structured denial. | 20 | 20 |
SANDBOX-LOCAL-TESTLocal sandbox profile, selection, and fail-closed tests | packages/sandbox/sandbox-local/tests/local.spec.ts:64-453 | Tests cover the three profile dialects, custom runners, Linux fallback, sole and multiple candidate probing, verdict caching, unavailable behavior, partial Landlock, Seatbelt, and the Windows ACL chain. | 20 | 20 |
SANDBOX-OBSERVATION-TESTObservation decision, owner-isolation, and disposal tests | packages/fs/fs-observation-policy/tests/policy.spec.ts:47-235 | Tests pin unseen, absent, and present write and edit outcomes, version refresh after successful mutation, no-owner behavior, multiple owners, first-wins, and state and listener removal on disposal. | 20 | 20 |
SESSION-APPEND-BOUNDARY-TESTAppend precommit veto, postcommit containment, and surface atomicity tests | packages/core/session/tests/session.spec.ts:1388-1507 | Tests prove observers see an already committed event and cannot roll it back; internal dispatch may veto before commit, and a rejected surface plan does not pollute the next append. | 09 | 09 |
SESSION-DERIVED-ORACLE-TESTIncremental derivation equality with a fresh replay oracle | packages/core/session/tests/derived-cache.spec.ts:22-86 | Tests compare the live cache with a fresh Session replay after appends, an empty assistant, and replacement, and prove a previously returned array does not grow after later appends. | 09 | 09 |
SESSION-IMMUTABILITY-TESTDerived-message immutability and source rejection of invalid JSON | packages/core/session/tests/session.spec.ts:437-495 | Tests cannot mutate frozen derived messages or content, and append rejects BigInt, functions, symbols, maps, undefined, infinity, sparse arrays, and cyclic graphs without growing the log. | 09 | 09 |
SESSION-SEED-REPLAY-TESTSeed replay and idempotent end-seed test | packages/core/session/tests/session.spec.ts:116-155 | The test proves a seeded Session derives the same messages, retains the verbatim prefix, appends one end-seed, and does not keep growing when an already marked seed is reopened. | 09 | 09 |
SESSION-UNKNOWN-EVENT-TESTLoad test for unknown required and ignorable events | packages/session/session-persistence/tests/coordinator-contract.ts:1360-1382 | The test requires an unknown required event to raise SessionFormatUnsupportedError while retaining an unknown ignorable=true event in the loaded event log. | 09 | 09 |
TEST-ACPACP handshake, session, and input-boundary tests | packages/acp/acp/tests/bridge.spec.ts:14-147 | Tests pin capabilities, version response, no-op auth, fresh sessions, baseline prompts, resource links, unsupported workspace/MCP features, and unknown-cancel behavior. | 29 | 29 |
TEST-CONNECTIONConnection generation and reconnect tests | packages/client/connection/tests/connection.client.spec.ts:1-322 | Tests cover describe plus two-stream readiness, stream/error, sink isolation, open-timeout degradation, and state deduplication; the readiness stream-end rebuild fixture must manually resolve the hung describe first, exposing its lack of timeout/signal. | 29 | 29 |
TEST-REMOTEGenerated Remote client tests | packages/api/gateway/tests/gateway.client.spec.ts:1-829 | Tests cover strict boundaries, mount rollback, in-flight withdrawal cancellation, scope projection, carrier-failure folding, and forwarded-event listener isolation. | 29 | 29 |
TEST-SDK-PROTOCOLJSON-RPC transport regression tests | packages/sdk/protocol/tests/transport.spec.ts:1-307 | Tests cover requests, notifications, error code/data, malformed frames, split UTF-8, abort abandonment, flush, stream end, and unknown response ids. | 29 | 29 |
TINV-CONFIG-TESTFocused Cordis metadata tests | scripts/verify-cordis-config.spec.ts:1-38 | Validates the allowed entry-level disabled expression and covers three rejection paths: !!js in static metadata, nested !!js under disabled, and invalid disabled syntax. | 32 | 32 |
TINV-COVERAGE-EXEMPT-TESTExemption-roster closure test | scripts/coverage-exempt.spec.ts:13-54 | Verifies nonempty equivalence between each filter and exclude glob and forbids overlapping roster entries. | 32 | 32 |
TINV-FIXTURE-LAYOUT-TESTSession-fixture layout guard | scripts/session-fixture-layout.snapshot.ts:1-16 | Scans snapshot session JSONL and rejects noncanonical packed event representations. | 32 | 32 |
TINV-INVARIANT-TOPOLOGY-TESTInvariant-topology regression test | scripts/test-invariants.spec.ts:97-152 | Registers every companion after real Loader unwrapping and asserts that package reservations match the companion selected from each test path. | 32 | 32 |
TINV-REGISTRY-TESTRegistry lifecycle tests | packages/runtime-diagnostics/invariants/tests/service.spec.ts:189-302 | Covers package-attributed errors, child-fiber disposal, duplicate names, and atomic rollback on startup failure. | 32 | 32 |
TINV-REPLAY-TESTPositional replay failure-semantics tests | packages/test-support/llm-replay/tests/llm-replay.spec.ts:671-917 | Covers positional order, throw, hang, script exhaustion, abort, and underrun failure semantics. | 32 | 32 |
TINV-SESSION-TESTSession invariant regression tests | packages/core/session/tests/invariant.spec.ts:34-116 | Verifies that successful commits advance the trace while vetoed publication neither advances nor contaminates later expectations. | 32 | 32 |
TINV-SNAPSHOT-COMPAREACP process and dual-channel snapshot comparison | packages/test-support/acp-snapshot/src/suite.ts:1167-1342 | Runs the real assembled entry, normalizes volatile values, and separately compares stdout and harvested main and child session logs. | 32 | 32, 34 |
TINV-SNAPSHOT-FIXTURESScenario fixture closure | packages/test-support/acp-snapshot/src/suite.ts:1440-1480 | Rejects orphan directories, missing inputs or expectations, invalid overrides, and illegal header-sidecar ownership. | 32 | 32 |
WEBUI-CONNECTION-TESTSConnection-generation tests | packages/client/connection/tests/connection.client.spec.ts:22-183 | Existing tests cover dual-stream readiness, generation teardown, reconnect backoff, and sink-error isolation. | 30 | 30 |
WEBUI-CONVERSATION-TESTSIncremental Conversation projection tests | packages/client/runtime/tests/conversation-assembler.client.spec.ts:126-262 | Existing tests cover append/prepend, Context folding, replay of affected nodes, and identity preservation for unchanged nodes. | 30 | 30 |
WEBUI-HMR-TESTSHost HMR watcher tests | packages/client/hmr/tests/node-half.client.spec.ts:85-203 | Existing tests cover graph-bundle watching, row addition and removal, stat and content changes, rename races, and unwatching after fiber disposal. | 30 | 30 |
WEBUI-LOCATION-TESTSConversation location-replay tests | packages/client/runtime/tests/conversation-assembler.client.spec.ts:564-860 | Existing tests cover Turn and Step location changes, boundary append/prepend, and updates to nodes that depend on location. | 30 | 30 |
WEBUI-MANAGER-TESTSSessionManager list-refetch tests | packages/client/runtime/tests/manager.client.spec.ts:78-166 | Existing tests cover refreshList single-flight, Host baseline ordering, and replay of live mutations during the request. | 30 | 30 |
WEBUI-MODULE-TESTSClient module-loader tests | packages/client/modules/tests/loader.client.spec.ts:63-293 | Existing tests cover factory arrival, materialization, dependency caching, styles, and invalidation behavior. | 30 | 30 |
WEBUI-PREFERENCE-TESTSLocale preference and dictionary tests | packages/client/locale/tests/locale.client.spec.ts:30-239 | Existing tests cover browser-provisional locale, Host preference, fallback, paired dictionary registration, and revision notifications. | 30 | 30 |
WEBUI-REACT-BINDING-TESTSReact-binding tests over the real SlotCore | packages/client/web-react/tests/scoped-slots-real-core.client.spec.tsx:62-125 | Existing integration tests cover uSES notification batching, live rendering, stable references, and stale authorization over the real Slot ledger. | 30 | 30 |
WEBUI-SESSION-SCOPE-TESTSSession-scope lifecycle tests | packages/client/runtime/tests/sessions-service.client.spec.ts:122-174 | Existing tests cover lazy scope creation on first resolution, stable bindings, off-stage removal cleanup, and staged removal deferred until the stage moves. | 30 | 30 |
WEBUI-SESSION-TESTSSession-window and gap tests | packages/client/runtime/tests/session.client.spec.ts:178-374 | Existing tests cover history/live stitching, duplicate sequences, gap detection, repair, and retention of the old window on failure. | 30 | 30 |
WEBUI-SETTINGS-TESTSSettingsScope state-machine tests | packages/client/ui-settings/tests/settings-scope.client.spec.ts:65-421 | Existing tests cover initial read, serialized writes, revisions, failure recovery, invalidation, stale reads, and memory mode. | 30 | 30 |
WEBUI-SLOT-TESTSSlot declaration and cascade tests | packages/client/ui-slots/tests/core.client.spec.ts:52-107 | Existing tests cover root-only initial declaration, rejection of undeclared targets, child declaration, and cascading cleanup after parent removal. | 30 | 30 |
WEBUI-THEME-PRESENTER-TESTSThemePresenter DOM-projection tests | packages/client/ui-layout/tests/theme-presenter.client.spec.ts:44-90 | Existing tests cover light and dark projection, token replacement, one meta node, and disposal that retracts only presenter-owned writes. | 30 | 30 |
WEBUI-THEME-TESTSThemeRuntime preference and token tests | packages/client/ui-theme/tests/theme.client.spec.ts:24-249 | Existing tests cover system resolution, Host preference, reversible theme and token layers, revisions, and the service's no-DOM boundary. | 30 | 30 |
WEBUI-TOOL-TESTSToolView keyed-dispatch tests | packages/client/ui-tool/tests/toolview-slot.client.spec.tsx:91-230 | Existing tests cover wire-name specialized dispatch, generic fallback, recursive subcalls, and the atomic props boundary. | 30 | 30 |
WEBUI-WEB-REACT-TESTSSessionProvider lifecycle tests | packages/client/web-react/tests/session-provider.client.spec.tsx:92-190 | Existing tests cover strict-provider session resolution, fail-loud behavior for missing sessions, and keyed remount when sessionId changes. | 30 | 30 |
repository-policy · 7
| ID | Pinned source | What this excerpt supports | First citation | All citing chapters |
|---|---|---|---|---|
DESIGN-PACKAGE-RULESOwnership, commit-point, boundary, and package-invariant rules | packages/AGENTS.md:8-18 | Asynchronous work needs one lifecycle owner; capability contracts serve all consumers; state publishes only at commit; bounds apply to complete results; and each package owns its runtime invariants. | 02 | 02 |
PKG-INVARIANTSPackage lifecycle and invariant rules | packages/AGENTS.md:5-18 | Constraints for plugin exports, composition tests, ownership, commit points, disposal, and per-package invariants. | 02 | 02, 03 |
ROOT-BOUNDARIESExplicit boundaries and fail-fast behavior | AGENTS.md:107-116 | Cross-package defaults resolve explicitly, deployment parameters are configurable, invalid configuration fails early, and external IDs use branded types. | 02 | 02 |
ROOT-EFFECTSRegistration as effects and waterfall semantics | AGENTS.md:91-100 | Contributions register through effect/on and are disposable; waterfall listeners must call next. | 02 | 02 |
ROOT-MODEL-LOGGEDModel-visible means logged | AGENTS.md:99-104 | Every input entering a model request requires a session event and must be reconstructable from the log. | 02 | 02, 07 |
ROOT-PREVIEWDeveloper Preview compatibility posture | AGENTS.md:5-8 | Before the first tag, sound foundations take precedence over compatibility shims, and on-disk formats carry no compatibility promise. | 01 | 01, 02 |
ROOT-TYPED-TRUSTValidation at static and runtime boundaries | AGENTS.md:115-117 | Same-process statically typed values trust TypeScript, while parsing, model JSON, persistence, processes, workers, and wire boundaries receive runtime validation. | Not cited in this corpus | — |
5. Package and repository-zone index · 219
Universe: the complete pinned package inventory. Evidence counts refer only to catalog paths matched by an exact package-path boundary; unmatched paths are retained in explicit repository zones.
Packages · 219
| Package / zone | Catalog paths | Evidence records | Source files | Test files |
|---|---|---|---|---|
packages/acp/acp@deepseek-ai/dsh-acp | 4 | 13 | 3 | 8 |
packages/api/gateway@deepseek-ai/dsh-api-gateway | 4 | 8 | 4 | 2 |
packages/api/remotes@deepseek-ai/dsh-api-remotes | 3 | 5 | 6 | 2 |
packages/attachment/attachment@deepseek-ai/dsh-attachment | 2 | 2 | 5 | 0 |
packages/attachment/attachment-local@deepseek-ai/dsh-attachment-local | 3 | 6 | 4 | 3 |
packages/boot/app-boot@deepseek-ai/dsh-app-boot | 5 | 14 | 3 | 6 |
packages/boot/cmdline@deepseek-ai/dsh-cmdline | 0 | 0 | 2 | 1 |
packages/bundle/base@deepseek-ai/dsh-base | 1 | 17 | 2 | 1 |
packages/bundle/headless@deepseek-ai/dsh-headless | 1 | 2 | 3 | 2 |
packages/bundle/web-app@deepseek-ai/dsh-web-app | 1 | 5 | 3 | 3 |
packages/client/connection@deepseek-ai/dsh-client-connection | 10 | 15 | 16 | 11 |
packages/client/hmr@deepseek-ai/dsh-client-hmr | 3 | 3 | 4 | 1 |
packages/client/locale@deepseek-ai/dsh-client-locale | 2 | 3 | 11 | 6 |
packages/client/modules@deepseek-ai/dsh-client-modules | 4 | 4 | 5 | 2 |
packages/client/runtime@deepseek-ai/dsh-client-runtime | 16 | 38 | 44 | 25 |
packages/client/schema-form@deepseek-ai/dsh-client-schema-form | 0 | 0 | 3 | 2 |
packages/client/ui-agent-preset@deepseek-ai/dsh-client-ui-agent-preset | 0 | 0 | 13 | 7 |
packages/client/ui-attachment@deepseek-ai/dsh-client-ui-attachment | 0 | 0 | 7 | 5 |
packages/client/ui-commands@deepseek-ai/dsh-client-ui-commands | 0 | 0 | 10 | 5 |
packages/client/ui-conversation@deepseek-ai/dsh-client-ui-conversation | 11 | 12 | 70 | 28 |
packages/client/ui-deliverables@deepseek-ai/dsh-client-ui-deliverables | 0 | 0 | 7 | 2 |
packages/client/ui-directory-picker-browse@deepseek-ai/dsh-client-ui-directory-picker-browse | 0 | 0 | 6 | 2 |
packages/client/ui-directory-picker-native@deepseek-ai/dsh-client-ui-directory-picker-native | 0 | 0 | 4 | 1 |
packages/client/ui-goal@deepseek-ai/dsh-client-ui-goal | 5 | 5 | 9 | 3 |
packages/client/ui-input-trigger@deepseek-ai/dsh-client-ui-input-trigger | 0 | 0 | 14 | 5 |
packages/client/ui-jobs@deepseek-ai/dsh-client-ui-jobs | 1 | 1 | 6 | 2 |
packages/client/ui-layout@deepseek-ai/dsh-client-ui-layout | 3 | 4 | 9 | 6 |
packages/client/ui-message-feedback@deepseek-ai/dsh-client-ui-message-feedback | 0 | 0 | 8 | 3 |
packages/client/ui-model-selection@deepseek-ai/dsh-client-ui-model-selection | 0 | 0 | 9 | 2 |
packages/client/ui-permission-presets@deepseek-ai/dsh-client-ui-permission-presets | 3 | 3 | 8 | 3 |
packages/client/ui-plan@deepseek-ai/dsh-client-ui-plan | 1 | 1 | 6 | 2 |
packages/client/ui-primitives@deepseek-ai/dsh-client-ui-primitives | 0 | 0 | 44 | 21 |
packages/client/ui-settings@deepseek-ai/dsh-client-ui-settings | 2 | 2 | 6 | 3 |
packages/client/ui-settings-general@deepseek-ai/dsh-client-ui-settings-general | 1 | 1 | 11 | 7 |
packages/client/ui-settings-models@deepseek-ai/dsh-client-ui-settings-models | 0 | 0 | 18 | 10 |
packages/client/ui-settings-plugin-inventory@deepseek-ai/dsh-client-ui-settings-plugin-inventory | 0 | 0 | 6 | 3 |
packages/client/ui-settings-plugins@deepseek-ai/dsh-client-ui-settings-plugins | 0 | 0 | 17 | 5 |
packages/client/ui-sidebar@deepseek-ai/dsh-client-ui-sidebar | 0 | 0 | 7 | 7 |
packages/client/ui-skill@deepseek-ai/dsh-client-ui-skill | 1 | 1 | 6 | 2 |
packages/client/ui-slots@deepseek-ai/dsh-client-ui-slots | 3 | 6 | 4 | 4 |
packages/client/ui-subagent@deepseek-ai/dsh-client-ui-subagent | 1 | 1 | 7 | 2 |
packages/client/ui-theme@deepseek-ai/dsh-client-ui-theme | 2 | 2 | 9 | 8 |
packages/client/ui-tool@deepseek-ai/dsh-client-ui-tool | 8 | 8 | 25 | 16 |
packages/client/ui-trajectory@deepseek-ai/dsh-client-ui-trajectory | 3 | 3 | 28 | 8 |
packages/client/ui-user-questions@deepseek-ai/dsh-client-ui-user-questions | 1 | 1 | 8 | 4 |
packages/client/ui-workflow-run@deepseek-ai/dsh-client-ui-workflow-run | 0 | 0 | 7 | 1 |
packages/client/ui-workspace@deepseek-ai/dsh-client-ui-workspace | 1 | 1 | 11 | 8 |
packages/client/web@deepseek-ai/dsh-client-web | 3 | 4 | 11 | 5 |
packages/client/web-react@deepseek-ai/dsh-client-web-react | 5 | 6 | 7 | 7 |
packages/code-runtime/code-runtime@deepseek-ai/dsh-code-runtime | 2 | 2 | 3 | 2 |
packages/code-runtime/code-runtime-worker-thread@deepseek-ai/dsh-code-runtime-worker-thread | 4 | 9 | 7 | 6 |
packages/compaction/command-compact@deepseek-ai/dsh-command-compact | 1 | 1 | 2 | 3 |
packages/compaction/compaction@deepseek-ai/dsh-compaction | 4 | 4 | 6 | 3 |
packages/compaction/compaction-basic@deepseek-ai/dsh-compaction-basic | 6 | 10 | 6 | 4 |
packages/compaction/compaction-tool-result-pruner@deepseek-ai/dsh-compaction-tool-result-pruner | 2 | 2 | 4 | 2 |
packages/context/agent-instructions@deepseek-ai/dsh-agent-instructions | 1 | 1 | 7 | 2 |
packages/context/session-reference@deepseek-ai/dsh-session-reference | 4 | 5 | 7 | 1 |
packages/context/time-context@deepseek-ai/dsh-time-context | 1 | 1 | 4 | 4 |
packages/context/tmux-context@deepseek-ai/dsh-tmux-context | 1 | 1 | 2 | 1 |
packages/core/agent@deepseek-ai/dsh-agent | 7 | 18 | 8 | 6 |
packages/core/agent-default-model@deepseek-ai/dsh-agent-default-model | 0 | 0 | 2 | 1 |
packages/core/agent-loop@deepseek-ai/dsh-agent-loop | 16 | 78 | 6 | 20 |
packages/core/agent-tool-presentation@deepseek-ai/dsh-agent-tool-presentation | 0 | 0 | 2 | 1 |
packages/core/scope@deepseek-ai/dsh-scope | 2 | 2 | 4 | 3 |
packages/core/session@deepseek-ai/dsh-session | 12 | 26 | 10 | 13 |
packages/core/system-prompt@deepseek-ai/dsh-system-prompt | 3 | 7 | 2 | 4 |
packages/core/tools@deepseek-ai/dsh-tools | 10 | 64 | 10 | 12 |
packages/credentials/credentials@deepseek-ai/dsh-credentials | 1 | 1 | 3 | 3 |
packages/credentials/credentials-local@deepseek-ai/dsh-credentials-local | 1 | 3 | 2 | 4 |
packages/e2b/e2b@deepseek-ai/dsh-e2b | 1 | 2 | 2 | 2 |
packages/e2b/fs-e2b@deepseek-ai/dsh-fs-e2b | 2 | 4 | 2 | 1 |
packages/e2b/subprocess-e2b@deepseek-ai/dsh-subprocess-e2b | 2 | 3 | 7 | 2 |
packages/examples/acp-demo@deepseek-ai/dsh-acp-demo | 0 | 0 | 3 | 3 |
packages/examples/agent-spine-demo@deepseek-ai/dsh-agent-spine-demo | 0 | 0 | 2 | 3 |
packages/examples/jsonrpc-demo@deepseek-ai/dsh-sdk-jsonrpc-demo | 0 | 0 | 5 | 0 |
packages/extensions/cordis-client-runner@deepseek-ai/dsh-cordis-client-runner | 5 | 6 | 12 | 5 |
packages/extensions/cordis-host-runner@deepseek-ai/dsh-cordis-host-runner | 8 | 18 | 8 | 6 |
packages/extensions/tool-cordis@deepseek-ai/dsh-tool-cordis | 3 | 7 | 8 | 1 |
packages/extensions/ui-cordis@deepseek-ai/dsh-client-ui-cordis | 0 | 0 | 16 | 3 |
packages/feedback/command-feedback@deepseek-ai/dsh-command-feedback | 1 | 1 | 2 | 2 |
packages/feedback/message-feedback@deepseek-ai/dsh-message-feedback | 1 | 1 | 4 | 4 |
packages/fs/fs@deepseek-ai/dsh-fs | 3 | 3 | 3 | 2 |
packages/fs/fs-local@deepseek-ai/dsh-fs-local | 3 | 7 | 4 | 3 |
packages/fs/fs-observation-policy@deepseek-ai/dsh-fs-observation-policy | 3 | 5 | 3 | 1 |
packages/fs/fs-sandbox@deepseek-ai/dsh-fs-sandbox | 3 | 4 | 3 | 2 |
packages/fs/tool-fs@deepseek-ai/dsh-tool-fs | 6 | 7 | 12 | 8 |
packages/fs/tool-fs-search@deepseek-ai/dsh-tool-fs-search | 1 | 1 | 8 | 5 |
packages/fs/tool-str-replace-editor@deepseek-ai/dsh-tool-str-replace-editor | 0 | 0 | 2 | 1 |
packages/goal/command-goal@deepseek-ai/dsh-command-goal | 2 | 2 | 2 | 1 |
packages/goal/goal@deepseek-ai/dsh-goal | 4 | 6 | 7 | 4 |
packages/goal/goal-round-driver@deepseek-ai/dsh-goal-round-driver | 2 | 3 | 3 | 2 |
packages/goal/tool-goal@deepseek-ai/dsh-tool-goal | 4 | 4 | 4 | 1 |
packages/guard/repeat-tool-reminder@deepseek-ai/dsh-repeat-tool-reminder | 0 | 0 | 2 | 1 |
packages/guard/timeout-policy@deepseek-ai/dsh-tool-call-timeout-policy | 2 | 2 | 2 | 1 |
packages/hooks/hook-protocol@deepseek-ai/dsh-hook-protocol | 0 | 0 | 9 | 7 |
packages/hooks/hooks-claude-code@deepseek-ai/dsh-hooks-claude-code | 0 | 0 | 3 | 7 |
packages/hooks/hooks-codex@deepseek-ai/dsh-hooks-codex | 0 | 0 | 3 | 6 |
packages/host/apiproxy@deepseek-ai/dsh-host-apiproxy | 13 | 48 | 42 | 20 |
packages/host/directory-picker@deepseek-ai/dsh-host-directory-picker | 0 | 0 | 2 | 1 |
packages/host/directory-picker-auto@deepseek-ai/dsh-host-directory-picker-auto | 0 | 0 | 4 | 2 |
packages/host/directory-picker-browse@deepseek-ai/dsh-host-directory-picker-browse | 0 | 0 | 2 | 1 |
packages/host/directory-picker-native@deepseek-ai/dsh-host-directory-picker-native | 0 | 0 | 8 | 6 |
packages/host/frontend-static@deepseek-ai/dsh-host-frontend-static | 0 | 0 | 2 | 1 |
packages/host/plugin-inventory@deepseek-ai/dsh-host-plugin-inventory | 0 | 0 | 3 | 2 |
packages/host/webserver@deepseek-ai/dsh-host-webserver | 0 | 0 | 2 | 1 |
packages/identity/anonymous-user-id@deepseek-ai/dsh-anonymous-user-id | 1 | 1 | 2 | 2 |
packages/interaction/commands@deepseek-ai/dsh-commands | 0 | 0 | 4 | 2 |
packages/interaction/permission-presets@deepseek-ai/dsh-permission-presets | 3 | 11 | 4 | 3 |
packages/interaction/tool-ask-user@deepseek-ai/dsh-tool-ask-user | 0 | 0 | 2 | 1 |
packages/interaction/user-approval@deepseek-ai/dsh-user-approval | 4 | 8 | 3 | 2 |
packages/interaction/user-questions@deepseek-ai/dsh-user-questions | 1 | 1 | 3 | 1 |
packages/jobs/jobs@deepseek-ai/dsh-jobs | 0 | 0 | 4 | 2 |
packages/jobs/jobs-local@deepseek-ai/dsh-jobs-local | 1 | 4 | 2 | 2 |
packages/jobs/tool-jobs@deepseek-ai/dsh-tool-jobs | 1 | 2 | 2 | 1 |
packages/llm/llm@deepseek-ai/dsh-llm | 7 | 14 | 14 | 11 |
packages/llm/llm-deepseek@deepseek-ai/dsh-llm-deepseek | 5 | 13 | 7 | 9 |
packages/llm/llm-pi-ai@deepseek-ai/dsh-llm-pi-ai | 4 | 4 | 10 | 13 |
packages/llm/llm-retry@deepseek-ai/dsh-llm-retry | 4 | 8 | 5 | 5 |
packages/llm/token-meter@deepseek-ai/dsh-token-meter | 4 | 6 | 10 | 3 |
packages/lsp/lsp@deepseek-ai/dsh-lsp | 1 | 1 | 4 | 1 |
packages/lsp/lsp-stdio@deepseek-ai/dsh-lsp-stdio | 2 | 3 | 9 | 10 |
packages/lsp/tool-lsp@deepseek-ai/dsh-tool-lsp | 1 | 1 | 4 | 4 |
packages/mcp/mcp-client@deepseek-ai/dsh-mcp-client | 5 | 12 | 5 | 6 |
packages/plan/plan-mode@deepseek-ai/dsh-plan-mode | 3 | 7 | 4 | 4 |
packages/preset/agent-presets@deepseek-ai/dsh-agent-presets | 1 | 1 | 9 | 8 |
packages/preset/persona@deepseek-ai/dsh-persona | 0 | 0 | 2 | 1 |
packages/runtime-diagnostics/invariants@deepseek-ai/dsh-invariants | 2 | 3 | 2 | 1 |
packages/sandbox/sandbox@deepseek-ai/dsh-sandbox | 5 | 13 | 4 | 3 |
packages/sandbox/sandbox-local@deepseek-ai/dsh-sandbox-local | 4 | 10 | 3 | 6 |
packages/sandbox/sandbox-policy@deepseek-ai/dsh-sandbox-policy | 2 | 3 | 3 | 2 |
packages/sandbox/sandbox-windows-acl@deepseek-ai/dsh-sandbox-windows-acl | 1 | 1 | 12 | 14 |
packages/schedule/schedule@deepseek-ai/dsh-schedule | 0 | 0 | 8 | 7 |
packages/sdk/client@deepseek-ai/dsh-sdk-client | 4 | 7 | 6 | 3 |
packages/sdk/protocol@deepseek-ai/dsh-sdk-protocol | 4 | 4 | 4 | 1 |
packages/sdk/server@deepseek-ai/dsh-sdk-jsonrpc-server | 2 | 5 | 3 | 4 |
packages/session-query/session-log-export@deepseek-ai/dsh-session-log-export | 0 | 0 | 8 | 7 |
packages/session-query/session-query@deepseek-ai/dsh-session-query | 5 | 7 | 11 | 4 |
packages/session-query/session-query-sqlite@deepseek-ai/dsh-session-query-sqlite | 2 | 2 | 4 | 3 |
packages/session-query/tool-session-query@deepseek-ai/dsh-tool-session-query | 4 | 7 | 7 | 2 |
packages/session/session-checkpoint-policy@deepseek-ai/dsh-session-checkpoint-policy | 5 | 9 | 2 | 3 |
packages/session/session-persistence@deepseek-ai/dsh-session-persistence | 6 | 20 | 6 | 5 |
packages/session/session-persistence-jsonl@deepseek-ai/dsh-session-persistence-jsonl | 6 | 13 | 7 | 4 |
packages/session/session-persistence-sqlite@deepseek-ai/dsh-session-persistence-sqlite | 3 | 7 | 3 | 1 |
packages/session/session-projection@deepseek-ai/dsh-session-projection | 1 | 4 | 3 | 1 |
packages/session/session-projection-cache@deepseek-ai/dsh-session-projection-cache | 2 | 3 | 3 | 1 |
packages/session/session-stats@deepseek-ai/dsh-session-stats | 3 | 3 | 5 | 2 |
packages/session/session-telemetry@deepseek-ai/dsh-session-telemetry | 5 | 10 | 3 | 2 |
packages/session/session-telemetry-otel@deepseek-ai/dsh-session-telemetry-otel | 5 | 9 | 2 | 2 |
packages/session/session-title@deepseek-ai/dsh-session-title | 0 | 0 | 5 | 7 |
packages/session/session-title-all-prompts-llm@deepseek-ai/dsh-session-title-all-prompts-llm | 0 | 0 | 2 | 1 |
packages/session/session-title-first-prompt-llm@deepseek-ai/dsh-session-title-first-prompt-llm | 0 | 0 | 2 | 3 |
packages/session/session-title-llm@deepseek-ai/dsh-session-title-llm | 0 | 0 | 2 | 1 |
packages/settings/settings@deepseek-ai/dsh-settings | 2 | 3 | 4 | 4 |
packages/settings/settings-file@deepseek-ai/dsh-settings-file | 0 | 0 | 2 | 5 |
packages/shell/bash-local@deepseek-ai/dsh-bash-local | 0 | 0 | 2 | 2 |
packages/shell/bash-sandbox@deepseek-ai/dsh-bash-sandbox | 2 | 2 | 3 | 5 |
packages/shell/pwsh-local@deepseek-ai/dsh-pwsh-local | 0 | 0 | 3 | 2 |
packages/shell/pwsh-sandbox@deepseek-ai/dsh-pwsh-sandbox | 0 | 0 | 3 | 2 |
packages/shell/shell@deepseek-ai/dsh-shell | 1 | 1 | 4 | 2 |
packages/shell/shell-env@deepseek-ai/dsh-shell-env | 1 | 2 | 2 | 1 |
packages/shell/tool-bash@deepseek-ai/dsh-tool-bash | 2 | 4 | 4 | 2 |
packages/shell/tool-bash-persistent@deepseek-ai/dsh-tool-bash-persistent | 1 | 1 | 2 | 2 |
packages/shell/tool-pwsh@deepseek-ai/dsh-tool-pwsh | 2 | 4 | 4 | 3 |
packages/skill/skill@deepseek-ai/dsh-skill | 1 | 6 | 2 | 1 |
packages/skill/skill-badge@deepseek-ai/dsh-skill-badge | 0 | 0 | 2 | 1 |
packages/skill/skill-filesystem@deepseek-ai/dsh-skill-filesystem | 1 | 5 | 2 | 2 |
packages/skill/tool-skill@deepseek-ai/dsh-tool-skill | 1 | 5 | 2 | 1 |
packages/spill/spill@deepseek-ai/dsh-spill | 0 | 0 | 3 | 1 |
packages/spill/spill-local@deepseek-ai/dsh-spill-local | 0 | 0 | 3 | 1 |
packages/spill/spill-policy@deepseek-ai/dsh-spill-policy | 0 | 0 | 3 | 1 |
packages/storage/storage@deepseek-ai/dsh-storage | 2 | 2 | 5 | 2 |
packages/storage/storage-domain@deepseek-ai/dsh-storage-domain | 1 | 2 | 6 | 3 |
packages/storage/storage-json@deepseek-ai/dsh-storage-json | 3 | 3 | 5 | 1 |
packages/storage/storage-sqlite@deepseek-ai/dsh-storage-sqlite | 3 | 4 | 4 | 2 |
packages/subagent/subagent@deepseek-ai/dsh-subagent | 15 | 40 | 18 | 10 |
packages/subagent/subagent-acp@deepseek-ai/dsh-subagent-acp | 2 | 4 | 3 | 4 |
packages/subagent/subagent-claude-code@deepseek-ai/dsh-subagent-claude-code | 1 | 1 | 4 | 5 |
packages/subagent/subagent-codex@deepseek-ai/dsh-subagent-codex | 4 | 5 | 4 | 6 |
packages/subagent/subagent-dsh-sdk@deepseek-ai/dsh-subagent-dsh-sdk | 1 | 1 | 3 | 2 |
packages/subagent/subagent-fork-in-process@deepseek-ai/dsh-subagent-fork-in-process | 2 | 2 | 2 | 2 |
packages/subagent/subagent-in-process-driver@deepseek-ai/dsh-subagent-in-process-driver | 2 | 3 | 3 | 4 |
packages/subagent/subagent-spawn-in-process@deepseek-ai/dsh-subagent-spawn-in-process | 1 | 1 | 2 | 3 |
packages/subagent/tool-subagent@deepseek-ai/dsh-tool-subagent | 1 | 3 | 2 | 3 |
packages/subagent/tool-subagent-control@deepseek-ai/dsh-tool-subagent-control | 2 | 3 | 3 | 3 |
packages/subagent/tool-subagent-report@deepseek-ai/dsh-tool-subagent-report | 1 | 1 | 2 | 1 |
packages/subprocess/subprocess@deepseek-ai/dsh-subprocess | 2 | 5 | 3 | 1 |
packages/subprocess/subprocess-local@deepseek-ai/dsh-subprocess-local | 3 | 5 | 5 | 7 |
packages/terminal/terminal@deepseek-ai/dsh-terminal | 1 | 1 | 3 | 1 |
packages/terminal/terminal-bash@deepseek-ai/dsh-terminal-bash | 2 | 2 | 5 | 5 |
packages/terminal/tool-terminal@deepseek-ai/dsh-tool-terminal | 1 | 1 | 3 | 3 |
packages/test-support/acp-snapshot@deepseek-ai/dsh-acp-snapshot | 2 | 4 | 6 | 4 |
packages/test-support/agent-loop-testkit@deepseek-ai/dsh-agent-loop-testkit | 0 | 0 | 2 | 1 |
packages/test-support/client-runtime@deepseek-ai/dsh-client-test-runtime | 0 | 0 | 10 | 3 |
packages/test-support/llm-mock-server@deepseek-ai/dsh-llm-mock-server | 0 | 0 | 4 | 3 |
packages/test-support/llm-replay@deepseek-ai/dsh-llm-replay | 3 | 5 | 2 | 1 |
packages/test-support/loader-smoke@deepseek-ai/dsh-loader-smoke | 0 | 0 | 3 | 6 |
packages/todo/tool-todo@deepseek-ai/dsh-tool-todo | 4 | 4 | 4 | 5 |
packages/typert/generator@deepseek-ai/dsh-typert-generator | 0 | 0 | 17 | 18 |
packages/typert/loader@deepseek-ai/dsh-typert-loader | 0 | 0 | 2 | 1 |
packages/typert/protocol@deepseek-ai/dsh-typert-protocol | 0 | 0 | 3 | 2 |
packages/typert/registry@deepseek-ai/dsh-typert-registry | 0 | 0 | 5 | 1 |
packages/util/atomic-write@deepseek-ai/dsh-atomic-write | 1 | 1 | 2 | 2 |
packages/util/brand@deepseek-ai/dsh-brand | 0 | 0 | 2 | 0 |
packages/util/home-paths@deepseek-ai/dsh-home-paths | 0 | 0 | 2 | 1 |
packages/util/launch-environment@deepseek-ai/dsh-launch-environment | 0 | 0 | 2 | 1 |
packages/util/native-command@deepseek-ai/dsh-native-command | 1 | 1 | 2 | 1 |
packages/util/output-retention@deepseek-ai/dsh-output-retention | 0 | 0 | 2 | 1 |
packages/util/timeout@deepseek-ai/dsh-timeout | 1 | 1 | 2 | 1 |
packages/web/tool-web@deepseek-ai/dsh-tool-web | 1 | 1 | 5 | 4 |
packages/web/web@deepseek-ai/dsh-web | 2 | 2 | 3 | 1 |
packages/web/web-fetch-http@deepseek-ai/dsh-web-fetch-http | 3 | 4 | 4 | 1 |
packages/web/web-search-deepseek@deepseek-ai/dsh-web-search-deepseek | 2 | 4 | 4 | 4 |
packages/web/web-search-exa@deepseek-ai/dsh-web-search-exa | 0 | 0 | 4 | 2 |
packages/web/web-search-perplexity@deepseek-ai/dsh-web-search-perplexity | 0 | 0 | 4 | 2 |
packages/workflow/tool-ralph@deepseek-ai/dsh-tool-ralph | 2 | 9 | 2 | 2 |
packages/workflow/tool-workflow@deepseek-ai/dsh-tool-workflow | 3 | 5 | 3 | 2 |
packages/workflow/workflow@deepseek-ai/dsh-workflow | 3 | 5 | 4 | 2 |
packages/workflow/workflow-worker-thread@deepseek-ai/dsh-workflow-worker-thread | 6 | 21 | 10 | 8 |
packages/workspace/workspace@deepseek-ai/dsh-workspace | 4 | 10 | 6 | 2 |
Repository zones · 9
| Package / zone | Catalog paths | Evidence records | Source files | Test files |
|---|---|---|---|---|
.agents | 2 | 4 | — | — |
.github | 3 | 9 | — | — |
apps | 10 | 22 | — | — |
docs | 6 | 10 | — | — |
examples | 3 | 6 | — | — |
packages-unmatched | 3 | 4 | — | — |
python | 3 | 6 | — | — |
repository-root | 4 | 10 | — | — |
scripts | 17 | 21 | — | — |
6. Catalog path index · 533
Universe: distinct paths represented by the evidence catalog, not every file in the repository.
| Pinned source | Package or repository zone | Catalog ranges |
|---|---|---|
.agents/notes/implemented/bug-fix/2026-08-07-cancel-convergence-wake-latch.md | .agents | 9-29 · INBOX-WAKE-LATCH-NOTE |
.agents/notes/implemented/feature/2026-07-10-parallel-tool-call-execution.md | .agents | 17-25 · PARALLEL-SAFETY-NOTE43-51 · PARALLEL-NOTE-DRIFT53-65 · TOOLCAT-PARALLEL-OPTINS |
.github/workflows/ci.yml | .github | 63-257 · TINV-CI-LINUX260-296 · TINV-NODE-MATRIX328-489 · OPEN-CI-WINDOWS-SIGNALS328-489 · TINV-WINDOWS491-696 · OPEN-CI-SERIAL-LANES904-935 · OPEN-CI-VERDICT904-935 · TINV-REQUIRED-VERDICT |
.github/workflows/e2e.yml | .github | 1-65 · OPEN-REAL-API-CI |
.github/workflows/sandbox.yml | .github | 1-113 · OPEN-SANDBOX-CI |
AGENTS.md | repository-root | 5-8 · ROOT-PREVIEW91-100 · ROOT-EFFECTS99-104 · ROOT-MODEL-LOGGED107-116 · ROOT-BOUNDARIES115-117 · ROOT-TYPED-TRUST |
apps/cli/config/agent-presets/code/agent.cordis.yml | apps | 164-220 · MULTIAGENT-CODE-PRESET |
apps/cli/config/agent-presets/cordis/agent.cordis.yml | apps | 155-220 · MULTIAGENT-CORDIS-PRESET |
apps/cli/config/agent-presets/minimal/agent.cordis.yml | apps | 1-62 · MEMORY-MINIMAL-PRESET1-60 · SHELL-MINIMAL-COMPOSITION1-62 · TOOLCAT-MINIMAL |
apps/cli/config/agent-presets/standard/agent.cordis.yml | apps | 1-251 · MULTIAGENT-STANDARD-PRESET35-74 · SHELL-STANDARD-COMPOSITION35-124 · TOOLCAT-STANDARD-BASE76-87 · CAP-SKILL-SHIPPED76-155 · MEMORY-STANDARD-PRESET157-251 · TOOLCAT-STANDARD-ORCHESTRATION165-233 · WORKFLOW-SHIPPED-PRESET |
apps/cli/package.json | apps | 1-12 · OPEN-CLI-VERSION |
apps/cli/src/bin.ts | apps | 27-52 · CLI-PROFILE-DISPATCH |
apps/cli/src/plugin.ts | apps | 55-157 · SEC-PLUGIN-PNPM |
apps/cli/src/profile-boot.ts | apps | 56-170 · OBS-HARD-OPTOUT59-103 · PROFILE-ROOT121-170 · PROFILE-COMPOSE121-170 · SEC-PROFILE-ORDER227-299 · PROFILE-LIVE |
apps/cli/tests/memory-mcp-configs.spec.ts | apps | 83-131 · MEMORY-MCP-CONTRACT-TEST |
apps/web/tests/stats-paged-history.e2e.ts | apps | 73-135 · OBS-TEST-STATS-PAGING |
docs/agent-lifecycle.md | docs | 19-80 · TURN-SEQUENCE |
docs/architecture.md | docs | 9-13 · ARCH-PLUGIN-CORE15-37 · ARCH-LAYERS63-90 · ARCH-TURN92-102 · ARCH-LOG |
docs/cordis-primer.md | docs | 7-44 · DESIGN-CORDIS-SEMANTICS |
docs/testing.md | docs | 7-15 · TINV-POLICY |
docs/tool-catalog.md | docs | 1-41 · TOOLCAT-GENERATED16-41 · TOOLCAT-PACKAGE-MAP |
docs/tool-execution-pipeline.md | docs | 4-60 · TOOL-PIPELINE |
examples/headless-agent/advanced.cordis.yml | examples | 28-34 · CODEMODE-SELF-MOD-OPTIN28-34 · SEC-SELF-MOD-OPTIN |
examples/headless-agent/e2b.cordis.yml | examples | 1-41 · SANDBOX-E2B-COMPOSITION35-57 · CAP-LSP-OPTIONAL |
examples/mcp-memory/README.md | examples | 1-33 · CAP-MCP-DEFAULT-OFF5-82 · MEMORY-MCP-BOUNDARY |
packages/acp/acp/package.json | packages/acp/acp | 1-36 · ACP-PACKAGE |
packages/acp/acp/src/codec.ts | packages/acp/acp | 9-65 · ACP-CODEC |
packages/acp/acp/src/index.ts | packages/acp/acp | 1-45 · SEC-ACP-TRUST18-35 · ACP-SDK-IMPORTS130-229 · ACP-OUTPUT-PERMISSION145-345 · ACP-PROMPT-CANCEL212-229 · APPROVAL-ACP-ANSWERER212-274 · SEC-ACP-BRIDGE231-436 · ACP-HANDSHAKE348-415 · ACP-QUIESCE348-353 · ACP-SDK-CONNECTION430-433 · SEC-ACP-CWD |
packages/acp/acp/tests/bridge.spec.ts | packages/acp/acp | 14-147 · TEST-ACP |
packages/AGENTS.md | packages-unmatched | 5-18 · PKG-INVARIANTS8-18 · DESIGN-PACKAGE-RULES |
packages/api/gateway/src/client/index.ts | packages/api/gateway | 174-260 · REMOTE-CLIENT-MOUNT327-415 · REMOTE-CLIENT-INVOKE399-409 · SEC-REMOTE-CARRIER549-575 · SEC-REMOTE-CODECS |
packages/api/gateway/src/index.ts | packages/api/gateway | 90-235 · REMOTE-HOST-DISPATCH159-489 · REMOTE-HOST-ERRORS |
packages/api/gateway/src/types.ts | packages/api/gateway | 6-46 · REMOTE-GATEWAY-TYPES |
packages/api/gateway/tests/gateway.client.spec.ts | packages/api/gateway | 1-829 · TEST-REMOTE |
packages/api/remotes/src/agent-lookup.ts | packages/api/remotes | 113-210 · PLANSTATE-GOAL-API-ROUTING113-211 · REMOTE-AGENT-RESOLVE |
packages/api/remotes/src/client/index.ts | packages/api/remotes | 97-121 · SEC-REMOTE-MOUNT |
packages/api/remotes/src/remote-events.ts | packages/api/remotes | 1-29 · REMOTE-EVENT-ALLOWLIST1-29 · SEC-REMOTE-EVENTS |
packages/attachment/attachment-local/README.md | packages/attachment/attachment-local | 1-7 · PERSIST-ATTACH-DECODE-DOC17-20 · OPEN-ATTACHMENT-LOCAL-RETENTION17-21 · PERSIST-ATTACH-LIMITS |
packages/attachment/attachment-local/src/image.ts | packages/attachment/attachment-local | 21-65 · PERSIST-ATTACH-DECODE-IMPL |
packages/attachment/attachment-local/src/store.ts | packages/attachment/attachment-local | 19-194 · PERSIST-ATTACH-STORE46-230 · PERSIST-ATTACH-DECODE-SOURCE |
packages/attachment/attachment/README.md | packages/attachment/attachment | 17-21 · OPEN-ATTACHMENT-RETENTION |
packages/attachment/attachment/src/index.ts | packages/attachment/attachment | 28-59 · PERSIST-ATTACH-SEAM |
packages/boot/app-boot/src/index.ts | packages/boot/app-boot | 92-198 · SEC-ENV-LAYERS225-265 · BOOT-HMR225-338 · FAILURE-HMR-WATCH267-337 · SEC-PATCH-LAYERS475-528 · SEC-LOADER-IMPORT757-801 · BOOT-TRANSACTION757-801 · SEC-BOOT-TRANSACTION |
packages/boot/app-boot/src/profile.ts | packages/boot/app-boot | 104-168 · PROFILE-TEMPLATES204-255 · PROFILE-MODULE-FALLBACK357-420 · PROFILE-LOAD |
packages/boot/app-boot/tests/config-reload.spec.ts | packages/boot/app-boot | 61-84 · FAILURE-HMR-CONFIG-TEST |
packages/boot/app-boot/tests/profile.spec.ts | packages/boot/app-boot | 121-143 · PROFILE-ORDER-TEST |
packages/boot/app-boot/tests/user-patches.spec.ts | packages/boot/app-boot | 315-356 · FAILURE-HMR-USER-PATCH-TEST315-371 · PROFILE-HMR-TEST |
packages/bundle/base/cordis.patch.yml | packages/bundle/base | 1-24 · BASE-BUNDLE-SEMANTICS24-100 · BASE-BUNDLE-SPINE98-121 · MEMORY-DEFAULT-COMPOSITION98-356 · PROJ-SHIPPED-COMPOSITION98-115 · TOOLCAT-ATTACHMENT129-161 · OBS-BASE-DEFAULT163-205 · SEC-SHIPPED-PERMISSION166-205 · APPROVAL-SHIPPED-PRESETS166-205 · SANDBOX-SHIPPED-POLICY210-230 · SANDBOX-SHIPPED-FS232-248 · CAP-SKILL-BASE265-279 · PLANSTATE-SHIPPED-PLAN-POLICY292-338 · MULTIAGENT-BASE-COMPOSITION315-382 · WORKFLOW-SHIPPED-BASE367-375 · PLANSTATE-SHIPPED-TODO-POLICY396-418 · CAP-WEB-SHIPPED441-445 · SANDBOX-SHIPPED-FS-PROVIDER |
packages/bundle/headless/cordis.patch.yml | packages/bundle/headless | 1-35 · HEADLESS-BUNDLE17-26 · CODEMODE-HEADLESS-COMPOSITION |
packages/bundle/web-app/cordis.patch.yml | packages/bundle/web-app | 35-50 · CODEMODE-WEB-COMPOSITION97-203 · WEBUI-DUAL-ROSTER276-408 · WEB-AGENT-PLANE367-390 · MULTIAGENT-WEB-PLANE380-410 · WORKFLOW-WEB-ISOLATION |
packages/client/connection/README.md | packages/client/connection | 23-26 · OPEN-API-BODY-BOUND |
packages/client/connection/src/api-request-trust.ts | packages/client/connection | 1-123 · API-TRUST-FENCE1-122 · APPROVAL-WEB-TRUST1-122 · SEC-BROWSER-FENCE |
packages/client/connection/src/client/connection.ts | packages/client/connection | 3-201 · API-CONNECTION-LOOP19-201 · WEBUI-CONNECTION-GENERATION |
packages/client/connection/src/client/rpc.ts | packages/client/connection | 24-46 · API-HTTP-CLIENT |
packages/client/connection/src/client/web-api-client.ts | packages/client/connection | 34-90 · API-WS-CLIENT |
packages/client/connection/src/http-bridge.ts | packages/client/connection | 8-99 · API-HTTP-BRIDGE |
packages/client/connection/src/index.ts | packages/client/connection | 69-195 · API-PRIVILEGED-LOOPBACK69-159 · SEC-BROWSER-PRIVILEGED |
packages/client/connection/src/rpc-host.ts | packages/client/connection | 144-223 · API-HTTP-HANDLER |
packages/client/connection/src/websocket-downlink.ts | packages/client/connection | 46-137 · API-WS-HOST |
packages/client/connection/tests/connection.client.spec.ts | packages/client/connection | 1-322 · TEST-CONNECTION22-183 · WEBUI-CONNECTION-TESTS |
packages/client/hmr/src/client/index.ts | packages/client/hmr | 1-180 · WEBUI-HMR-SWAP |
packages/client/hmr/src/index.ts | packages/client/hmr | 30-190 · WEBUI-HMR-HOST |
packages/client/hmr/tests/node-half.client.spec.ts | packages/client/hmr | 85-203 · WEBUI-HMR-TESTS |
packages/client/locale/src/client/index.ts | packages/client/locale | 104-207 · WEBUI-LOCALE-OWNER346-391 · WEBUI-LOCALE-INSTALL |
packages/client/locale/tests/locale.client.spec.ts | packages/client/locale | 30-239 · WEBUI-PREFERENCE-TESTS |
packages/client/modules/src/client/manifest.ts | packages/client/modules | 43-143 · WEBUI-MANIFEST-CONTRACT |
packages/client/modules/src/client/system.ts | packages/client/modules | 77-195 · WEBUI-LAZY-MODULES |
packages/client/modules/src/index.ts | packages/client/modules | 184-419 · WEBUI-HOST-GRAPH |
packages/client/modules/tests/loader.client.spec.ts | packages/client/modules | 63-293 · WEBUI-MODULE-TESTS |
packages/client/runtime/README.md | packages/client/runtime | 89-93 · OPEN-CLIENT-UNLOAD89-92 · WEBUI-UNLOAD-LIMIT |
packages/client/runtime/src/client/contract/conversation.ts | packages/client/runtime | 164-227 · WEBUI-CONVERSATION-DEFINITION |
packages/client/runtime/src/client/index.ts | packages/client/runtime | 69-73 · WEBUI-RUNTIME-STORE-OWNER182-232 · WEBUI-RUNTIME-WIRING204-232 · WEBUI-RUNTIME-RECONNECT |
packages/client/runtime/src/client/sessions/conversation-assembler.ts | packages/client/runtime | 133-248 · LOG-CONVERSATION-ASSEMBLER162-257 · WEBUI-CONVERSATION-INCREMENTAL337-446 · WEBUI-CONVERSATION-FOLD707-743 · WEBUI-CONVERSATION-VIEW-VALIDATION |
packages/client/runtime/src/client/sessions/conversation-location-index.ts | packages/client/runtime | 201-464 · WEBUI-LOCATION-INDEX |
packages/client/runtime/src/client/sessions/manager.ts | packages/client/runtime | 254-320 · WEBUI-LAZY-SESSION438-735 · PROJ-CLIENT-MANAGER438-470 · WEBUI-LIST-REFETCH675-789 · WEBUI-COLD-SESSION-DISPATCH878-909 · WEBUI-MANAGER-RECONNECT1020-1075 · WEBUI-SELECTION-ADDRESSABILITY |
packages/client/runtime/src/client/sessions/projection-store.ts | packages/client/runtime | 67-177 · PROJ-CLIENT-STORE128-177 · PROJ-CLIENT-EQUAL-SEQ |
packages/client/runtime/src/client/sessions/queue-mirror.ts | packages/client/runtime | 23-73 · INBOX-CLIENT-MIRROR |
packages/client/runtime/src/client/sessions/service.ts | packages/client/runtime | 228-365 · WEBUI-SESSION-RUNTIME599-766 · WEBUI-SESSION-SCOPE-LIFECYCLE599-766 · WEBUI-SINGLE-STAGE-LIMIT659-733 · WEBUI-SESSION-SELECTION |
packages/client/runtime/src/client/sessions/session.ts | packages/client/runtime | 184-329 · INBOX-CHILD-CLIENT376-723 · OBS-HISTORY-CLIENT412-485 · INBOX-RECONNECT-CLIENT412-425 · WEBUI-SESSION-RESYNC612-724 · WEBUI-SESSION-GAP-REPAIR614-729 · LOG-CLIENT-STITCH |
packages/client/runtime/src/client/sessions/steering-history.ts | packages/client/runtime | 20-63 · INBOX-HISTORY-CLASSIFICATION |
packages/client/runtime/src/client/slots.ts | packages/client/runtime | 128-204 · WEBUI-SLOT-DECL-INJECT264-456 · WEBUI-STORE-SCOPE-LIFECYCLE |
packages/client/runtime/tests/conversation-assembler.client.spec.ts | packages/client/runtime | 126-262 · WEBUI-CONVERSATION-TESTS564-860 · WEBUI-LOCATION-TESTS |
packages/client/runtime/tests/manager.client.spec.ts | packages/client/runtime | 78-166 · WEBUI-MANAGER-TESTS |
packages/client/runtime/tests/session.client.spec.ts | packages/client/runtime | 178-374 · WEBUI-SESSION-TESTS |
packages/client/runtime/tests/sessions-service.client.spec.ts | packages/client/runtime | 122-174 · WEBUI-SESSION-SCOPE-TESTS |
packages/client/ui-conversation/README.md | packages/client/ui-conversation | 57-64 · WEBUI-DETAILS-LIMIT |
packages/client/ui-conversation/src/client/chat/ChatView.tsx | packages/client/ui-conversation | 400-406 · INBOX-PENDING-STEERING-UI |
packages/client/ui-conversation/src/client/chat/StatsLine.tsx | packages/client/ui-conversation | 34-205 · OBS-STATS-UI |
packages/client/ui-conversation/src/client/conversation-nodes/assistant.ts | packages/client/ui-conversation | 72-205 · LOG-CLIENT-ASSISTANT |
packages/client/ui-conversation/src/client/input/submission-policy.ts | packages/client/ui-conversation | 17-57 · INBOX-SUBMISSION-POLICY |
packages/client/ui-conversation/src/client/queue/QueueDock.tsx | packages/client/ui-conversation | 27-205 · INBOX-QUEUE-DOCK |
packages/client/ui-conversation/src/client/skeleton/ApprovalPanel.tsx | packages/client/ui-conversation | 22-87 · APPROVAL-UI-PANEL |
packages/client/ui-conversation/src/client/skeleton/InputBar.tsx | packages/client/ui-conversation | 313-339 · INBOX-INPUT-GESTURES541-555 · INBOX-CHILD-COMPOSER |
packages/client/ui-conversation/src/client/skeleton/PermissionSelect.tsx | packages/client/ui-conversation | 10-170 · APPROVAL-PERMISSION-COMPOSER |
packages/client/ui-conversation/src/client/skeleton/TodoPanel.tsx | packages/client/ui-conversation | 81-153 · PLANSTATE-TODO-UI |
packages/client/ui-conversation/src/client/stores.ts | packages/client/ui-conversation | 1-34 · WEBUI-CHAT-STORE |
packages/client/ui-goal/README.md | packages/client/ui-goal | 5-21 · PLANSTATE-DOC-GOAL-UI |
packages/client/ui-goal/src/client/goal-command-input.ts | packages/client/ui-goal | 26-70 · PLANSTATE-GOAL-COMMAND-UI |
packages/client/ui-goal/src/client/GoalBar.tsx | packages/client/ui-goal | 34-186 · PLANSTATE-GOAL-UI |
packages/client/ui-goal/src/client/GoalCommandInputView.tsx | packages/client/ui-goal | 11-30 · PLANSTATE-GOAL-COMMAND-VIEW |
packages/client/ui-goal/src/client/index.ts | packages/client/ui-goal | 40-99 · PLANSTATE-GOAL-UI-REMOTE |
packages/client/ui-jobs/README.md | packages/client/ui-jobs | 5-24 · SHELL-JOBS-UI |
packages/client/ui-layout/src/client/index.ts | packages/client/ui-layout | 120-137 · WEBUI-ROOT-DECLARATION145-155 · WEBUI-THEME-PRESENTER |
packages/client/ui-layout/src/client/theme-presenter.ts | packages/client/ui-layout | 1-61 · WEBUI-THEME-DOM |
packages/client/ui-layout/tests/theme-presenter.client.spec.ts | packages/client/ui-layout | 44-90 · WEBUI-THEME-PRESENTER-TESTS |
packages/client/ui-permission-presets/src/client/index.ts | packages/client/ui-permission-presets | 55-169 · APPROVAL-PERMISSION-DECORATION |
packages/client/ui-permission-presets/src/client/PermissionRow.tsx | packages/client/ui-permission-presets | 15-126 · APPROVAL-PERMISSION-SETTINGS |
packages/client/ui-permission-presets/src/client/settings-store.ts | packages/client/ui-permission-presets | 128-155 · APPROVAL-PERMISSION-SETTINGS-WRITE |
packages/client/ui-plan/src/client/PlanModeControl.tsx | packages/client/ui-plan | 15-68 · PLANSTATE-PLAN-UI |
packages/client/ui-settings-general/src/client/index.ts | packages/client/ui-settings-general | 84-177 · WEBUI-SETTINGS-SHELL |
packages/client/ui-settings/src/client/settings-scope.ts | packages/client/ui-settings | 35-269 · WEBUI-SETTINGS-SCOPE |
packages/client/ui-settings/tests/settings-scope.client.spec.ts | packages/client/ui-settings | 65-421 · WEBUI-SETTINGS-TESTS |
packages/client/ui-skill/README.md | packages/client/ui-skill | 5-9 · MEMORY-SKILL-CLIENT-UI |
packages/client/ui-slots/src/index.ts | packages/client/ui-slots | 90-145 · WEBUI-SLOT-TYPE-CONTRACT200-450 · WEBUI-FOUR-SHARES787-895 · WEBUI-SLOT-CORE-COMMIT1123-1148 · WEBUI-SLOT-CASCADE |
packages/client/ui-slots/src/store.ts | packages/client/ui-slots | 19-125 · WEBUI-STORE-CONTRACT |
packages/client/ui-slots/tests/core.client.spec.ts | packages/client/ui-slots | 52-107 · WEBUI-SLOT-TESTS |
packages/client/ui-subagent/src/client/index.ts | packages/client/ui-subagent | 43-52 · INBOX-CHILD-OFFLINE-UI |
packages/client/ui-theme/src/client/index.ts | packages/client/ui-theme | 139-238 · WEBUI-THEME-OWNER |
packages/client/ui-theme/tests/theme.client.spec.ts | packages/client/ui-theme | 24-249 · WEBUI-THEME-TESTS |
packages/client/ui-tool/src/client/apply.ts | packages/client/ui-tool | 22-44 · WEBUI-TOOL-REGISTRATION |
packages/client/ui-tool/src/client/contract/slots.ts | packages/client/ui-tool | 7-49 · WEBUI-TOOLVIEW-CONTRACT |
packages/client/ui-tool/src/client/tool/components/ToolRow.tsx | packages/client/ui-tool | 128-180 · WEBUI-TOOL-LOCAL-STATE |
packages/client/ui-tool/src/client/tool/models/tool-call-model.ts | packages/client/ui-tool | 204-240 · WEBUI-TOOL-MODEL |
packages/client/ui-tool/src/client/tool/ToolCallTree.tsx | packages/client/ui-tool | 13-104 · WEBUI-TOOL-DISPATCH |
packages/client/ui-tool/src/client/tool/toolviews/GenericToolCard.tsx | packages/client/ui-tool | 36-77 · WEBUI-GENERIC-TOOLVIEW |
packages/client/ui-tool/src/client/tool/toolviews/todo-row.tsx | packages/client/ui-tool | 1-97 · PLANSTATE-TODO-ROW |
packages/client/ui-tool/tests/toolview-slot.client.spec.tsx | packages/client/ui-tool | 91-230 · WEBUI-TOOL-TESTS |
packages/client/ui-trajectory/README.md | packages/client/ui-trajectory | 5-17 · OBS-TRAJECTORY-CONTRACT |
packages/client/ui-trajectory/src/client/trajectory-request-header-definition.ts | packages/client/ui-trajectory | 9-80 · OBS-TRAJECTORY-PROMPT |
packages/client/ui-trajectory/src/client/trajectory-snapshot-builder.ts | packages/client/ui-trajectory | 137-266 · OBS-TRAJECTORY-BUILDER |
packages/client/ui-user-questions/src/client/PlanReviewPanel.tsx | packages/client/ui-user-questions | 36-99 · PLANSTATE-PLAN-REVIEW-UI |
packages/client/ui-workspace/README.md | packages/client/ui-workspace | 5-11 · MEMORY-WEB-SEARCH |
packages/client/web-react/src/bind.ts | packages/client/web-react | 1-24 · WEBUI-REACT-BINDING |
packages/client/web-react/src/scoped-slots.tsx | packages/client/web-react | 31-88 · WEBUI-STALE-AUTHORIZATION343-470 · WEBUI-RENDER-KIT |
packages/client/web-react/src/session-provider.tsx | packages/client/web-react | 119-159 · WEBUI-SESSION-PROVIDER |
packages/client/web-react/tests/scoped-slots-real-core.client.spec.tsx | packages/client/web-react | 62-125 · WEBUI-REACT-BINDING-TESTS |
packages/client/web-react/tests/session-provider.client.spec.tsx | packages/client/web-react | 92-190 · WEBUI-WEB-REACT-TESTS |
packages/client/web/src/app-shell.ts | packages/client/web | 29-49 · WEBUI-SHELL-INSTALL |
packages/client/web/src/app.tsx | packages/client/web | 26-43 · WEBUI-SHELL-ROOT |
packages/client/web/src/boot.tsx | packages/client/web | 97-143 · WEBUI-BROWSER-CONTEXT150-237 · WEBUI-BOOT-SETTLE |
packages/code-runtime/code-runtime-worker-thread/src/bootstrap.ts | packages/code-runtime/code-runtime-worker-thread | 301-424 · CODEMODE-WORKER-BOOT |
packages/code-runtime/code-runtime-worker-thread/src/index.ts | packages/code-runtime/code-runtime-worker-thread | 1-6 · CODEMODE-WORKER-TRUST1-6 · SEC-WORKER-TRUST230-317 · CODEMODE-WORKER-LIMITS363-460 · CODEMODE-WORKER-LIFECYCLE462-556 · CODEMODE-WORKER-BRIDGE |
packages/code-runtime/code-runtime-worker-thread/src/worker-json.ts | packages/code-runtime/code-runtime-worker-thread | 247-419 · CODEMODE-FLAT-JSON |
packages/code-runtime/code-runtime-worker-thread/tests/runtime.spec.ts | packages/code-runtime/code-runtime-worker-thread | 128-338 · CODEMODE-TEST-WORKER442-603 · CODEMODE-TEST-WORKER-HOSTILE |
packages/code-runtime/code-runtime/src/index.ts | packages/code-runtime/code-runtime | 95-134 · CODEMODE-RUNTIME-DESCRIPTORS |
packages/code-runtime/code-runtime/src/types.ts | packages/code-runtime/code-runtime | 9-127 · CODEMODE-SEAM |
packages/compaction/command-compact/src/index.ts | packages/compaction/command-compact | 22-105 · COMPACT-COMMAND |
packages/compaction/compaction-basic/src/config.ts | packages/compaction/compaction-basic | 67-166 · COMPACT-CONFIG |
packages/compaction/compaction-basic/src/index.ts | packages/compaction/compaction-basic | 137-223 · COMPACT-AUTO-TRIGGERS248-331 · COMPACT-POLICY-LOOP360-419 · COMPACT-MANUAL |
packages/compaction/compaction-basic/src/region.ts | packages/compaction/compaction-basic | 90-134 · COMPACT-RANGE137-253 · COMPACT-TRANSACTION338-485 · COMPACT-COMMIT |
packages/compaction/compaction-basic/src/summarizer.ts | packages/compaction/compaction-basic | 20-223 · COMPACT-SUMMARIZER |
packages/compaction/compaction-basic/tests/compaction-basic.spec.ts | packages/compaction/compaction-basic | 769-879 · COMPACT-PRUNE-TEST |
packages/compaction/compaction-basic/tests/compaction-loop-repro.spec.ts | packages/compaction/compaction-basic | 217-381 · COMPACT-REAL-LOOP-TEST |
packages/compaction/compaction-tool-result-pruner/src/config.ts | packages/compaction/compaction-tool-result-pruner | 7-64 · COMPACT-PRUNER-CONFIG |
packages/compaction/compaction-tool-result-pruner/src/index.ts | packages/compaction/compaction-tool-result-pruner | 63-184 · COMPACT-PRUNER |
packages/compaction/compaction/src/index.ts | packages/compaction/compaction | 87-169 · COMPACT-SEAM |
packages/compaction/compaction/src/invariant.ts | packages/compaction/compaction | 56-217 · COMPACT-INVARIANT |
packages/compaction/compaction/src/tool-pairing.ts | packages/compaction/compaction | 28-130 · COMPACT-PAIRING |
packages/compaction/compaction/src/types.ts | packages/compaction/compaction | 16-119 · COMPACT-EVENTS |
packages/context/agent-instructions/src/index.ts | packages/context/agent-instructions | 322-347 · PROMPT-CONTEXT-AGENT-INSTRUCTIONS |
packages/context/README.md | packages-unmatched | 5-14 · MEMORY-REFERENCE-OPT-IN |
packages/context/session-reference/README.md | packages/context/session-reference | 13-18 · MEMORY-REFERENCE-DOC-DRIFT45-50 · MEMORY-REFERENCE-TRUST |
packages/context/session-reference/src/index.ts | packages/context/session-reference | 42-217 · MEMORY-REFERENCE-RESOLVER |
packages/context/session-reference/src/projection.ts | packages/context/session-reference | 35-171 · MEMORY-REFERENCE-PROJECTION |
packages/context/session-reference/tests/session-reference.spec.ts | packages/context/session-reference | 320-641 · MEMORY-REFERENCE-CONTRACT-TEST |
packages/context/time-context/src/index.ts | packages/context/time-context | 170-208 · PROMPT-CONTEXT-TIME |
packages/context/tmux-context/src/index.ts | packages/context/tmux-context | 208-246 · PROMPT-CONTEXT-TMUX |
packages/core/agent-loop/README.md | packages/core/agent-loop | 68-74 · PARALLEL-AGENT-README |
packages/core/agent-loop/src/agent.ts | packages/core/agent-loop | 63-140 · AGENT-RUNTIME-SCOPE113-329 · FAILURE-AGENT-CANCEL113-220 · INBOX-DRIVER-WAKE113-132 · INBOX-SEND-MAP134-140 · INBOX-CANCEL-CODE195-243 · LOOP-DRIVER-PRESTEP202-323 · OBS-DURABLE-FAILURE225-287 · COMPACT-RUNTIME-ORDER225-350 · FAILURE-CHECKPOINT-AGENT-ORDER225-494 · MEMORY-AGENT-CONTEXT225-243 · PROMPT-STEP-BOUNDARY245-329 · INBOX-TURN-MACHINE245-330 · LOOP-TURN-STATE287-399 · INBOX-TOOL-CONTINUATION302-458 · FAILURE-AGENT-PREPARE-BOUNDARY332-400 · FAILURE-REQUEST-LOOP332-400 · LOG-ATTEMPT-ASSEMBLY332-400 · LOOP-STEP-STATE332-370 · PROMPT-RETRY-BOUNDARY373-399 · PARALLEL-LOOP-ENTRY393-399 · PARALLEL-AGENT-STEP403-494 · FAILURE-CHECKPOINT-REQUEST-PREFIX403-495 · LOOP-REQUEST-BUILD407-470 · OBS-REQUEST-HEADER |
packages/core/agent-loop/src/index.ts | packages/core/agent-loop | 300-345 · PARALLEL-CAP-CONFIG453-578 · AGENT-PREPARE-PUBLISH459-530 · FAILURE-AGENT-DISPOSAL606-709 · AGENT-CREATE-RESUME624-710 · PROJ-COLD-RESUME647-709 · INBOX-AGENT-RESUME |
packages/core/agent-loop/src/invariant.ts | packages/core/agent-loop | 18-55 · LOOP-REQUEST-INVARIANT18-55 · TINV-LOOP-REQUEST35-55 · LLM-REQUEST-INVARIANT-SCOPE |
packages/core/agent-loop/src/runtime-context.ts | packages/core/agent-loop | 24-75 · COMPACT-RUNTIME-PROJECTION24-75 · LOOP-RUNTIME-CONTEXT |
packages/core/agent-loop/src/tool-calls.ts | packages/core/agent-loop | 59-110 · SEC-MODEL-PARSE59-289 · TOOL-LOOP-COMMIT82-100 · PARALLEL-GROUPING82-119 · PLANSTATE-TOOL-SCHEDULER112-255 · FAILURE-TOOL-DRAIN121-245 · PARALLEL-ROLLING-POOL145-158 · INBOX-TOOL-CONTEXT164-175 · FAILURE-CHECKPOINT-TOOL-INTENT164-288 · PARALLEL-DURABLE-PAIRING198-245 · PARALLEL-ABORT215-245 · PARALLEL-SCHEDULER-FAILURE248-259 · PARALLEL-ABORT-RESULT |
packages/core/agent-loop/tests/cancel.spec.ts | packages/core/agent-loop | 75-174 · INBOX-CANCEL-BEHAVIOR-TEST103-218 · INBOX-CANCEL-LATCH-TEST129-403 · FAILURE-CANCEL-TEST384-403 · INBOX-CANCEL-DROP-TEST405-458 · FAILURE-CANCEL-TOOL-TEST |
packages/core/agent-loop/tests/contract-regressions.spec.ts | packages/core/agent-loop | 317-340 · INBOX-TURN-STOPPING-TEST1100-1199 · PROMPT-CANCEL-TEST |
packages/core/agent-loop/tests/interception.spec.ts | packages/core/agent-loop | 207-363 · LOOP-INTERCEPTION-TEST257-363 · INBOX-PRESTEP-CUTOFF-TEST |
packages/core/agent-loop/tests/loop.spec.ts | packages/core/agent-loop | 162-233 · LOOP-ORDER-TEST529-547 · LOG-RAW-CHUNK-TEST945-1054 · LOOP-OUTCOME-TEST1353-1398 · LOOP-ERROR-CONTAINMENT-TEST |
packages/core/agent-loop/tests/properties.spec.ts | packages/core/agent-loop | 107-190 · INBOX-FIFO-PROPERTY |
packages/core/agent-loop/tests/request-cache.e2e.ts | packages/core/agent-loop | 71-103 · PROMPT-CACHE-E2E |
packages/core/agent-loop/tests/request-error.spec.ts | packages/core/agent-loop | 30-141 · FAILURE-REQUEST-TEST30-141 · LOOP-REQUEST-ERROR-TEST |
packages/core/agent-loop/tests/request-reconstruction.spec.ts | packages/core/agent-loop | 433-455 · PROMPT-HEADER-CHANGE-TEST566-613 · LOG-REQUEST-RECONSTRUCTION566-613 · LOOP-RECONSTRUCTION-TEST |
packages/core/agent-loop/tests/scope-lifecycle.spec.ts | packages/core/agent-loop | 242-365 · AGENT-ATOMIC-TEST623-715 · AGENT-TEARDOWN-TEST921-1051 · FAILURE-DISPOSAL-TEST |
packages/core/agent-loop/tests/tool-calls.spec.ts | packages/core/agent-loop | 99-218 · PARALLEL-GROUP-TESTS144-217 · PARALLEL-RECLASS-TESTS220-262 · PARALLEL-ORDER-TESTS264-365 · PARALLEL-CAP-TESTS459-631 · PARALLEL-ABORT-TESTS523-589 · PARALLEL-CONTEXT-TEST633-690 · PARALLEL-FAILURE-TEST |
packages/core/agent/src/consumed-work.ts | packages/core/agent | 60-107 · INBOX-CONSUMED-WORK |
packages/core/agent/src/inbox.ts | packages/core/agent | 24-78 · AGENT-INBOX-REPLAY24-78 · INBOX-CLAIM-REPLAY24-39 · INBOX-SEED-BOUNDARY128-219 · AGENT-INBOX-COMMIT128-219 · INBOX-COMMIT-IDENTITY128-192 · MULTIAGENT-INBOX-SPLICE |
packages/core/agent/src/index.ts | packages/core/agent | 52-174 · AGENT-SETUP-CONTRACT300-358 · AGENT-INITIATOR-API360-430 · AGENT-FACTORY-SEAM450-617 · AGENT-REGISTRY-LIFECYCLE619-703 · AGENT-INITIATOR-DRAIN |
packages/core/agent/src/runtime-types.ts | packages/core/agent | 23-143 · AGENT-PUBLIC-INTERFACE43-143 · INBOX-ACTIVITY-CONTRACT |
packages/core/agent/src/types.ts | packages/core/agent | 9-25 · INBOX-EVENT-SCHEMA |
packages/core/agent/tests/agent.spec.ts | packages/core/agent | 41-142 · AGENT-INBOX-TEST258-298 · AGENT-REGISTRY-TEST |
packages/core/agent/tests/consumed-work.spec.ts | packages/core/agent | 38-158 · INBOX-CONSUMED-WORK-TEST |
packages/core/scope/src/store.ts | packages/core/scope | 153-266 · DESIGN-SCOPED-LAYERS |
packages/core/scope/tests/scope.spec.ts | packages/core/scope | 24-220 · DESIGN-SCOPE-TEST |
packages/core/session/src/index.ts | packages/core/session | 499-547 · SESSION-SEED-ACCEPTANCE550-654 · SESSION-APPEND-COMMIT700-747 · SESSION-DERIVED-CACHE1067-1153 · LOG-CORE-FORK |
packages/core/session/src/invariant.ts | packages/core/session | 22-165 · TINV-SESSION-RULES54-165 · SESSION-RELATIONAL-INVARIANT189-250 · SESSION-INVARIANT-COMMIT189-242 · TINV-SESSION-COMMIT |
packages/core/session/src/json.ts | packages/core/session | 69-178 · SESSION-LOSSLESS-JSON |
packages/core/session/src/known-event-types.ts | packages/core/session | 9-64 · SESSION-KNOWN-EVENTS |
packages/core/session/src/repair.ts | packages/core/session | 18-132 · FAILURE-CRASH-REPAIR18-132 · LOG-REPAIR-CLOSERS |
packages/core/session/src/request-header.ts | packages/core/session | 14-70 · PROMPT-HEADER-CANONICAL |
packages/core/session/src/surface.ts | packages/core/session | 70-142 · SESSION-SURFACE-PROJECTION184-243 · SESSION-SURFACE-PROVENANCE245-379 · SESSION-SURFACE-REPLACE |
packages/core/session/src/types.ts | packages/core/session | 33-99 · SESSION-FORMAT-HEADER152-309 · OBS-SESSION-LOG230-332 · SESSION-CORE-EVENTS335-435 · SESSION-EVENT-ENVELOPE |
packages/core/session/tests/derived-cache.spec.ts | packages/core/session | 22-86 · SESSION-DERIVED-ORACLE-TEST |
packages/core/session/tests/fork.spec.ts | packages/core/session | 63-318 · LOG-FORK-CONTRACT |
packages/core/session/tests/invariant.spec.ts | packages/core/session | 34-116 · TINV-SESSION-TEST |
packages/core/session/tests/session.spec.ts | packages/core/session | 116-155 · SESSION-SEED-REPLAY-TEST437-495 · SESSION-IMMUTABILITY-TEST1388-1507 · SESSION-APPEND-BOUNDARY-TEST |
packages/core/system-prompt/src/index.ts | packages/core/system-prompt | 139-183 · PROMPT-TOOL-ORDER204-294 · PROMPT-STRICT-RENDER337-455 · PROMPT-REGISTRY-CONTRACT467-541 · PROMPT-ASSEMBLY-PIPELINE |
packages/core/system-prompt/tests/scoped.spec.ts | packages/core/system-prompt | 32-79 · PROMPT-SCOPE-SHADOW |
packages/core/system-prompt/tests/system-prompt.spec.ts | packages/core/system-prompt | 212-333 · PROMPT-ASSEMBLY-MUTATION-TEST449-580 · PROMPT-VARIABLE-TEST |
packages/core/tools/README.md | packages/core/tools | 119-130 · PARALLEL-README |
packages/core/tools/src/code-mode.ts | packages/core/tools | 1-6 · CODEMODE-HISTORY283-340 · CODEMODE-RUN-SCHEMA328-457 · PARALLEL-CODE-DRIVER342-457 · CODEMODE-SCHEDULER448-629 · PARALLEL-CODE-DRAIN464-594 · CODEMODE-NESTED-DISPATCH464-594 · PARALLEL-CODE-BINDING596-640 · CODEMODE-BINDINGS |
packages/core/tools/src/index.ts | packages/core/tools | 212-301 · TOOL-DEFINITION257-269 · PARALLEL-MODE-CONTRACT304-472 · TOOL-EXECUTION-IDENTITY426-466 · PARALLEL-PIPELINE-SPLIT555-600 · TOOL-RESULT-TYPES580-711 · TOOL-DECISIONS582-592 · APPROVAL-PRE-DECISION650-673 · CODEMODE-MODES650-1001 · TOOL-PRESENTATION-MODES703-753 · APPROVAL-GUARD-CONTRACT865-891 · CODEMODE-SDK-LIVE894-973 · CODEMODE-SCOPE913-933 · CODEMODE-TRANSPORT976-1028 · CODEMODE-WIRE1003-1028 · CODEMODE-RUNTIME-READS1003-1028 · TOOL-CODE-RUNTIME-WINDOW1030-1061 · TOOL-REGISTRATION1031-1061 · SEC-RAW-TOOL-REGISTER1064-1226 · TOOL-SCOPE-VIEW1100-1127 · APPROVAL-GUARD-REGISTRY1208-1253 · CODEMODE-EXECUTION1228-1285 · TOOL-SCHEMA-PROJECTION1269-1285 · PARALLEL-CLASSIFIER1269-1285 · PLANSTATE-TOOL-EXCLUSIVE1328-1506 · TOOL-PIPELINE-PREPARE1364-1423 · APPROVAL-EXEC-SNAPSHOT1364-1450 · SEC-TOOL-ARG-SNAPSHOT1453-1506 · APPROVAL-PREPARE-ORDER1453-1599 · CODEMODE-POLICY1453-1507 · PARALLEL-PREPARE1453-1506 · SEC-TOOL-GATE1459-1559 · APPROVAL-CANCEL-DISPATCH1527-1599 · PARALLEL-DISPATCH1527-1599 · TOOL-PIPELINE-DISPATCH1569-1577 · FAILURE-CHECKPOINT-TOOL-WRAPPER1601-1675 · PARALLEL-FINALIZE1601-1675 · TOOL-PIPELINE-FINALIZE1656-1675 · PARALLEL-RESULT-OBSERVER1678-1728 · APPROVAL-ASK-MAPPING1731-1781 · TOOL-POST-POLICY1783-1862 · TOOL-CANONICAL-OUTPUT1880-1944 · TOOL-CANCELLATION |
packages/core/tools/src/invariant.ts | packages/core/tools | 17-120 · TOOL-RUNTIME-INVARIANT |
packages/core/tools/src/json-schema.ts | packages/core/tools | 1-430 · TOOL-SCHEMA-SUBSET |
packages/core/tools/src/presentation.ts | packages/core/tools | 1-388 · TOOL-PRESENTATION-INTENTS |
packages/core/tools/src/schema.ts | packages/core/tools | 538-617 · SEC-TOOL-DEFINE538-616 · TOOL-DEFINE-HELPER545-615 · PARALLEL-TYPED-CLASSIFIER |
packages/core/tools/tests/code-mode.spec.ts | packages/core/tools | 118-160 · CODEMODE-TEST-PRESENTATION509-799 · CODEMODE-TEST-SCHEDULER509-730 · PARALLEL-CODE-TESTS731-765 · PARALLEL-CODE-ORDER-TEST935-1206 · CODEMODE-TEST-POLICY-FAILURE |
packages/core/tools/tests/scoped.spec.ts | packages/core/tools | 284-375 · APPROVAL-GUARD-TESTS |
packages/core/tools/tests/tools.spec.ts | packages/core/tools | 676-853 · APPROVAL-TOOLS-TESTS |
packages/credentials/credentials-local/src/index.ts | packages/credentials/credentials-local | 1-34 · SEC-CREDENTIAL-LAYERS87-185 · SEC-CREDENTIAL-FILE249-380 · SEC-CREDENTIAL-RESOLVE |
packages/credentials/credentials/src/index.ts | packages/credentials/credentials | 1-99 · SEC-CREDENTIAL-SEAM |
packages/e2b/e2b/src/index.ts | packages/e2b/e2b | 1-179 · SEC-E2B-OWNER22-179 · SANDBOX-E2B-OWNER |
packages/e2b/fs-e2b/README.md | packages/e2b/fs-e2b | 26-32 · SANDBOX-E2B-LIMITS26-32 · SEC-E2B-LIMITS |
packages/e2b/fs-e2b/src/index.ts | packages/e2b/fs-e2b | 170-454 · SANDBOX-E2B-FS510-579 · SANDBOX-E2B-PUBLICATION |
packages/e2b/subprocess-e2b/src/index.ts | packages/e2b/subprocess-e2b | 51-205 · SHELL-E2B-SEAM103-204 · SANDBOX-E2B-SUBPROCESS |
packages/e2b/subprocess-e2b/src/process.ts | packages/e2b/subprocess-e2b | 93-665 · SANDBOX-E2B-PGID |
packages/extensions/cordis-client-runner/src/client/evaluator.ts | packages/extensions/cordis-client-runner | 1-222 · SEC-DYNAMIC-CLIENT157-222 · CODEMODE-CLIENT-EVAL |
packages/extensions/cordis-client-runner/src/client/guard.ts | packages/extensions/cordis-client-runner | 180-233 · CODEMODE-CLIENT-GUARD |
packages/extensions/cordis-client-runner/src/client/orchestrator.ts | packages/extensions/cordis-client-runner | 312-381 · CODEMODE-CLIENT-ORCHESTRATION |
packages/extensions/cordis-client-runner/src/client/runtime.ts | packages/extensions/cordis-client-runner | 176-341 · CODEMODE-CLIENT-LIFECYCLE |
packages/extensions/cordis-client-runner/tests/runner.client.spec.ts | packages/extensions/cordis-client-runner | 201-344 · CODEMODE-TEST-CLIENT-LIFECYCLE |
packages/extensions/cordis-host-runner/src/guard.ts | packages/extensions/cordis-host-runner | 542-655 · CODEMODE-DYNAMIC-TOOL-GUARD620-819 · SEC-DYNAMIC-GUARD680-819 · CODEMODE-CONTEXT-GUARD |
packages/extensions/cordis-host-runner/src/index.ts | packages/extensions/cordis-host-runner | 146-202 · CODEMODE-DEFINE-RUNNER238-374 · CODEMODE-RUN-APPROVAL238-312 · SEC-DYNAMIC-RUN406-428 · CODEMODE-APPROVAL-SETTLE810-992 · CODEMODE-ACTIVATION1019-1047 · CODEMODE-OUTCOME-STEERING1219-1239 · CODEMODE-RETRACT |
packages/extensions/cordis-host-runner/src/inspect-registry.ts | packages/extensions/cordis-host-runner | 98-198 · CODEMODE-INSPECT-REGISTRY |
packages/extensions/cordis-host-runner/src/registry.ts | packages/extensions/cordis-host-runner | 16-82 · CODEMODE-REGISTRY |
packages/extensions/cordis-host-runner/src/sandbox.ts | packages/extensions/cordis-host-runner | 1-11 · CODEMODE-HOST-SANDBOX1-11 · SEC-DYNAMIC-VM196-238 · CODEMODE-HOST-CODE |
packages/extensions/cordis-host-runner/tests/runner.spec.ts | packages/extensions/cordis-host-runner | 98-247 · CODEMODE-TEST-DYNAMIC-RUNNER |
packages/extensions/cordis-host-runner/tests/sandbox-context.spec.ts | packages/extensions/cordis-host-runner | 44-246 · CODEMODE-TEST-DYNAMIC-GUARD |
packages/extensions/cordis-host-runner/tests/versioning.spec.ts | packages/extensions/cordis-host-runner | 1-106 · CODEMODE-TEST-VERSIONING |
packages/extensions/tool-cordis/README.md | packages/extensions/tool-cordis | 5-27 · CODEMODE-README-DRIFT11-23 · SEC-DYNAMIC-ROOT-SCOPE |
packages/extensions/tool-cordis/src/index.ts | packages/extensions/tool-cordis | 34-146 · CODEMODE-CORDIS-INSPECT148-238 · CODEMODE-CORDIS-DEFINE240-379 · CODEMODE-CORDIS-LIFECYCLE-TOOLS497-529 · CODEMODE-REFERENCE |
packages/extensions/tool-cordis/src/prompt.ts | packages/extensions/tool-cordis | 3-54 · CODEMODE-CORDIS-PROMPT |
packages/feedback/command-feedback/src/index.ts | packages/feedback/command-feedback | 1-106 · OBS-FEEDBACK-DISCLOSURE |
packages/feedback/message-feedback/README.md | packages/feedback/message-feedback | 76-84 · OPEN-FEEDBACK-CONSISTENCY |
packages/fs/fs-local/README.md | packages/fs/fs-local | 36-45 · SEC-FS-LOCAL-LIMITS40-45 · SANDBOX-FS-LOCAL-LIMITS |
packages/fs/fs-local/src/fsio.ts | packages/fs/fs-local | 17-463 · SANDBOX-FS-READ-IO105-194 · SANDBOX-FS-IDENTITY518-615 · SANDBOX-FS-ATOMIC |
packages/fs/fs-local/src/index.ts | packages/fs/fs-local | 40-123 · SANDBOX-FS-LOCAL70-255 · SANDBOX-FS-LOCAL-MUTATION |
packages/fs/fs-observation-policy/README.md | packages/fs/fs-observation-policy | 30-50 · SANDBOX-OBSERVATION-DOC68-73 · SANDBOX-OBSERVATION-LIMITS68-73 · SEC-OBSERVATION-LIMITS |
packages/fs/fs-observation-policy/src/index.ts | packages/fs/fs-observation-policy | 17-130 · SANDBOX-OBSERVATION |
packages/fs/fs-observation-policy/tests/policy.spec.ts | packages/fs/fs-observation-policy | 47-235 · SANDBOX-OBSERVATION-TEST |
packages/fs/fs-sandbox/src/containment.ts | packages/fs/fs-sandbox | 19-76 · SANDBOX-CONTAINMENT |
packages/fs/fs-sandbox/src/index.ts | packages/fs/fs-sandbox | 1-149 · SANDBOX-FS-FENCE1-149 · SEC-FS-FENCE |
packages/fs/fs-sandbox/tests/fs-sandbox.spec.ts | packages/fs/fs-sandbox | 59-235 · SANDBOX-FS-FENCE-TEST |
packages/fs/fs/README.md | packages/fs/fs | 49-51 · SANDBOX-DOC-ERROR-CODE |
packages/fs/fs/src/index.ts | packages/fs/fs | 44-249 · SANDBOX-FS-SEAM |
packages/fs/fs/src/types.ts | packages/fs/fs | 11-203 · SANDBOX-FS-TYPES |
packages/fs/tool-fs-search/src/index.ts | packages/fs/tool-fs-search | 1-24 · SANDBOX-SEARCH-WORLD |
packages/fs/tool-fs/src/edit.ts | packages/fs/tool-fs | 112-146 · SANDBOX-EDIT-TOOL |
packages/fs/tool-fs/src/read-target.ts | packages/fs/tool-fs | 12-34 · SANDBOX-READ-TARGET |
packages/fs/tool-fs/src/read.ts | packages/fs/tool-fs | 134-163 · SANDBOX-READ-TOOL |
packages/fs/tool-fs/src/sandbox.ts | packages/fs/tool-fs | 20-130 · SANDBOX-FS-ESCALATION37-130 · APPROVAL-FS-ESCALATION |
packages/fs/tool-fs/src/session-cwd.ts | packages/fs/tool-fs | 16-46 · SANDBOX-SESSION-CWD |
packages/fs/tool-fs/src/write.ts | packages/fs/tool-fs | 102-128 · SANDBOX-WRITE-TOOL |
packages/goal/command-goal/README.md | packages/goal/command-goal | 53-58 · PLANSTATE-DOC-GOAL-COMMAND |
packages/goal/command-goal/src/index.ts | packages/goal/command-goal | 14-170 · PLANSTATE-GOAL-COMMAND |
packages/goal/goal-round-driver/src/index.ts | packages/goal/goal-round-driver | 75-445 · PLANSTATE-GOAL-DRIVER |
packages/goal/goal-round-driver/tests/goal-round-driver.spec.ts | packages/goal/goal-round-driver | 186-260 · PLANSTATE-GOAL-DRIVER-TEST465-510 · PLANSTATE-GOAL-DURABILITY-TEST |
packages/goal/goal/src/fold.ts | packages/goal/goal | 271-349 · PLANSTATE-GOAL-FOLD |
packages/goal/goal/src/index.ts | packages/goal/goal | 83-113 · PLANSTATE-GOAL-PROJECTION216-390 · PLANSTATE-GOAL-SERVICE392-577 · PLANSTATE-GOAL-COMMIT |
packages/goal/goal/src/types.ts | packages/goal/goal | 15-110 · PLANSTATE-GOAL-TYPES |
packages/goal/goal/tests/projection.spec.ts | packages/goal/goal | 142-187 · PLANSTATE-GOAL-PROJECTION-TEST |
packages/goal/tool-goal/README.md | packages/goal/tool-goal | 13-18 · PLANSTATE-DOC-GOAL-TOOL |
packages/goal/tool-goal/src/authority.ts | packages/goal/tool-goal | 29-108 · PLANSTATE-GOAL-AUTHORITY |
packages/goal/tool-goal/src/index.ts | packages/goal/tool-goal | 186-338 · PLANSTATE-GOAL-TOOLS |
packages/goal/tool-goal/tests/tool-goal.spec.ts | packages/goal/tool-goal | 352-415 · PLANSTATE-GOAL-WRAPUP-TEST |
packages/guard/timeout-policy/src/index.ts | packages/guard/timeout-policy | 18-80 · FAILURE-TOOL-TIMEOUT |
packages/guard/timeout-policy/tests/timeout-policy.spec.ts | packages/guard/timeout-policy | 97-193 · FAILURE-TIMEOUT-TEST |
packages/host/apiproxy/README.md | packages/host/apiproxy | 41-41 · INBOX-README-DRIFT75-81 · APPROVAL-DOC-API-DRIFT |
packages/host/apiproxy/src/api-proxy.ts | packages/host/apiproxy | 282-313 · LOG-HISTORY-PAGINATION735-779 · TOOL-HOST-PRESENTER804-820 · LOG-HISTORY-VIEW841-877 · PROJ-CACHE-INTEGRATION847-898 · OBS-PROJECTION-DEGRADE1273-1323 · PROJ-HOST-CARRIER1302-1323 · PROJ-IMAGE-LIMITS1326-1355 · INBOX-HOST-PROJECTION1407-1488 · APPROVAL-WEB-REGISTRY1525-1573 · PROJ-HOST-COLD-OPEN1533-1574 · LOG-HISTORY-CUT1555-1573 · OBS-SESSION-HISTORY-PROJECTION1720-2162 · MEMORY-WEB-HOST-GATE1720-1764 · OBS-SESSION-LIST-PROJECTION1787-1825 · PLANSTATE-GOAL-API-ERRORS2242-2269 · PROJ-HISTORY-FAILURE2363-2458 · LOG-HOST-FORK2461-2517 · INBOX-HOST-PROMPT2568-2633 · INBOX-HOST-QUEUE-MUTATION2668-2696 · OBS-SUBAGENT-HISTORY-PROJECTION2737-2799 · INBOX-SUBAGENT-HOST2923-2938 · API-HOST-VERSION-PLACEHOLDER2923-2938 · OPEN-HOST-VERSION-IMPL3205-3257 · MEMORY-SKILL-HOST-UI3429-3447 · APPROVAL-WEB-REPLAY3430-3455 · INBOX-RECONNECT-HOST3617-3635 · REMOTE-EVENT-FORWARD3696-3742 · APPROVAL-WEB-RESPOND |
packages/host/apiproxy/src/api/approvals.ts | packages/host/apiproxy | 1-20 · APPROVAL-WIRE-CONTRACT |
packages/host/apiproxy/src/api/events.ts | packages/host/apiproxy | 36-84 · INBOX-WIRE-DOC-DRIFT46-56 · OPEN-EVENT-RESUME-SEAT65-154 · OBS-RAW-FRAMES110-154 · OBS-HOST-FAILURE |
packages/host/apiproxy/src/api/goals.ts | packages/host/apiproxy | 25-53 · PLANSTATE-GOAL-API |
packages/host/apiproxy/src/api/host.ts | packages/host/apiproxy | 1-53 · API-HOST-VERSION-CONTRACT35-53 · OPEN-HOST-VERSION-CONTRACT |
packages/host/apiproxy/src/api/rpc.schema.ts | packages/host/apiproxy | 1-140 · API-RPC-SCHEMAS |
packages/host/apiproxy/src/api/rpc.ts | packages/host/apiproxy | 1-193 · API-RPC-MODEL |
packages/host/apiproxy/src/api/sessions.schema.ts | packages/host/apiproxy | 141-242 · LOG-HISTORY-SCHEMA |
packages/host/apiproxy/src/api/sessions.ts | packages/host/apiproxy | 59-338 · LOG-HISTORY-CONTRACT231-240 · OPEN-API-RESERVED-SEATS264-283 · OBS-HISTORY-API315-371 · INBOX-HOST-CONTRACT |
packages/host/apiproxy/src/api/subagents.ts | packages/host/apiproxy | 38-119 · INBOX-SUBAGENT-WIRE |
packages/host/apiproxy/src/session-export.ts | packages/host/apiproxy | 1-265 · LOG-RAW-EXPORT |
packages/host/apiproxy/tests/api-proxy-approval.spec.ts | packages/host/apiproxy | 87-329 · APPROVAL-WEB-TESTS |
packages/identity/anonymous-user-id/src/index.ts | packages/identity/anonymous-user-id | 1-100 · OBS-ANON-ID |
packages/interaction/permission-presets/README.md | packages/interaction/permission-presets | 5-17 · APPROVAL-DOC-PRESET-DRIFT |
packages/interaction/permission-presets/src/index.ts | packages/interaction/permission-presets | 139-225 · APPROVAL-PRESET-CONFIG139-225 · SANDBOX-PERMISSION-PRESETS155-225 · SEC-PRESETS-VALIDATE227-277 · APPROVAL-PRESET-PROJECTION280-338 · APPROVAL-PRESET-DERIVE369-392 · APPROVAL-PRESET-WRITE369-430 · SANDBOX-PERMISSION-WRITE379-430 · SEC-PRESETS-PIN394-430 · APPROVAL-PRESET-PIN |
packages/interaction/permission-presets/tests/permission-presets.spec.ts | packages/interaction/permission-presets | 67-300 · APPROVAL-PRESET-TESTS |
packages/interaction/user-approval/src/index.ts | packages/interaction/user-approval | 34-72 · APPROVAL-AUDIT-EVENTS149-174 · APPROVAL-REQUEST-SHAPE239-276 · APPROVAL-AUDIT-REQUEST239-343 · SEC-APPROVAL-CLOSED298-344 · APPROVAL-DECIDE-WATERFALL |
packages/interaction/user-approval/src/invariant.ts | packages/interaction/user-approval | 17-102 · APPROVAL-INVARIANT |
packages/interaction/user-approval/src/types.ts | packages/interaction/user-approval | 10-29 · APPROVAL-OUTCOMES |
packages/interaction/user-approval/tests/approval.spec.ts | packages/interaction/user-approval | 42-503 · APPROVAL-SERVICE-TESTS |
packages/interaction/user-questions/src/index.ts | packages/interaction/user-questions | 80-139 · PLANSTATE-PLAN-REVIEW-AUTH |
packages/jobs/jobs-local/src/index.ts | packages/jobs/jobs-local | 86-190 · SHELL-JOBS-START126-150 · MULTIAGENT-JOB-CAPACITY307-440 · SHELL-JOBS-SETTLEMENT442-528 · SHELL-JOBS-CLEANUP |
packages/jobs/tool-jobs/src/index.ts | packages/jobs/tool-jobs | 205-300 · SHELL-JOB-NOTICES302-401 · SHELL-JOB-TOOLS |
packages/llm/llm-deepseek/src/adapter.ts | packages/llm/llm-deepseek | 88-211 · LLM-DEEPSEEK-MODELS117-338 · FAILURE-DEEPSEEK-HTTP214-268 · FAILURE-DEEPSEEK-STREAM214-345 · LLM-DEEPSEEK-TRANSPORT214-345 · SEC-PROVIDER-TRANSPORT |
packages/llm/llm-deepseek/src/index.ts | packages/llm/llm-deepseek | 91-256 · FAILURE-CONFIG-RESOLUTION149-275 · LLM-DEEPSEEK-CONFIG149-246 · SEC-PROVIDER-CONFIG225-275 · FAILURE-CREDENTIAL-ROUTE |
packages/llm/llm-deepseek/src/serialize.ts | packages/llm/llm-deepseek | 25-186 · LLM-DEEPSEEK-SERIALIZE143-186 · PROMPT-DEEPSEEK-WIRE |
packages/llm/llm-deepseek/src/translate.ts | packages/llm/llm-deepseek | 26-184 · LLM-DEEPSEEK-TRANSLATE |
packages/llm/llm-deepseek/tests/dynamic-config.spec.ts | packages/llm/llm-deepseek | 61-186 · FAILURE-DYNAMIC-CONFIG-TEST |
packages/llm/llm-pi-ai/src/adapter.ts | packages/llm/llm-pi-ai | 217-357 · LLM-PI-STREAM |
packages/llm/llm-pi-ai/src/config.ts | packages/llm/llm-pi-ai | 34-178 · LLM-PI-CONFIG |
packages/llm/llm-pi-ai/src/provider.ts | packages/llm/llm-pi-ai | 35-191 · LLM-PI-PROVIDER |
packages/llm/llm-pi-ai/src/replay.ts | packages/llm/llm-pi-ai | 15-215 · LLM-PI-REPLAY |
packages/llm/llm-retry/README.md | packages/llm/llm-retry | 1-13 · FAILURE-RETRY-DOC-DRIFT1-53 · LLM-RETRY-DOC-DRIFT |
packages/llm/llm-retry/src/index.ts | packages/llm/llm-retry | 99-225 · FAILURE-RETRY-EXECUTOR111-225 · LLM-RETRY-EXECUTOR |
packages/llm/llm-retry/tests/retry.spec.ts | packages/llm/llm-retry | 175-344 · FAILURE-RETRY-SEMANTICS-TEST175-224 · LLM-RETRY-SAME-STEP-TEST |
packages/llm/llm-retry/tests/transport-recovery.spec.ts | packages/llm/llm-retry | 85-219 · FAILURE-WIRE-RECOVERY-TEST112-198 · LLM-RETRY-WIRE-TEST |
packages/llm/llm/src/adapter-failure.ts | packages/llm/llm | 16-104 · FAILURE-SNAPSHOT |
packages/llm/llm/src/assembler.ts | packages/llm/llm | 25-163 · LLM-BLOCK-ASSEMBLER |
packages/llm/llm/src/index.ts | packages/llm/llm | 330-413 · LLM-ADAPTER-REGISTRY771-814 · LLM-PREPARED-CALL838-938 · FAILURE-ADAPTER-BOUNDARY838-938 · LLM-FAILURE-BOUNDARY |
packages/llm/llm/src/message.ts | packages/llm/llm | 7-18 · LLM-MESSAGE-IDENTITY96-199 · INBOX-MESSAGE-IDENTITY128-184 · LLM-MESSAGE-VALUE |
packages/llm/llm/src/retry-policy.ts | packages/llm/llm | 14-191 · FAILURE-RETRY-POLICY14-191 · LLM-RETRY-POLICY |
packages/llm/llm/src/types.ts | packages/llm/llm | 53-141 · LLM-CONTENT-PROTOCOL283-355 · LLM-STREAM-PROTOCOL |
packages/llm/llm/tests/service.spec.ts | packages/llm/llm | 227-257 · LLM-PREPARED-PIN-TEST |
packages/llm/token-meter/src/estimate.ts | packages/llm/token-meter | 12-87 · COMPACT-ESTIMATOR |
packages/llm/token-meter/src/index.ts | packages/llm/token-meter | 100-180 · COMPACT-TOKEN-MEASURE188-310 · COMPACT-TOKEN-ANCHOR |
packages/llm/token-meter/src/surface-projection.ts | packages/llm/token-meter | 1-94 · COMPACT-SHADOW-PRICE |
packages/llm/token-meter/src/usage-projection.ts | packages/llm/token-meter | 70-205 · COMPACT-USAGE-PROJECTION97-140 · LLM-TOKEN-USAGE-PROJECTION |
packages/lsp/lsp-stdio/src/host.ts | packages/lsp/lsp-stdio | 25-120 · CAP-LSP-HOST-FS |
packages/lsp/lsp-stdio/src/index.ts | packages/lsp/lsp-stdio | 119-215 · CAP-LSP-STDIO-LOAD216-369 · CAP-LSP-STDIO-POOL |
packages/lsp/lsp/src/index.ts | packages/lsp/lsp | 1-158 · CAP-LSP-REGISTRY |
packages/lsp/tool-lsp/src/index.ts | packages/lsp/tool-lsp | 1-243 · CAP-LSP-TOOL |
packages/mcp/mcp-client/README.md | packages/mcp/mcp-client | 109-115 · CAP-MCP-LIMITS |
packages/mcp/mcp-client/src/connection.ts | packages/mcp/mcp-client | 123-224 · CAP-MCP-RECONNECT227-350 · CAP-MCP-GENERATION |
packages/mcp/mcp-client/src/index.ts | packages/mcp/mcp-client | 1-128 · CAP-MCP-CONFIG132-180 · CAP-MCP-STARTUP |
packages/mcp/mcp-client/src/tools.ts | packages/mcp/mcp-client | 82-102 · CAP-MCP-NAMING104-174 · CAP-MCP-SYNC128-173 · SEC-MCP-SYNC176-317 · CAP-MCP-RESULT218-277 · SEC-MCP-EXEC |
packages/mcp/mcp-client/src/transport.ts | packages/mcp/mcp-client | 1-49 · SEC-MCP-TRANSPORT15-50 · CAP-MCP-TRANSPORT |
packages/plan/plan-mode/README.md | packages/plan/plan-mode | 92-98 · PLANSTATE-PLAN-LIMITATION |
packages/plan/plan-mode/src/index.ts | packages/plan/plan-mode | 46-195 · PLANSTATE-PLAN-STATE197-233 · PLANSTATE-PLAN-ASSEMBLY235-266 · PLANSTATE-PLAN-PROJECTION268-393 · PLANSTATE-PLAN-CONTROLS396-473 · PLANSTATE-PLAN-BOUNDARY |
packages/plan/plan-mode/tests/integration.spec.ts | packages/plan/plan-mode | 66-174 · PLANSTATE-PLAN-LOOP-TEST |
packages/preset/agent-presets/src/index.ts | packages/preset/agent-presets | 290-325 · MULTIAGENT-PRESET-INHERITANCE |
packages/README.md | packages-unmatched | 5-67 · PKG-HIERARCHY |
packages/runtime-diagnostics/invariants/src/index.ts | packages/runtime-diagnostics/invariants | 49-197 · TINV-REGISTRY93-197 · DESIGN-INVARIANT-REGISTRY |
packages/runtime-diagnostics/invariants/tests/service.spec.ts | packages/runtime-diagnostics/invariants | 189-302 · TINV-REGISTRY-TEST |
packages/sandbox/sandbox-local/README.md | packages/sandbox/sandbox-local | 1-15 · OPEN-SANDBOX-PLATFORM-LADDER34-40 · OPEN-SANDBOX-PLATFORM-LIMITS |
packages/sandbox/sandbox-local/src/index.ts | packages/sandbox/sandbox-local | 150-240 · SANDBOX-LOCAL-DIALECTS150-240 · SEC-LOCAL-RUNNERS276-333 · SANDBOX-LOCAL-WRAP276-333 · SEC-CUSTOM-RUNNER485-539 · SANDBOX-LOCAL-SELECT500-527 · SEC-LANDLOCK-PROBE |
packages/sandbox/sandbox-local/src/profiles.ts | packages/sandbox/sandbox-local | 11-58 · SANDBOX-PROFILES |
packages/sandbox/sandbox-local/tests/local.spec.ts | packages/sandbox/sandbox-local | 64-453 · SANDBOX-LOCAL-TEST |
packages/sandbox/sandbox-policy/src/index.ts | packages/sandbox/sandbox-policy | 60-150 · SANDBOX-POLICY126-150 · APPROVAL-SANDBOX-PRECEDENCE |
packages/sandbox/sandbox-policy/src/session-mode.ts | packages/sandbox/sandbox-policy | 24-71 · SANDBOX-MODE-EVENT |
packages/sandbox/sandbox-windows-acl/README.md | packages/sandbox/sandbox-windows-acl | 73-82 · SANDBOX-WINDOWS-CAPS |
packages/sandbox/sandbox/README.md | packages/sandbox/sandbox | 5-26 · OPEN-SANDBOX-DOC-OMISSION11-13 · SANDBOX-DOC-BACKENDS37-43 · OPEN-SANDBOX-SCOPE37-43 · SANDBOX-DOC-BOUNDARY37-43 · SEC-SANDBOX-SCOPE |
packages/sandbox/sandbox/src/escalation.ts | packages/sandbox/sandbox | 22-61 · APPROVAL-ESCALATION-LADDER22-187 · SANDBOX-ESCALATION143-188 · APPROVAL-ESCALATION-FLOW143-188 · SEC-ESCALATION |
packages/sandbox/sandbox/src/index.ts | packages/sandbox/sandbox | 23-175 · SANDBOX-SEAM23-175 · SEC-SANDBOX-SEAM |
packages/sandbox/sandbox/src/roots.ts | packages/sandbox/sandbox | 20-55 · SANDBOX-WRITABLE-ROOTS |
packages/sandbox/sandbox/tests/escalation.spec.ts | packages/sandbox/sandbox | 20-111 · APPROVAL-ESCALATION-TESTS |
packages/sdk/client/src/api.ts | packages/sdk/client | 139-245 · SDK-TS-RUN |
packages/sdk/client/src/client.ts | packages/sdk/client | 55-290 · SDK-DOC-STALE-ACCEPTED175-401 · SDK-TS-CLIENT175-260 · SEC-SDK-CLIENT354-370 · SEC-SDK-FILTER |
packages/sdk/client/src/dispose.ts | packages/sdk/client | 13-99 · SDK-TS-DISPOSE |
packages/sdk/client/src/types.ts | packages/sdk/client | 22-70 · SDK-TS-RESULT |
packages/sdk/protocol/README.md | packages/sdk/protocol | 35-39 · SDK-WIRE-LIMITS |
packages/sdk/protocol/src/transport.ts | packages/sdk/protocol | 1-268 · SDK-JSONL-TRANSPORT |
packages/sdk/protocol/src/types.ts | packages/sdk/protocol | 15-105 · SDK-WIRE-METHODS |
packages/sdk/protocol/tests/transport.spec.ts | packages/sdk/protocol | 1-307 · TEST-SDK-PROTOCOL |
packages/sdk/server/src/index.ts | packages/sdk/server | 40-91 · SDK-SERVER-SHUTDOWN |
packages/sdk/server/src/server.ts | packages/sdk/server | 48-103 · SDK-SERVER-EVENTS48-201 · SDK-SERVER-INIT48-124 · SEC-SDK-SERVER127-239 · SDK-SERVER-SESSIONS |
packages/session-query/session-query-sqlite/src/index.ts | packages/session-query/session-query-sqlite | 85-331 · MEMORY-QUERY-SQLITE-MODE |
packages/session-query/session-query-sqlite/src/schema.ts | packages/session-query/session-query-sqlite | 27-169 · MEMORY-QUERY-SQLITE-SCHEMA |
packages/session-query/session-query/src/corpus.ts | packages/session-query/session-query | 31-116 · OBS-QUERY-CORPUS53-220 · MEMORY-QUERY-CORPUS |
packages/session-query/session-query/src/documents.ts | packages/session-query/session-query | 15-74 · MEMORY-QUERY-DOCUMENTS |
packages/session-query/session-query/src/extraction.ts | packages/session-query/session-query | 13-82 · MEMORY-QUERY-EXTRACTION |
packages/session-query/session-query/src/index.ts | packages/session-query/session-query | 74-345 · OBS-QUERY-SERVICE |
packages/session-query/session-query/src/tracing.ts | packages/session-query/session-query | 21-218 · LOG-QUERY-TRACE21-213 · OBS-QUERY-TRACE |
packages/session-query/tool-session-query/README.md | packages/session-query/tool-session-query | 5-20 · MEMORY-QUERY-TOOL-CONTRACT5-76 · OBS-QUERY-TOOLS |
packages/session-query/tool-session-query/src/operations.ts | packages/session-query/tool-session-query | 116-166 · OBS-QUERY-CURRENT-BOUNDARY |
packages/session-query/tool-session-query/src/service-boundary.ts | packages/session-query/tool-session-query | 19-171 · OBS-QUERY-SANITIZE116-171 · OBS-QUERY-DIAGNOSTIC |
packages/session-query/tool-session-query/src/workspace-access.ts | packages/session-query/tool-session-query | 54-233 · MEMORY-QUERY-TOOL-AUTH54-203 · OBS-QUERY-AUTH |
packages/session/session-checkpoint-policy/README.md | packages/session/session-checkpoint-policy | 5-45 · OPEN-CHECKPOINT-UNKNOWN |
packages/session/session-checkpoint-policy/src/index.ts | packages/session/session-checkpoint-policy | 20-82 · FAILURE-CHECKPOINT-POLICY20-82 · INBOX-CHECKPOINT-POLICY20-82 · LLM-CHECKPOINT-BARRIER20-82 · LOG-CHECKPOINT-POLICY |
packages/session/session-checkpoint-policy/tests/crash-recovery.e2e.ts | packages/session/session-checkpoint-policy | 39-110 · FAILURE-CRASH-E2E82-110 · INBOX-CRASH-RECOVERY |
packages/session/session-checkpoint-policy/tests/fixtures/crash-child.ts | packages/session/session-checkpoint-policy | 21-60 · FAILURE-CRASH-FIXTURE |
packages/session/session-checkpoint-policy/tests/session-checkpoint-policy.spec.ts | packages/session/session-checkpoint-policy | 62-238 · FAILURE-CHECKPOINT-TEST |
packages/session/session-persistence-jsonl/README.md | packages/session/session-persistence-jsonl | 40-52 · INBOX-JSONL-DURABILITY |
packages/session/session-persistence-jsonl/src/format.ts | packages/session/session-persistence-jsonl | 28-223 · PERSIST-JSONL-FORMAT272-377 · FAILURE-JSONL-RAW-SCAN272-388 · PERSIST-JSONL-SCAN |
packages/session/session-persistence-jsonl/src/index.ts | packages/session/session-persistence-jsonl | 115-200 · PERSIST-JSONL-ROOT306-444 · FAILURE-JSONL-PREFIX306-701 · PERSIST-JSONL-REPAIR511-701 · FAILURE-JSONL-ATOMICITY528-615 · MEMORY-JSONL-PERMISSIONS |
packages/session/session-persistence-jsonl/src/win32.ts | packages/session/session-persistence-jsonl | 109-120 · FAILURE-JSONL-WIN32 |
packages/session/session-persistence-jsonl/src/zstd.ts | packages/session/session-persistence-jsonl | 48-103 · FAILURE-JSONL-ZSTD-SCAN |
packages/session/session-persistence-jsonl/tests/jsonl.spec.ts | packages/session/session-persistence-jsonl | 102-115 · FAILURE-CRASH-CONTRACT-JSONL585-674 · FAILURE-JSONL-TEST |
packages/session/session-persistence-sqlite/src/index.ts | packages/session/session-persistence-sqlite | 69-146 · PERSIST-SESSION-SQLITE-CONSTRUCTOR220-237 · PERSIST-SQLITE-SUFFIX278-338 · PERSIST-SQLITE-REPAIR |
packages/session/session-persistence-sqlite/src/schema.ts | packages/session/session-persistence-sqlite | 15-171 · PERSIST-SQLITE-SCHEMA220-269 · PERSIST-SQLITE-SCAN |
packages/session/session-persistence-sqlite/tests/sqlite.spec.ts | packages/session/session-persistence-sqlite | 51-60 · FAILURE-CRASH-CONTRACT-SQLITE677-691 · PERSIST-SESSION-SQLITE-CONSTRUCTOR-TEST |
packages/session/session-persistence/src/coordinator.ts | packages/session/session-persistence | 117-214 · PERSIST-BACKEND-CONTRACT575-710 · PERSIST-COORDINATOR690-774 · MEMORY-PERSISTENCE-TRANSACTION712-970 · PERSIST-READ-FACES720-889 · LOG-PERSISTENCE-READ-FACES891-990 · LOG-PREPARED-COMMIT1046-1065 · SESSION-UNKNOWN-EVENT-GATE1084-1161 · FAILURE-PERSISTENCE-WIRING1084-1181 · LOG-PERSISTENCE-ADMISSION1117-1160 · MEMORY-PERSISTENCE-FLUSH1325-1350 · OBS-PERSISTENCE-DIAGNOSTIC |
packages/session/session-persistence/src/index.ts | packages/session/session-persistence | 1-240 · PERSIST-SEAM-API |
packages/session/session-persistence/src/write-behind.ts | packages/session/session-persistence | 18-158 · FAILURE-WRITE-BEHIND18-158 · LOG-WRITE-BEHIND19-157 · PERSIST-WRITE-BEHIND |
packages/session/session-persistence/tests/contract.ts | packages/session/session-persistence | 118-265 · FAILURE-CRASH-CONTRACT118-266 · LOG-REPAIR-CONTRACT |
packages/session/session-persistence/tests/coordinator-contract.ts | packages/session/session-persistence | 1360-1382 · SESSION-UNKNOWN-EVENT-TEST1427-1479 · LOG-TORN-TAIL-CONTRACT |
packages/session/session-persistence/tests/persistence.spec.ts | packages/session/session-persistence | 240-249 · FAILURE-CRASH-CONTRACT-MEMORY |
packages/session/session-projection-cache/src/index.ts | packages/session/session-projection-cache | 132-230 · PROJ-CACHE-DETACH-WINDOW154-197 · PROJ-CACHE-LADDER |
packages/session/session-projection-cache/src/spec.ts | packages/session/session-projection-cache | 16-69 · PROJ-CACHE-SCHEMA |
packages/session/session-projection/src/index.ts | packages/session/session-projection | 88-118 · PROJ-AUTHORITY-LAYERS130-425 · PROJ-REGISTRY-DRIVE137-220 · PROJ-REGISTRY-REGISTRATION284-385 · PROJ-REGISTRY-RESTORE |
packages/session/session-stats/src/projection.ts | packages/session/session-stats | 1-183 · OBS-STATS-FOLD |
packages/session/session-stats/src/types.ts | packages/session/session-stats | 15-45 · OBS-STATS-CONTRACT |
packages/session/session-stats/tests/projection.spec.ts | packages/session/session-stats | 58-291 · OBS-TEST-STATS |
packages/session/session-telemetry-otel/package.json | packages/session/session-telemetry-otel | 33-41 · OBS-OTEL-DEPENDENCIES |
packages/session/session-telemetry-otel/README.md | packages/session/session-telemetry-otel | 30-38 · OPEN-OTEL-BOUNDARY36-42 · OBS-PRIVACY-BOUNDARY |
packages/session/session-telemetry-otel/src/index.ts | packages/session/session-telemetry-otel | 43-252 · OBS-TELEMETRY-MODES197-232 · OBS-OTEL-PIPELINE265-298 · OBS-OTEL-SHUTDOWN |
packages/session/session-telemetry-otel/tests/loader-composition.e2e.ts | packages/session/session-telemetry-otel | 78-153 · OBS-TEST-OTEL-COMPOSITION |
packages/session/session-telemetry-otel/tests/otel.spec.ts | packages/session/session-telemetry-otel | 1-163 · OBS-TEST-OTEL-WIRE273-489 · OBS-TEST-OTEL-MODES |
packages/session/session-telemetry/README.md | packages/session/session-telemetry | 13-35 · OPEN-TELEMETRY-HANDOFF45-49 · OPEN-TELEMETRY-LIMITS |
packages/session/session-telemetry/src/coordinator.ts | packages/session/session-telemetry | 32-169 · OBS-TELEMETRY-HANDOFF112-267 · OBS-OPS-LOGS179-220 · OBS-TELEMETRY-PROJECTION228-302 · OBS-TELEMETRY-SEVERITY |
packages/session/session-telemetry/src/index.ts | packages/session/session-telemetry | 24-43 · OBS-TELEMETRY-REDACTION47-130 · OBS-TELEMETRY-CONTRACT |
packages/session/session-telemetry/tests/redact.spec.ts | packages/session/session-telemetry | 39-128 · OBS-TEST-REDACTION |
packages/session/session-telemetry/tests/telemetry.spec.ts | packages/session/session-telemetry | 161-539 · OBS-TEST-HANDOFF |
packages/settings/settings/README.md | packages/settings/settings | 41-45 · OPEN-SETTINGS-CROSS-PROCESS41-45 · OPEN-SETTINGS-REDACTION-DOC |
packages/settings/settings/src/redact.ts | packages/settings/settings | 50-109 · OPEN-SETTINGS-REDACTION-CODE |
packages/shell/bash-sandbox/src/helpers.ts | packages/shell/bash-sandbox | 25-116 · SANDBOX-RESULT-CLASSIFIER |
packages/shell/bash-sandbox/src/index.ts | packages/shell/bash-sandbox | 79-179 · SANDBOX-BASH-CONSUMER |
packages/shell/shell-env/src/index.ts | packages/shell/shell-env | 81-216 · SHELL-MANAGED-ENV175-192 · SHELL-ENV-LIST-GAP |
packages/shell/shell/src/index.ts | packages/shell/shell | 46-100 · SHELL-EXECUTOR-CONTRACT |
packages/shell/tool-bash-persistent/src/index.ts | packages/shell/tool-bash-persistent | 62-398 · SHELL-PERSISTENT-BASH |
packages/shell/tool-bash/src/background.ts | packages/shell/tool-bash | 9-27 · SHELL-BACKGROUND-OUTCOME |
packages/shell/tool-bash/src/index.ts | packages/shell/tool-bash | 138-156 · SHELL-BASH-CWD190-390 · APPROVAL-BASH-EXECUTION330-389 · SHELL-BASH-TOOL |
packages/shell/tool-pwsh/README.md | packages/shell/tool-pwsh | 5-9 · SHELL-PWSH-DOC-DRIFT |
packages/shell/tool-pwsh/src/index.ts | packages/shell/tool-pwsh | 42-50 · SHELL-PWSH-INJECT147-158 · SHELL-PWSH-CWD-GAP209-406 · APPROVAL-PWSH-EXECUTION |
packages/skill/skill-filesystem/src/index.ts | packages/skill/skill-filesystem | 36-260 · CAP-SKILL-FS-ROOTS36-100 · MEMORY-SKILL-FILESYSTEM-CONFIG241-260 · MEMORY-SKILL-FILESYSTEM-ROOTS719-885 · MEMORY-SKILL-FILESYSTEM-LOAD749-885 · CAP-SKILL-FS-TRUST |
packages/skill/skill/src/index.ts | packages/skill/skill | 20-109 · CAP-SKILL-TYPES140-228 · CAP-SKILL-RENDER157-183 · SEC-SKILL-TRUST327-619 · MEMORY-SKILL-REGISTRY346-461 · CAP-SKILL-LAYERS463-625 · CAP-SKILL-COLLECT |
packages/skill/tool-skill/src/index.ts | packages/skill/tool-skill | 27-430 · MEMORY-SKILL-INVOCATION71-161 · CAP-SKILL-TOOL-LOAD127-227 · SEC-SKILL-INVOCATION-GATES163-430 · CAP-SKILL-USER-INVOKE206-335 · CAP-SKILL-CATALOG |
packages/storage/storage-domain/src/domain.ts | packages/storage/storage-domain | 135-269 · PERSIST-DOMAIN-ORDER148-275 · PERSIST-DOMAIN-CLOSE-GAP |
packages/storage/storage-json/src/atomic.ts | packages/storage/storage-json | 1-52 · PERSIST-JSON-ATOMIC |
packages/storage/storage-json/src/index.ts | packages/storage/storage-json | 21-66 · PERSIST-JSON-ROOT-GAP |
packages/storage/storage-json/src/unit.ts | packages/storage/storage-json | 47-140 · PERSIST-JSON-UNIT-ROLLBACK |
packages/storage/storage-sqlite/src/index.ts | packages/storage/storage-sqlite | 23-72 · PERSIST-STORAGE-SQLITE-CONSTRUCTOR |
packages/storage/storage-sqlite/src/schema.ts | packages/storage/storage-sqlite | 15-119 · PERSIST-STORAGE-SQLITE-SCHEMA52-80 · PERSIST-STORAGE-SQLITE-OPEN |
packages/storage/storage-sqlite/src/unit.ts | packages/storage/storage-sqlite | 23-147 · PERSIST-STORAGE-SQLITE-UNIT |
packages/storage/storage/src/backend.ts | packages/storage/storage | 12-104 · PERSIST-STORAGE-SEAM |
packages/storage/storage/src/registry.ts | packages/storage/storage | 14-36 · PERSIST-STORAGE-REGISTRY |
packages/subagent/subagent-acp/src/index.ts | packages/subagent/subagent-acp | 124-169 · ACP-CHILD-CAPABILITIES124-170 · MULTIAGENT-ACP-PROVIDER |
packages/subagent/subagent-acp/src/run.ts | packages/subagent/subagent-acp | 94-367 · ACP-CHILD-CANCEL190-367 · ACP-CHILD-START |
packages/subagent/subagent-claude-code/src/index.ts | packages/subagent/subagent-claude-code | 50-112 · MULTIAGENT-CLAUDE-PROVIDER |
packages/subagent/subagent-codex/src/index.ts | packages/subagent/subagent-codex | 47-100 · MULTIAGENT-CODEX-PROVIDER |
packages/subagent/subagent-codex/src/run.ts | packages/subagent/subagent-codex | 28-199 · MULTIAGENT-CODEX-RUN |
packages/subagent/subagent-codex/src/wire.ts | packages/subagent/subagent-codex | 128-373 · MULTIAGENT-CODEX-WIRE294-373 · MULTIAGENT-CODEX-UNATTENDED |
packages/subagent/subagent-codex/tests/subagent-codex.spec.ts | packages/subagent/subagent-codex | 363-435 · MULTIAGENT-CODEX-WIRE-TEST |
packages/subagent/subagent-dsh-sdk/src/index.ts | packages/subagent/subagent-dsh-sdk | 1-119 · MULTIAGENT-SDK-PROVIDER |
packages/subagent/subagent-fork-in-process/src/index.ts | packages/subagent/subagent-fork-in-process | 40-94 · MULTIAGENT-FORK-PROVIDER |
packages/subagent/subagent-fork-in-process/tests/subagent-fork-in-process.spec.ts | packages/subagent/subagent-fork-in-process | 134-158 · MULTIAGENT-FORK-OPEN-TURN-TEST |
packages/subagent/subagent-in-process-driver/src/index.ts | packages/subagent/subagent-in-process-driver | 78-205 · MULTIAGENT-ONE-SHOT-DRIVER207-233 · MULTIAGENT-ONE-SHOT-RESULT |
packages/subagent/subagent-in-process-driver/src/structured.ts | packages/subagent/subagent-in-process-driver | 49-141 · MULTIAGENT-STRUCTURED-OUTPUT |
packages/subagent/subagent-spawn-in-process/src/index.ts | packages/subagent/subagent-spawn-in-process | 34-64 · MULTIAGENT-SPAWN-PROVIDER |
packages/subagent/subagent/src/assistant-output.ts | packages/subagent/subagent | 1-74 · MULTIAGENT-ASSISTANT-OUTPUT |
packages/subagent/subagent/src/child-agent.ts | packages/subagent/subagent | 38-120 · MULTIAGENT-CHILD-INHERITANCE130-224 · APPROVAL-CHILD-PIN130-175 · MULTIAGENT-CHILD-COMPOSITION177-225 · MULTIAGENT-DELEGATED-POLICY |
packages/subagent/subagent/src/continuation.ts | packages/subagent/subagent | 1-19 · INBOX-ACTIVATION-MODEL151-159 · INBOX-ACTIVATION-STATE151-240 · MULTIAGENT-ACTIVATION-MODEL319-340 · MULTIAGENT-CHILD-LOCK388-457 · MULTIAGENT-CONTINUABLE-START459-505 · INBOX-CONTINUATION-DELIVERY459-505 · MULTIAGENT-FOLLOWUP507-568 · INBOX-CHILD-INTERRUPT507-568 · MULTIAGENT-INTERRUPT570-693 · MULTIAGENT-REPORT-DELIVERY583-693 · INBOX-CHILD-REPORT695-803 · MULTIAGENT-DRAIN876-932 · INBOX-COLD-RESUME876-932 · MULTIAGENT-COLD-RESUME1094-1174 · MULTIAGENT-ACTIVATION-OWNERSHIP1125-1204 · INBOX-CONTINUATION-ADMISSION1270-1380 · MULTIAGENT-ACTIVATION-DISPOSAL1363-1465 · INBOX-SETTLEMENT-NOTICE1382-1448 · MULTIAGENT-SETTLEMENT-NOTICE1451-1478 · MULTIAGENT-FINAL-FLUSH |
packages/subagent/subagent/src/depth.ts | packages/subagent/subagent | 18-50 · MULTIAGENT-DEPTH |
packages/subagent/subagent/src/descriptor-seed.ts | packages/subagent/subagent | 13-30 · MULTIAGENT-DESCRIPTOR-SEED |
packages/subagent/subagent/src/descriptor.ts | packages/subagent/subagent | 1-88 · MULTIAGENT-DESCRIPTOR195-314 · MULTIAGENT-DESCRIPTOR-FOLD |
packages/subagent/subagent/src/index.ts | packages/subagent/subagent | 203-275 · INBOX-CONTINUATION-SEAM404-495 · MULTIAGENT-RUNTIME-DISPATCH |
packages/subagent/subagent/src/invariant.ts | packages/subagent/subagent | 14-84 · MULTIAGENT-INVARIANTS |
packages/subagent/subagent/src/lifecycle.ts | packages/subagent/subagent | 76-217 · MULTIAGENT-LIFECYCLE |
packages/subagent/subagent/src/list-children.ts | packages/subagent/subagent | 27-32 · MULTIAGENT-LIST-CONCURRENCY117-409 · MULTIAGENT-LIST-SERVICE |
packages/subagent/subagent/src/out-of-process.ts | packages/subagent/subagent | 155-215 · MULTIAGENT-OUTPROCESS-SETTLEMENT |
packages/subagent/subagent/src/projection.ts | packages/subagent/subagent | 111-155 · MULTIAGENT-DESCRIPTOR-PROJECTION |
packages/subagent/subagent/src/run-settlement.ts | packages/subagent/subagent | 21-63 · MULTIAGENT-RUN-SETTLEMENT |
packages/subagent/subagent/src/types.ts | packages/subagent/subagent | 75-323 · MULTIAGENT-SEAM |
packages/subagent/subagent/tests/continuation.spec.ts | packages/subagent/subagent | 101-191 · MULTIAGENT-CONTINUATION-ACCEPTANCE-TEST |
packages/subagent/tool-subagent-control/src/index.ts | packages/subagent/tool-subagent-control | 25-119 · INBOX-CONTROL-TOOLS25-119 · MULTIAGENT-CONTROL-TOOLS |
packages/subagent/tool-subagent-control/src/list-agents.ts | packages/subagent/tool-subagent-control | 52-105 · MULTIAGENT-LIST-TOOL |
packages/subagent/tool-subagent-report/src/index.ts | packages/subagent/tool-subagent-report | 40-142 · MULTIAGENT-REPORT-TOOL |
packages/subagent/tool-subagent/src/index.ts | packages/subagent/tool-subagent | 28-99 · MULTIAGENT-TOOL-CONFIG246-429 · MULTIAGENT-TOOL-ROUTES366-465 · MULTIAGENT-TOOL-CONCURRENCY |
packages/subprocess/subprocess-local/README.md | packages/subprocess/subprocess-local | 26-33 · OPEN-PROCESS-PLATFORM-LIMITS |
packages/subprocess/subprocess-local/src/spawn.ts | packages/subprocess/subprocess-local | 17-352 · ACP-CHILD-ENV-MERGE84-247 · SHELL-OUTPUT-SPILL253-543 · SHELL-PROCESS-TREE |
packages/subprocess/subprocess-local/src/terminal.ts | packages/subprocess/subprocess-local | 93-248 · SHELL-PTY-CLEANUP |
packages/subprocess/subprocess/src/index.ts | packages/subprocess/subprocess | 37-65 · ACP-CHILD-ENV-POLICY37-66 · SEC-CHILD-ENV37-66 · SHELL-ENV-SCRUB37-139 · SHELL-SUBPROCESS-SEAM |
packages/subprocess/subprocess/src/types.ts | packages/subprocess/subprocess | 55-193 · SHELL-SPAWN-CONTRACT |
packages/terminal/terminal-bash/src/index.ts | packages/terminal/terminal-bash | 27-145 · SANDBOX-TERMINAL-FENCE |
packages/terminal/terminal-bash/src/session.ts | packages/terminal/terminal-bash | 225-564 · SHELL-PTY-READINESS |
packages/terminal/terminal/src/index.ts | packages/terminal/terminal | 104-405 · SHELL-TERMINAL-SERVICE |
packages/terminal/tool-terminal/src/index.ts | packages/terminal/tool-terminal | 157-399 · SHELL-TERMINAL-TOOLS |
packages/test-support/acp-snapshot/README.md | packages/test-support/acp-snapshot | 74-78 · OPEN-SNAPSHOT-BACKEND-GAP |
packages/test-support/acp-snapshot/src/suite.ts | packages/test-support/acp-snapshot | 1080-1098 · TINV-SNAPSHOT-SCENARIO-MODE1167-1342 · TINV-SNAPSHOT-COMPARE1440-1480 · TINV-SNAPSHOT-FIXTURES |
packages/test-support/llm-replay/README.md | packages/test-support/llm-replay | 77-80 · OPEN-REPLAY-CONCURRENCY |
packages/test-support/llm-replay/src/index.ts | packages/test-support/llm-replay | 1-263 · TINV-REPLAY-DERIVE193-260 · LLM-REPLAY-DERIVATION |
packages/test-support/llm-replay/tests/llm-replay.spec.ts | packages/test-support/llm-replay | 119-132 · LLM-MULTI-ATTEMPT-REPLAY-TEST671-917 · TINV-REPLAY-TEST |
packages/todo/tool-todo/src/index.ts | packages/todo/tool-todo | 28-225 · PLANSTATE-TODO-TOOL |
packages/todo/tool-todo/src/invariant.ts | packages/todo/tool-todo | 15-57 · PLANSTATE-TODO-INVARIANT |
packages/todo/tool-todo/tests/projection.spec.ts | packages/todo/tool-todo | 68-123 · PLANSTATE-TODO-PROJECTION |
packages/todo/tool-todo/tests/tool-todo.spec.ts | packages/todo/tool-todo | 70-209 · PLANSTATE-TODO-TEST |
packages/util/atomic-write/README.md | packages/util/atomic-write | 23-45 · OPEN-ATOMIC-DURABILITY |
packages/util/native-command/README.md | packages/util/native-command | 25-27 · OPEN-NATIVE-OUTPUT-BOUND |
packages/util/timeout/src/index.ts | packages/util/timeout | 57-190 · FAILURE-TIMEOUT-SIGNAL |
packages/web/tool-web/src/index.ts | packages/web/tool-web | 1-91 · CAP-WEB-TOOL |
packages/web/web-fetch-http/README.md | packages/web/web-fetch-http | 17-51 · OPEN-WEB-SSRF |
packages/web/web-fetch-http/src/policy.ts | packages/web/web-fetch-http | 14-105 · CAP-WEB-FETCH-POLICY |
packages/web/web-fetch-http/src/provider.ts | packages/web/web-fetch-http | 1-147 · CAP-WEB-FETCH-TRANSPORT149-207 · CAP-WEB-FETCH-CAPS |
packages/web/web-search-deepseek/src/index.ts | packages/web/web-search-deepseek | 95-138 · CAP-WEB-DEEPSEEK-SETTINGS |
packages/web/web-search-deepseek/src/provider.ts | packages/web/web-search-deepseek | 1-109 · CAP-WEB-DEEPSEEK-WIRE112-174 · CAP-WEB-DEEPSEEK-MAP176-300 · CAP-WEB-DEEPSEEK-REQUEST |
packages/web/web/src/index.ts | packages/web/web | 49-200 · CAP-WEB-SELECTION |
packages/web/web/src/types.ts | packages/web/web | 15-129 · CAP-WEB-TYPES |
packages/workflow/tool-ralph/README.md | packages/workflow/tool-ralph | 86-93 · OPEN-RALPH-VERIFICATION |
packages/workflow/tool-ralph/src/index.ts | packages/workflow/tool-ralph | 80-177 · RALPH-SCRIPT151-167 · RALPH-ROUND-PROMPT207-232 · RALPH-FRESH-PROVIDER246-333 · RALPH-DOUBLE-VALIDATION282-391 · RALPH-OUTCOMES351-391 · RALPH-RENDER404-435 · RALPH-CONTRACT437-474 · RALPH-EXECUTE |
packages/workflow/tool-workflow/src/index.ts | packages/workflow/tool-workflow | 69-330 · WORKFLOW-DURABLE-RECORD133-270 · WORKFLOW-TOOL-CONTRACT272-330 · WORKFLOW-TOOL-EXECUTE |
packages/workflow/tool-workflow/src/invariant.ts | packages/workflow/tool-workflow | 67-163 · WORKFLOW-RECORD-INVARIANT |
packages/workflow/tool-workflow/src/types.ts | packages/workflow/tool-workflow | 13-63 · WORKFLOW-RECORD-TYPES |
packages/workflow/workflow-worker-thread/README.md | packages/workflow/workflow-worker-thread | 5-22 · OPEN-WORKFLOW-ISOLATION |
packages/workflow/workflow-worker-thread/src/host.ts | packages/workflow/workflow-worker-thread | 32-169 · WORKFLOW-WORKER-SPAWN206-251 · WORKFLOW-DISPOSE329-412 · WORKFLOW-CHILD-BRIDGE385-412 · WORKFLOW-CHILD-SNAPSHOT414-483 · WORKFLOW-CHILD-QUIESCENCE486-516 · WORKFLOW-CANCEL-RACE553-582 · WORKFLOW-EVENT-PAIRING |
packages/workflow/workflow-worker-thread/src/index.ts | packages/workflow/workflow-worker-thread | 31-48 · WORKFLOW-CAPS53-201 · WORKFLOW-START-VALIDATION164-180 · WORKFLOW-HMR-HOLDER |
packages/workflow/workflow-worker-thread/src/meta.ts | packages/workflow/workflow-worker-thread | 12-82 · WORKFLOW-META |
packages/workflow/workflow-worker-thread/src/realm.ts | packages/workflow/workflow-worker-thread | 1-39 · WORKFLOW-REALM-TRUST42-151 · WORKFLOW-JSON-BOUNDARY |
packages/workflow/workflow-worker-thread/src/runtime.ts | packages/workflow/workflow-worker-thread | 75-114 · WORKFLOW-VM-GLOBALS116-187 · WORKFLOW-CANCEL-BOUNDARY222-274 · WORKFLOW-SLOTS249-345 · WORKFLOW-AGENT-RESULT347-398 · WORKFLOW-AGENT-OPTIONS400-466 · WORKFLOW-COMBINATORS400-455 · WORKFLOW-FATALITY |
packages/workflow/workflow/README.md | packages/workflow/workflow | 53-59 · OPEN-WORKFLOW-DURABILITY |
packages/workflow/workflow/src/index.ts | packages/workflow/workflow | 36-100 · WORKFLOW-EVENTS102-148 · WORKFLOW-ERROR-TAXONOMY150-186 · WORKFLOW-LIFECYCLE |
packages/workflow/workflow/src/runtime-types.ts | packages/workflow/workflow | 14-49 · WORKFLOW-SEAM |
packages/workspace/workspace/README.md | packages/workspace/workspace | 11-23 · PERSIST-WORKSPACE-OWNERSHIP41-44 · PERSIST-WORKSPACE-REFRESH-DOC |
packages/workspace/workspace/src/entity.ts | packages/workspace/workspace | 101-107 · PERSIST-WORKSPACE-TITLE-SETTER |
packages/workspace/workspace/src/index.ts | packages/workspace/workspace | 118-140 · PERSIST-WORKSPACE-INIT142-163 · PERSIST-WORKSPACE-TITLE-GAP285-424 · PERSIST-WORKSPACE-MUTATION426-508 · PERSIST-WORKSPACE-BOOTSTRAP510-551 · PERSIST-WORKSPACE-INVARIANTS561-630 · PERSIST-WORKSPACE-REFRESH |
packages/workspace/workspace/src/spec.ts | packages/workspace/workspace | 13-75 · PERSIST-WORKSPACE-SCHEMA |
python/sdk/src/deepseek_harness/api.py | python | 13-84 · SDK-PY-RESULT97-242 · SDK-PY-RUN |
python/sdk/src/deepseek_harness/client.py | python | 24-397 · SDK-PY-CLIENT63-83 · SEC-SDK-PYTHON228-396 · SDK-PY-READER |
python/sdk/src/deepseek_harness/models.py | python | 26-32 · SDK-PY-MODELS |
README.md | repository-root | 9-11 · WEBUI-DEVELOPER-PREVIEW |
scripts/coverage-exempt.spec.ts | scripts | 13-54 · TINV-COVERAGE-EXEMPT-TEST |
scripts/coverage-exempt.ts | scripts | 1-41 · TINV-COVERAGE-EXEMPT |
scripts/gen-config-catalog.ts | scripts | 1-7 · TINV-CONFIG-CATALOG719-875 · TINV-CONFIG-CATALOG-CHECK |
scripts/gen-cordis-catalog.ts | scripts | 701-918 · TINV-CORDIS-CATALOG |
scripts/gen-tool-catalog.ts | scripts | 556-704 · TOOLCAT-GENERATOR |
scripts/package-invariants.ts | scripts | 11-286 · TINV-COMPANION-GATE |
scripts/run-gates.ts | scripts | 374-419 · TINV-CI-CONSUMERS497-527 · TINV-SNAPSHOT-GATE571-615 · TINV-DOC-SYNC |
scripts/session-fixture-layout.snapshot.ts | scripts | 1-16 · TINV-FIXTURE-LAYOUT-TEST |
scripts/test-invariants.spec.ts | scripts | 97-152 · TINV-INVARIANT-TOPOLOGY-TEST |
scripts/test-invariants.ts | scripts | 67-272 · TINV-TEST-HOST |
scripts/verify-built-package-invariants.mjs | scripts | 31-82 · TINV-BUILT-COMPANIONS |
scripts/verify-cordis-config.spec.ts | scripts | 1-38 · TINV-CONFIG-TEST |
scripts/verify-cordis-config.ts | scripts | 1-471 · TINV-CONFIG-METADATA72-364 · TINV-CONFIG-CLOSURE |
scripts/verify-package-readme-limitations.ts | scripts | 1-93 · OPEN-LIMITATIONS-GATE |
scripts/verify-runtime-closure.ts | scripts | 24-73 · TINV-RUNTIME-CLOSURE |
scripts/verify-type-equiv.ts | scripts | 199-300 · TINV-TYPE-EQUIV |
scripts/wine-windows-gates.sh | scripts | 31-282 · TINV-WINE-RUNNER |
vitest.config.ts | repository-root | 21-84 · TINV-PLATFORM-COVERAGE160-268 · TINV-COVERAGE-SCOPE264-283 · TINV-COVERAGE-BAR |
vitest.snapshot.config.ts | repository-root | 19-67 · TINV-SNAPSHOT-MODE |
7. Documented symbol index · 384
Universe: primary entries in scripts/type-equiv.manifest.json. Identity is source + symbol + projection. This is intentionally not described as all exports or all declarations.
8. Event and service indexes
The durable Session log and live Cordis bus are different planes and are never combined into one total. Durable rows come from the persistence-catalog generator. Live rows and host services come from the host-face Typert model; client-face and inherited framework APIs are out of scope.
Durable Session log vocabulary · 44
| Event | Mode / surface | Payload or signature | Pinned source |
|---|---|---|---|
agent-preset/selected | log-only | { agentPreset: string } | packages/preset/agent-presets/src/session.ts:26 |
agent/inbox/spliced | log-only | { target: InboxTarget; start: number; removedCount?: number; inserted: UserMessage[]; outcome?: 'canceled' } | packages/core/agent/src/types.ts:19 |
approval/asked | log-only | { id: ApprovalRequestId; toolName: string; callId?: CallId; reason?: string } | packages/interaction/user-approval/src/index.ts:44 |
approval/decided | log-only | { id: ApprovalRequestId; outcome: ApprovalOutcome } | packages/interaction/user-approval/src/index.ts:55 |
approval/policy | log-only | { policy: ApprovalPolicy; source?: 'delegation' } | packages/interaction/user-approval/src/index.ts:67 |
assistant/chunk | log-only | { turn: number; step: number; chunk: StreamChunk } | packages/core/session/src/types.ts:266 |
assistant/message | surface | { turn: number; step: number; message: AssistantMessage; usage?: TokenUsage } | packages/core/session/src/types.ts:273 |
command/done | log-only | { commandId: CommandId; kind: 'success' | 'error'; text?: string; sourceEventSeq?: number } | packages/interaction/commands/src/types.ts:95 |
command/run | log-only | { commandId: CommandId; name: string; args?: string; source: CommandSource } | packages/interaction/commands/src/types.ts:88 |
compaction/end | log-only | { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null; error?: string } | packages/compaction/compaction/src/types.ts:71 |
compaction/prune | log-only | { shadowedRange: { start: number; end: number }; shadowedSeqs: number[]; shadowedTokenCount: number } | packages/compaction/compaction/src/types.ts:81 |
compaction/start | log-only | { compactionId: CompactionId; sourceCommandId?: CommandId; turn: number | null } | packages/compaction/compaction/src/types.ts:23 |
compaction/summary | log-only | { compactionId: CompactionId; sourceCommandId?: CommandId; summary: ContentBlock[]; shadowedRange: { start: number; end: number }; shadowedSeqs: number[]; shadowedTokenCount: number; provider: string; model: string; maxTokens?: number; usage?: TokenUsage } & ({ rawOutput: ContentBlock[]; llmStreamCall: true } | { rawOutput?: ContentBlock[]; llmStreamCall?: never }) | packages/compaction/compaction/src/types.ts:33 |
feedback/record | log-only | { text: string } | packages/feedback/command-feedback/src/index.ts:62 |
goal/change | log-only | GoalChangeMeta | packages/goal/goal/src/domain.ts:66 |
hook/invoked | log-only | { turn: number; point: string; dialect: HookDialect; matcher?: string; handlerId: string } | packages/hooks/hook-protocol/src/types.ts:19 |
hook/result | log-only | { turn: number; point: string; handlerId: string; decision: string; exitCode?: number; stderrSummary?: string; durationMs: number } | packages/hooks/hook-protocol/src/types.ts:31 |
llm/retry | log-only | LlmRetryEventData | packages/llm/llm-retry/src/types.ts:9 |
llm/retry-started | log-only | LlmRetryStartedEventData | packages/llm/llm-retry/src/types.ts:11 |
permission/preset | log-only | { preset: string } | packages/interaction/permission-presets/src/index.ts:50 |
plan/mode | log-only | { active: boolean } | packages/plan/plan-mode/src/index.ts:53 |
request/context | log-only | RequestContext | packages/core/session/src/types.ts:309 |
request/header | log-only | { header: EpochHeader; reason: RequestHeaderReason } | packages/core/session/src/types.ts:304 |
sandbox/mode | log-only | { mode: SandboxMode; source?: 'delegation' } | packages/sandbox/sandbox-policy/src/session-mode.ts:33 |
schedule/change | log-only | ScheduleChange | packages/schedule/schedule/src/types.ts:219 |
session/end-seed | log-only | Record<string, never> | packages/core/session/src/types.ts:332 |
session/title | log-only | SessionTitleEventData | packages/session/session-title/src/index.ts:100 |
session/title-llm-request | log-only | SessionTitleLlmRequestEventData | packages/session/session-title-llm/src/index.ts:43 |
step/end | log-only | { turn: number; step: number } | packages/core/session/src/types.ts:256 |
step/start | log-only | { turn: number; step: number } | packages/core/session/src/types.ts:254 |
subagent/descriptor | log-only | SubagentDescriptorData | packages/subagent/subagent/src/descriptor.ts:37 |
todo/write | log-only | { todos: TodoItem[] } | packages/core/session/src/types.ts:299 |
tool-workflow/agent-end | log-only | ToolWorkflowAgentEndData | packages/workflow/tool-workflow/src/types.ts:57 |
tool-workflow/agent-start | log-only | ToolWorkflowAgentStartData | packages/workflow/tool-workflow/src/types.ts:52 |
tool-workflow/run-end | log-only | ToolWorkflowRunEndData | packages/workflow/tool-workflow/src/types.ts:62 |
tool-workflow/run-start | log-only | ToolWorkflowRunStartData | packages/workflow/tool-workflow/src/types.ts:47 |
tool/call | log-only | { turn: number; step: number; callId: CallId; name: string; arguments: string } | packages/core/session/src/types.ts:279 |
tool/code-dispatch | log-only | CodeDispatchEventData | packages/core/tools/src/types.ts:56 |
tool/code-dispatch-start | log-only | CodeDispatchStartEventData | packages/core/tools/src/types.ts:40 |
tool/result | surface | { turn: number; step: number; message: ToolResultMessage; error?: { name: string; code: string }; meta?: JsonValue } | packages/core/session/src/types.ts:291 |
turn/end | log-only | { turn: number; reason: TurnEndReason } | packages/core/session/src/types.ts:252 |
turn/start | log-only | { turn: number } | packages/core/session/src/types.ts:243 |
user/message | surface | UserMessage | packages/core/session/src/types.ts:264 |
web/deepseek-search-llm-request | log-only | DeepSeekSearchLlmRequest | packages/web/web-search-deepseek/src/provider.ts:83 |
Live Cordis host-bus vocabulary · 56
| Event | Mode / surface | Payload or signature | Pinned source |
|---|---|---|---|
agent-loop/config-start-failed | emit | 'agent-loop/config-start-failed'(payload: { sessionId: SessionId; error: unknown }): void | packages/core/agent-loop/src/index.ts:183 |
agent-preset/selected | emit | 'agent-preset/selected'(sessionId: SessionId, agentPreset: string): void | packages/preset/agent-presets/src/types.ts:13 |
agent/created | emit | 'agent/created'(this: Scoped<Agent>, payload: { agent: Agent }): void | packages/core/agent/src/runtime-types.ts:159 |
agent/disposed | emit | 'agent/disposed'(this: Scoped<Agent>, payload: { agent: Agent }): void | packages/core/agent/src/runtime-types.ts:168 |
agent/error | emit | 'agent/error'(this: Scoped<Agent>, payload: { agent: Agent; turn: number; step: number; error: unknown }): void | packages/core/agent/src/runtime-types.ts:290 |
agent/inbox/claimed | emit | 'agent/inbox/claimed'(this: Scoped<Agent>, payload: { agent: Agent; message: UserMessage; turn: number }): void | packages/core/agent/src/runtime-types.ts:197 |
agent/inbox/discarded | emit | 'agent/inbox/discarded'(this: Scoped<Agent>, payload: { agent: Agent; message: UserMessage }): void | packages/core/agent/src/runtime-types.ts:205 |
agent/inbox/inserted | emit | 'agent/inbox/inserted'(this: Scoped<Agent>, payload: { agent: Agent; message: UserMessage }): void | packages/core/agent/src/runtime-types.ts:186 |
agent/pre-step | waterfall | 'agent/pre-step'(this: Scoped<Agent>, payload: { agent: Agent; messages: UserMessage[]; turn: number; step: number; signal: AbortSignal }, next: () => Promise<PreStepDecision>): Promise<PreStepDecision> | packages/core/agent/src/runtime-types.ts:231 |
agent/request | waterfall | 'agent/request'(this: Scoped<Agent>, payload: { agent: Agent; turn: number; step: number; signal: AbortSignal }, next: () => Promise<LlmCallConfig>): Promise<LlmCallConfig> | packages/core/agent/src/runtime-types.ts:244 |
agent/request-error | waterfall | 'agent/request-error'(this: Scoped<Agent>, payload: { agent: Agent; turn: number; step: number; provider: string; failure: LlmFailure; retryPolicy: ResolvedRetryPolicy | undefined; signal: AbortSignal }, next: () => Promise<RequestErrorAction>): Promise<RequestErrorAction> | packages/core/agent/src/runtime-types.ts:260 |
agent/session-start | emit | 'agent/session-start'(this: Scoped<Agent>, payload: { agent: Agent; source: SessionStartSource }): void | packages/core/agent/src/runtime-types.ts:217 |
agent/status | emit | 'agent/status'(this: Scoped<Agent>, payload: { agent: Agent; status: AgentStatus }): void | packages/core/agent/src/runtime-types.ts:178 |
agent/turn-stopping | serial | 'agent/turn-stopping'(this: Scoped<Agent>, payload: { agent: Agent; turn: number; signal: AbortSignal }): Promise<void> | void | packages/core/agent/src/runtime-types.ts:278 |
approval/request | waterfall | 'approval/request'(this: Scoped<ApprovalService>, req: ApprovalRequest, next: () => Promise<ApprovalOutcome>): Promise<ApprovalOutcome> | packages/interaction/user-approval/src/index.ts:30 |
commands/change | emit | 'commands/change'(): void | packages/interaction/commands/src/types.ts:72 |
cordis/dynamic-package | emit | 'cordis/dynamic-package'(pkg: DynamicCordisPackage): void | packages/extensions/cordis-host-runner/src/types.ts:379 |
cordis/dynamic-retract | emit | 'cordis/dynamic-retract'(retracted: DynamicCordisRetracted): void | packages/extensions/cordis-host-runner/src/types.ts:385 |
cordis/inspect-query | emit | 'cordis/inspect-query'(request: CordisInspectQueryRequest): void | packages/extensions/cordis-host-runner/src/types.ts:391 |
cordis/inspect-query-resolved | emit | 'cordis/inspect-query-resolved'(resolved: CordisInspectQueryResolved): void | packages/extensions/cordis-host-runner/src/types.ts:397 |
cordis/request-run | emit | 'cordis/request-run'(request: DynamicCordisRunRequest): void | packages/extensions/cordis-host-runner/src/types.ts:367 |
cordis/request-run-resolved | emit | 'cordis/request-run-resolved'(resolved: DynamicCordisRequestResolved): void | packages/extensions/cordis-host-runner/src/types.ts:373 |
credentials/updated | emit | 'credentials/updated'(ref: CredentialRef): void | packages/credentials/credentials/src/types.ts:29 |
domain/changed | emit | 'domain/changed'(change: DomainChanged): void | packages/storage/storage-domain/src/events.ts:46 |
fs/edit-intent | waterfall | 'fs/edit-intent'(target: FsTarget, actor: object | undefined, next: () => { version: FsVersion } | undefined | Promise<{ version: FsVersion } | undefined>): Promise<{ version: FsVersion } | undefined> | packages/fs/fs/src/index.ts:66 |
fs/observed | emit | 'fs/observed'(target: FsTarget, observation: FsObservation, actor: object | undefined): void | packages/fs/fs/src/index.ts:76 |
fs/write-intent | waterfall | 'fs/write-intent'(target: FsTarget, actor: object | undefined, next: () => FsWriteIntent | undefined | Promise<FsWriteIntent | undefined>): Promise<FsWriteIntent | undefined> | packages/fs/fs/src/index.ts:58 |
goal/changed | emit | 'goal/changed'(this: import('@deepseek-ai/dsh-scope').Scoped<Agent>, payload: { agent: Agent; change: GoalChanged }): void | packages/goal/goal/src/domain.ts:114 |
llm/adapters-updated | emit | 'llm/adapters-updated'(): void | packages/llm/llm/src/types.ts:23 |
llm/stream | waterfall | 'llm/stream'(this: LlmRuntime, options: GenerateOptions, next: () => AsyncIterable<StreamChunk>): AsyncIterable<StreamChunk> | packages/llm/llm/src/index.ts:64 |
session-telemetry/record | waterfall | 'session-telemetry/record'(record: SessionTelemetryRecord, next: () => SessionTelemetryRecord): SessionTelemetryRecord | packages/session/session-telemetry/src/index.ts:43 |
session/created | emit | 'session/created'(this: Scoped<Session>, session: Session): void | packages/core/session/src/index.ts:54 |
session/disposed | emit | 'session/disposed'(this: Scoped<Session>, session: Session): void | packages/core/session/src/index.ts:64 |
session/event | emit | 'session/event'(this: Scoped<Session>, session: Session, event: SessionEvent): void | packages/core/session/src/index.ts:76 |
session/flush | parallel | 'session/flush'(this: Scoped<Session>, session: Session): Promise<void> | void | packages/core/session/src/index.ts:85 |
settings/document-updated | emit | 'settings/document-updated'(ns: SettingsNamespace, revision: number): void | packages/settings/settings/src/types.ts:48 |
settings/updated | emit | 'settings/updated'(ns: SettingsNamespace, next: unknown, prev: unknown, source: SettingsUpdateSource): void | packages/settings/settings/src/types.ts:35 |
skills/change | emit | 'skills/change'(): void | packages/skill/skill/src/index.ts:297 |
subagent/end | emit | 'subagent/end'(this: Scoped<SubagentRuntime>, info: SubagentRunEndInfo): void | packages/subagent/subagent/src/index.ts:166 |
subagent/provider-added | emit | 'subagent/provider-added'(provider: SubagentProvider): void | packages/subagent/subagent/src/index.ts:140 |
subagent/provider-removed | emit | 'subagent/provider-removed'(name: string): void | packages/subagent/subagent/src/index.ts:146 |
subagent/start | emit | 'subagent/start'(this: Scoped<SubagentRuntime>, info: SubagentRunInfo): void | packages/subagent/subagent/src/index.ts:157 |
system-prompt/assemble | waterfall | 'system-prompt/assemble'(this: Scoped<SystemPrompt>, assembly: PromptAssembly, context: AssembleContext, next: () => Promise<PromptAssembly>): Promise<PromptAssembly> | packages/core/system-prompt/src/index.ts:31 |
system-prompt/change | emit | 'system-prompt/change'(): void | packages/core/system-prompt/src/index.ts:37 |
tools/change | emit | 'tools/change'(): void | packages/core/tools/src/index.ts:207 |
tools/code-dispatch-log | waterfall | 'tools/code-dispatch-log'(this: Scoped<ToolRuntime>, dispatch: CodeDispatchLog, next: () => Promise<ContentBlock[]>): Promise<ContentBlock[]> | packages/core/tools/src/index.ts:189 |
tools/execute | waterfall | 'tools/execute'(this: Scoped<ToolRuntime>, exec: ToolDispatchExecution, next: () => Promise<ToolExecutionResult>): Promise<ToolExecutionResult> | packages/core/tools/src/index.ts:163 |
tools/post-execute | waterfall | 'tools/post-execute'(this: Scoped<ToolRuntime>, exec: ToolExecution, result: Readonly<ToolExecutionResult>, next: () => Promise<PostToolDecision>): Promise<PostToolDecision> | packages/core/tools/src/index.ts:175 |
tools/pre-execute | waterfall | 'tools/pre-execute'(this: Scoped<ToolRuntime>, exec: ToolExecution, next: () => Promise<PreToolDecision>): Promise<PreToolDecision> | packages/core/tools/src/index.ts:152 |
tools/result | emit | 'tools/result'(this: Scoped<ToolRuntime>, exec: Readonly<ToolExecution>, result: Readonly<ToolExecutionResult>): undefined | packages/core/tools/src/index.ts:197 |
workflow/agent-end | emit | 'workflow/agent-end'(info: WorkflowRunInfo, agent: WorkflowAgentEndInfo): void | packages/workflow/workflow/src/index.ts:79 |
workflow/agent-start | emit | 'workflow/agent-start'(info: WorkflowRunInfo, agent: WorkflowAgentInfo): void | packages/workflow/workflow/src/index.ts:68 |
workflow/end | emit | 'workflow/end'(info: WorkflowRunInfo, result: WorkflowResultInfo): void | packages/workflow/workflow/src/index.ts:89 |
workflow/log | emit | 'workflow/log'(info: WorkflowRunInfo, message: string): void | packages/workflow/workflow/src/index.ts:58 |
workflow/phase | emit | 'workflow/phase'(info: WorkflowRunInfo, title: string): void | packages/workflow/workflow/src/index.ts:51 |
workflow/start | emit | 'workflow/start'(info: WorkflowRunInfo): void | packages/workflow/workflow/src/index.ts:43 |
Cordis host services · 56
| Service | Class | Public methods | Pinned source |
|---|---|---|---|
agentDefaultModelAgentDefaultModelConfig | concrete | currentSelection(): ModelSelectionasync saveSelection(next: ModelSelection): Promise<void> | packages/core/agent-default-model/src/index.ts:64 |
agentLoopAgentLoop | concrete | readonly config: ResolvedConfigcreate(id: SessionId, options: AgentOptions = {}, meta: Pick<SessionHeader, 'cwd'> = {}): Agentasync createAgent(ownerCtx: Context, options: CreateAgentOptions): Promise<AgentHandle>async resume(ownerCtx: Context, options: ResumeAgentOptions): Promise<AgentHandle> | packages/core/agent-loop/src/index.ts:296 |
agentPresetsAgentPresets | concrete | async list(): Promise<AgentPreset[]>async resolve(id?: string): Promise<AgentPreset>async mount(agentCtx: Context, id?: string): Promise<AgentPreset>composeFrom(agentCtx: Context, parentCtx: Context): string | undefinedcomposedPreset(agentCtx: Context): string | undefinedasync read(id: string): Promise<string>async copy(from: string, id: string, name?: string): Promise<void>async remove(id: string): Promise<void>serviceFor<K extends string & keyof Context>(agent: { ctx: Context }, name: K): Context[K] | undefinedasync recompose(agentCtx: Context, id: string): Promise<AgentPreset>async standingKeyFor(id?: string): Promise<ScopeKey> | packages/preset/agent-presets/src/index.ts:82 |
agentsAgentRegistry | concrete | currentInitiator(): Agent | undefinedrequireInitiator(): AgentwithInitiator<T>(agent: Agent, operation: () => T): TwithoutInitiator<T>(operation: () => T): TsetFactory(factory: AgentFactory): () => voidasync create(options: CreateAgentOptions): Promise<AgentHandle>async resume(options: ResumeAgentOptions): Promise<AgentHandle>register(agent: Agent): () => voidenter(agent: Agent, owner: Agent | undefined): () => voidannounce(agent: Agent): voidget(id: SessionId): Agent | undefinedisOwnedBy(id: SessionId, owner: Agent): booleanlist(): Agent[]roots(): Agent[] | packages/core/agent/src/index.ts:256 |
apiProxyApiProxy | concrete | downloads: DownloadsApirespond(message: ClientResponse): Promise<RpcReceipt> | packages/host/apiproxy/src/api/index.ts:22 |
approvalApprovalService | concrete | setPolicy(agent: Agent, policy: ApprovalPolicy): voidasync request(req: ApprovalRequest): Promise<ApprovalOutcome>overrideOf(session: Session): ApprovalPolicy | undefined | packages/interaction/user-approval/src/index.ts:192 |
attachmentsAttachmentStore | abstract | abstract readonly imageLimits: ImageAttachmentLimitsabstract validateImage(input: SaveImageAttachment): Promise<void>abstract saveImage(input: SaveImageAttachment): Promise<ImageAttachmentRef>abstract readImage(ref: ImageAttachmentRef, signal?: AbortSignal): Promise<StoredImageAttachment> | packages/attachment/attachment/src/index.ts:29 |
clientModulesClientModuleRegistry | concrete | graph(): WebBootGraphclientPath(id: string): string | undefinedrebuilt(id: string): string | undefinedonRebuilt(listener: (id: string, rev: string) => void): () => voidonGraphChanged(listener: () => void): () => void | packages/client/modules/src/index.ts:184 |
codeRuntimeCodeRuntime | abstract | abstract readonly language: stringabstract readonly isolation: stringabstract run(request: CodeRunRequest): Promise<CodeRunResult> | packages/code-runtime/code-runtime/src/index.ts:102 |
commandsCommandRuntime | concrete | register(definition: CommandDefinition): () => void@Remote list(agent: Agent): readonly CommandDescriptor[]find(agent: Agent, name: string): CommandDefinition | undefined@Remote async execute( agent: Agent, line: string, signal: AbortSignal, ): Promise<CommandExecution | undefined> | packages/interaction/commands/src/index.ts:225 |
compactionCompactionEngine | abstract | abstract compactIfNeeded( agent: CompactionAgentContext, trigger: CompactionTrigger, signal: AbortSignal, ): Promise<CompactionResult | null>abstract compactNow( agent: ManualCompactAgentContext, signal: AbortSignal, sourceCommandId?: CommandId, ): Promise<CompactionResult | null>abstract compactRegion( start: number, end: number, agent: CompactionAgentContext, signal?: AbortSignal, ): Promise<CompactionResult> | packages/compaction/compaction/src/index.ts:96 |
cordisInspectCordisInspectRegistryService | concrete | register(registration: HostCordisInspectProviderRegistration): () => voidsyncClientManifest(providers: readonly CordisInspectProviderManifest[]): voidlist(): CordisInspectProviderView[]async query( platform: CordisInspectPlatform, providerId: string, methodName: string, input: JsonValue | undefined, agent: Agent, signal: AbortSignal, ): Promise<JsonValue>resolveClientQuery( agent: Agent, requestId: CordisInspectRequestId, resolution: CordisInspectQueryResolution, ): CordisInspectResolveAck | packages/extensions/cordis-host-runner/src/inspect-registry.ts:46 |
credentialsCredentialProvider | abstract | abstract resolve(ref: CredentialRef): Promise<ResolvedCredential | undefined>abstract describe(ref: CredentialRef): Promise<CredentialInfo>abstract set(ref: CredentialRef, value: string): Promise<void>abstract unset(ref: CredentialRef): Promise<void> | packages/credentials/credentials/src/index.ts:60 |
directoryPickerDirectoryPicker | abstract | abstract capability(): DirectoryPickerCapability | packages/host/directory-picker/src/index.ts:131 |
dynamicCordisRunnerDynamicCordisRunnerService | concrete | define(request: DynamicCordisDefineRequest): DynamicCordisDefineReceiptasync undefine(agent: Agent, pluginId: CordisDynamicPluginId): Promise<DynamicCordisUndefineReceipt>@Remote('undefineFromPanel') async undefineFromPanel(agent: Agent, pluginId: CordisDynamicPluginId): Promise<DynamicCordisUndefineReceipt>async run( agent: Agent, pluginId: CordisDynamicPluginId, packageId: CordisDynamicPackageId, mode: CordisDynamicRunMode, signal?: AbortSignal, ): Promise<DynamicCordisRunResponse>@Remote('runHostHalf') async runHostHalf( agent: Agent, pluginId: CordisDynamicPluginId, packageId: CordisDynamicPackageId, mode: CordisDynamicRunMode, requestId: ApprovalRequestId | null, approveFutureVersions: boolean, ): Promise<DynamicCordisHostHalfResult>@Remote('getClientCode') getClientCode( agent: Agent, pluginId: CordisDynamicPluginId, pluginRunId: CordisDynamicPluginRunId, ): DynamicCordisClientSource@Remote('resolveRequestRun') async resolveRequestRun( requestId: ApprovalRequestId, resolution: DynamicCordisRunResolution, ): Promise<DynamicCordisResolveAck>@Remote('settleUserRun') async settleUserRun( agent: Agent, pluginId: CordisDynamicPluginId, resolution: DynamicCordisRunResolution, ): Promise<DynamicCordisRunResponse>async stop(agent: Agent, pluginId: CordisDynamicPluginId): Promise<DynamicCordisStopResponse>@Remote('stopFromPanel') async stopFromPanel(agent: Agent, pluginId: CordisDynamicPluginId): Promise<DynamicCordisStopResponse>@Remote('syncInspectManifest') syncInspectManifest(providers: readonly CordisInspectProviderManifest[]): null@Remote('resolveInspectQuery') resolveInspectQuery( agent: Agent, requestId: CordisInspectRequestId, resolution: CordisInspectQueryResolution, ): CordisInspectResolveAck@Remote('inventory') inventory(): DynamicCordisInventoryRow[]snapshot(agent: Agent): DynamicCordisSnapshotRow[]reference(agent: Agent, pluginId: CordisDynamicPluginId): DynamicCordisReference | undefinedlistPlugins(agent: Agent): DynamicCordisPluginInspection[]inspectPlugin(agent: Agent, pluginId: CordisDynamicPluginId): DynamicCordisPluginInspectioninspectPackage( agent: Agent, pluginId: CordisDynamicPluginId, packageId: CordisDynamicPackageId, ): DynamicCordisPackageInspection@Remote('reportRenderFailure') async reportRenderFailure( agent: Agent, pluginId: CordisDynamicPluginId, pluginRunId: CordisDynamicPluginRunId, failure: DynamicCordisRenderFailure, ): Promise<null>@Remote('reportClientGuardFailure') async reportClientGuardFailure( agent: Agent, pluginId: CordisDynamicPluginId, pluginRunId: CordisDynamicPluginRunId, failure: CordisErrorDetails, ): Promise<null>@Remote('invoke') async invoke( pluginId: CordisDynamicPluginId, pluginRunId: CordisDynamicPluginRunId, method: string, args: JsonValue, ): Promise<DynamicCordisInvokeResult> | packages/extensions/cordis-host-runner/src/index.ts:124 |
e2bE2BRuntime | concrete | readonly cwd: stringreadonly runtimeRoot: stringasync getSandbox(): Promise<Sandbox> | packages/e2b/e2b/src/index.ts:74 |
fsFileSystem | abstract | abstract resolve(path: string, opts?: { cwd?: string; signal?: AbortSignal }): Promise<FsTarget>abstract processPath(target: FsTarget): stringabstract fileUrl(target: FsTarget): stringabstract contains(parent: FsTarget, child: FsTarget): booleanabstract stat(target: FsTarget, signal?: AbortSignal): Promise<FsInfo | undefined>abstract lstat(path: string, opts?: { cwd?: string }, signal?: AbortSignal): Promise<FsPathInfo | undefined>abstract readText(target: FsTarget, signal?: AbortSignal): Promise<string>abstract streamText(target: FsTarget, signal?: AbortSignal): Promise<AsyncIterable<string>>abstract readBytes(target: FsTarget, signal: AbortSignal | undefined, maxBytes: number): Promise<Uint8Array>abstract listDir(target: FsTarget, signal?: AbortSignal): Promise<FsDirEntry[]>abstract writeText( target: FsTarget, content: string, expected?: FsWriteIntent, signal?: AbortSignal, sandboxPolicy?: SandboxExecutionPolicy, ): Promise<FsWriteOutcome>abstract editText( target: FsTarget, edit: FsEditRequest, expected?: { version: FsVersion }, signal?: AbortSignal, sandboxPolicy?: SandboxExecutionPolicy, ): Promise<FsEditOutcome> | packages/fs/fs/src/index.ts:86 |
goalsGoalService | concrete | get(agent: Agent): GoalView | undefineddisarm(agent: Agent): GoalView | undefinedcreate(agent: Agent, request: CreateGoalRequest): GoalView@Remote('edit') edit(agent: Agent, ref: GoalRef, request: EditGoalRequest): GoalView@Remote('pause') pause(agent: Agent, ref: GoalRef): GoalView@Remote('resume') resume(agent: Agent, ref: GoalRef): GoalView@Remote('complete') complete(agent: Agent, ref: GoalRef): GoalViewblock(agent: Agent, ref: GoalRef, reason: GoalBlockReason): GoalView@Remote('clear') clear(agent: Agent, ref: GoalRef): GoalRef@Remote('create') remoteExportCreate(agent: Agent, request: CreateGoalRequest): CreateGoalResult | packages/goal/goal/src/index.ts:183 |
invariantsInvariantRegistry | concrete | register(packageName: string, installer: InvariantInstaller): () => void | packages/runtime-diagnostics/invariants/src/index.ts:94 |
jobsJobRegistry | abstract | abstract start(spec: JobStart): JobIdabstract list(caller?: Agent): JobSnapshot[]abstract get(id: JobId, caller?: Agent): JobSnapshotabstract read(id: JobId, caller?: Agent): JobReadabstract kill(id: JobId, caller?: Agent, reason?: string): 'requested' | 'already-finished'abstract wait(id: JobId, timeoutMs: number, caller?: Agent, signal?: AbortSignal): Promise<JobSnapshot>abstract onJobDone(listener: JobDoneListener): () => voidabstract onJobsChanged(listener: JobsChangedListener): () => voidabstract attachController(name: string): () => void | packages/jobs/jobs/src/index.ts:62 |
llmLlmRuntime | concrete | registerAdapter(providers: string[], adapter: LlmAdapter): AdapterRegistrationHandlelistProviders(): LlmProviderInfo[]registerConfigurableProviders(entries: readonly LlmConfigurableProvider[]): DirectoryRegistrationHandlelistConfigurableProviders(): LlmConfigurableProvider[]registerModelDiscovery( settingsNs: string, discover: (request: LlmModelDiscoveryRequest) => Promise<readonly LlmDiscoveredModel[]>, ): () => voidasync discoverModels( settingsNs: string, request: LlmModelDiscoveryRequest, ): Promise<LlmDiscoveredModel[]>providerRetryPolicy(provider: string): ResolvedRetryPolicyasync listModels(provider: string): Promise<LlmModelInfo[]>async resolveModelInfo( provider: string, model: string, signal?: AbortSignal, ): Promise<LlmResolvedModelInfo>async resolveCallConfig(config: LlmCallConfig, signal?: AbortSignal): Promise<LlmCallConfig>async prepareCall(config: LlmCallConfig, signal?: AbortSignal): Promise<PreparedLlmCall>stream(options: GenerateOptions): AsyncIterable<StreamChunk> | packages/llm/llm/src/index.ts:284 |
lspLspService | concrete | registerProvider(provider: LspProvider): () => voidquery(request: LspQueryRequest, signal?: AbortSignal): Promise<LspQueryResult> | packages/lsp/lsp/src/types.ts:113 |
messageFeedbackMessageFeedbackService | concrete | @Remote('list') async list(request: MessageFeedbackListRequest): Promise<MessageFeedbackListResult>@Remote('put') put(request: MessageFeedbackPutRequest): Promise<MessageFeedbackPutResult>@Remote('delete') delete(request: MessageFeedbackDeleteRequest): Promise<MessageFeedbackDeleteResult> | packages/feedback/message-feedback/src/index.ts:150 |
permissionPresetsPermissionPresetService | concrete | current(events: readonly SessionEvent[]): stringselectFor(state: KnobState): PermissionSelectresolve(name: string): PresetSpecoptionOf(name: string): PresetOptionset(session: Session, name: string): void | packages/interaction/permission-presets/src/index.ts:159 |
planModePlanModeController | concrete | get(agent: Agent): { active: boolean; pending?: boolean }set(agent: Agent, active: boolean): 'committed' | 'queued' | 'cancelled' | 'noop' | packages/plan/plan-mode/src/index.ts:184 |
sandboxSandboxProvider | abstract | abstract confine(argv: readonly string[], policy: SandboxPolicy): ConfinedArgv | packages/sandbox/sandbox/src/index.ts:158 |
sandboxPolicySandboxPolicyService | concrete | readonly defaultMode: SandboxModereadonly workspaceRoot: stringresolve(request: SandboxPolicyRequest = {}): SandboxExecutionPolicyoverrideOf(session: Session): SandboxMode | undefined | packages/sandbox/sandbox-policy/src/index.ts:91 |
sessionPersistenceSessionPersistence | abstract | abstract locate(meta: SessionHeader): SessionLocation | undefinedabstract readonly supportsRawArtifacts: booleanreadRaw(_id: SessionId, signal?: AbortSignal): Promise<SessionRawArtifact | undefined>abstract create(meta: SessionHeader): Promise<void>abstract append(id: SessionId, events: readonly SessionEvent[]): Promise<void>async prepare(id: SessionId, signal?: AbortSignal): Promise<SessionPreparation>abstract load(id: SessionId): Promise<SessionInspection>abstract inspect(id: SessionId, signal?: AbortSignal): Promise<SessionInspection>abstract readFrom(id: SessionId, fromSeq: number, signal?: AbortSignal): Promise<{ meta: SessionHeader; events: SessionEvent[] }>abstract list(signal?: AbortSignal): Promise<SessionHeader[]>abstract listSnapshots(signal?: AbortSignal): Promise<SessionPersistenceSnapshot[]> | packages/session/session-persistence/src/index.ts:84 |
sessionProjectionCacheSessionProjectionCache | concrete | cachedSnapshot(meta: SessionHeader): ProjectionSnapshot | undefinedasync write(session: Session): Promise<void>async coldSnapshot(id: SessionId, signal?: AbortSignal): Promise<ProjectionSnapshot> | packages/session/session-projection-cache/src/index.ts:71 |
sessionProjectionsSessionProjectionRegistry | concrete | register<K extends keyof SessionProjectionMap, S>(definition: ProjectionDefinition<K, S>): () => voidonChanged(listener: ProjectionChangeListener): () => voidsnapshot(session: Session): ProjectionSnapshotcheckpoint(session: Session): ProjectionCheckpointrestoreFloor(checkpoint: ProjectionCheckpoint): number | undefinedviewCheckpoint(checkpoint: ProjectionCheckpoint): Partial<SessionProjectionMap>restore(checkpoint: ProjectionCheckpoint, events: readonly SessionEvent[], baseSeq: number): { snapshot: ProjectionSnapshot; checkpoint: ProjectionCheckpoint } | packages/session/session-projection/src/index.ts:171 |
sessionQuerySessionQueryEngine | abstract | abstract searchSessions( request: SessionSearchRequest, exec?: SessionSearchExecContext, ): Promise<SessionSearchPage<SessionSearchHit>>abstract searchEvents( request: SessionEventSearchRequest, exec?: SessionSearchExecContext, ): Promise<SessionEventSearchPage>listSessions(signal?: AbortSignal): Promise<SessionRecord[]>async readSession(sessionId: SessionId): Promise<SessionLogSnapshot>async filterSessions( filters: readonly SessionResultFilter[], signal?: AbortSignal, ): Promise<SessionRecord[]>async readTitle( sessionId: SessionId, signal?: AbortSignal, ): Promise<SessionTitleSnapshot | undefined>async readTitleSnapshot( sessionId: SessionId, signal?: AbortSignal, ): Promise<SessionTitleObservation>async readTitleSnapshots( sessionIds: readonly SessionId[], signal?: AbortSignal, ): Promise<SessionTitleObservationResult[]>async listEvents(sessionId: SessionId): Promise<SessionEventRecord[]>async filterEvents( sessionId: SessionId, filters: readonly SessionEventResultFilter[], ): Promise<SessionEventSearchDocument[]>async readSurface(sessionId: SessionId): Promise<SessionSurfaceSnapshot>async traceSession(sessionId: SessionId, signal?: AbortSignal): Promise<SessionLineageTrace>async traceEvent(request: SessionEventTraceRequest, signal?: AbortSignal): Promise<SessionEventTraceObservation>async readEvent(request: SessionEventReadRequest, signal?: AbortSignal): Promise<SessionEventWindow> | packages/session-query/session-query/src/index.ts:81 |
sessionReferenceResolverSessionReferenceResolver | concrete | async listCandidates( agent: Agent, query: string = '', limit: number = this.config.candidateLimit, signal?: AbortSignal, ): Promise<SessionReferenceCandidate[]>async prepare( agent: Agent, content: ContentBlock[], references: SessionReferenceInput[], signal?: AbortSignal, ): Promise<PreparedReferencedMessage> | packages/context/session-reference/src/index.ts:70 |
sessionsSessionStore | concrete | create(id?: SessionId, options?: CreateSessionOptions): Sessionprepare(id?: SessionId, options?: PrepareSessionOptions): Sessionenter(session: Session): () => voidannounce(session: Session): voidasync flush(session: Session): Promise<boolean>get(id: SessionId): Session | undefinedlist(): Session[]fork(source: SessionForkSource, boundary?: number, childSessionId?: SessionId): Session | packages/core/session/src/index.ts:792 |
sessionTelemetrySessionTelemetryBackend | abstract | abstract readonly sharing: SessionTelemetrySharingStatusabstract emit(record: SessionTelemetryRecord): voidflush?(): voidabstract shutdown(): Promise<void> | packages/session/session-telemetry/src/index.ts:148 |
sessionTitleSessionTitleService | concrete | get(session: Session): SessionTitleSnapshot | undefinedrename(session: Session, title: string): SessionTitleSnapshotasync refresh(session: Session, signal?: AbortSignal): Promise<SessionTitleSnapshot | undefined>register(provider: SessionTitleProvider): () => Promise<void> | packages/session/session-title/src/index.ts:261 |
settingsSettingsProvider | abstract | abstract readonly writable: booleanprepareDocument(): Promise<string | undefined>register<T>(ns: SettingsNamespace, schema: z<T>, options?: SettingsRegisterOptions<T>): SettingsScope<T>describe(options?: SettingsDescribeOptions): SettingsDescriptor[]get(ns: SettingsNamespace): unknownasync update(ns: SettingsNamespace, patch: object, expectedRevision?: number): Promise<void>async replace(ns: SettingsNamespace, section: object, expectedRevision?: number): Promise<void>async mutate(ns: SettingsNamespace, ops: readonly SettingsPathOp[], expectedRevision?: number): Promise<void> | packages/settings/settings/src/index.ts:350 |
shellShellExecutor | abstract | abstract resolve(request: ShellExecRequest): ShellExecSpecabstract run(spec: ShellExecSpec): Promise<ShellRunResult>abstract start(spec: ShellExecSpec): ShellProcess | packages/shell/shell/src/index.ts:65 |
shellEnvShellEnvRegistry | concrete | register(contributor: BashEnvContributor): () => voidcollect(execution: ToolExecution): DshEnvironmentlist(): BashEnvVariableInfo[] | packages/shell/shell-env/src/index.ts:89 |
skillsSkillRegistry | concrete | registerProvider(create: (control: SkillProviderControl) => SkillProvider): () => voidregister(skill: SkillRegistration): () => voidasync list(options: SkillViewOptions = {}): Promise<SkillSummary[]>async snapshot(options: SkillViewOptions = {}): Promise<SkillCatalogSnapshot>async get(name: string, options: SkillViewOptions = {}): Promise<SkillDefinition | undefined> | packages/skill/skill/src/index.ts:357 |
spillStoreSpillStore | abstract | abstract saveText(input: SaveTextSpill): Promise<SpillRef> | packages/spill/spill/src/index.ts:45 |
storageStorage | concrete | readonly backend: BackendRegistry = new BackendRegistry()mount<K extends keyof StorageForms>(form: K, facility: StorageForms[K]): () => voidform<K extends keyof StorageForms>(form: K): StorageForms[K] | packages/storage/storage/src/index.ts:47 |
storageDomainDomainFacility | concrete | async open<S extends DomainSpec>(spec: S): Promise<Domain<S>>get(name: string): DomainImpl | undefinedasync closeAll(): Promise<void> | packages/storage/storage-domain/src/index.ts:69 |
subagentsSubagentRuntime | concrete | async startContinuable(spec: ContinuableStartSpec): Promise<ContinuableStart>async followup( parent: Agent, childId: SessionId, content: ContentBlock[], options: SubagentFollowupOptions, ): Promise<MessageId>interrupt(targetSessionId: SessionId, authority: SubagentInterruptAuthority): voidasync reportFrom( child: Agent, content: ContentBlock[], options: SubagentReportOptions, ): Promise<MessageId>registerContinuableSetup(contribution: ContinuableSetupContribution): () => voidasync drainContinuableDescendants(parents: readonly Agent[]): Promise<void>listChildren(parentSessionId: SessionId, signal?: AbortSignal): Promise<SubagentListEntry[]>listDescendants(rootSessionId: SessionId, signal?: AbortSignal): Promise<SubagentDescendantListEntry[]>registerProvider(provider: SubagentProvider): () => voidgetProvider(name: string): SubagentProvider | undefinedlist(): string[]async start(name: string, request: SubagentStartRequest): Promise<SubagentRun> | packages/subagent/subagent/src/index.ts:171 |
subprocessSubprocessRuntime | abstract | abstract resolveExecutable( command: string, env?: Readonly<Record<string, string>>, signal?: AbortSignal, ): Promise<string>abstract spawn(spec: SubprocessSpawnSpec): SubprocessHandleabstract spawnTerminal(spec: SubprocessTerminalSpawnSpec): Promise<SubprocessTerminalHandle> | packages/subprocess/subprocess/src/index.ts:102 |
systemPromptSystemPrompt | concrete | section(section: PromptSection): () => voidcontext(context: PromptContext): () => voidsuppressRuntimeContext(): () => voidtools(provider: (context: AssembleContext) => ToolProviderResult): () => voidvariable(name: string, provider: (context: AssembleContext) => string | undefined): () => voidasync assemble(context: AssembleContext = {}): Promise<PromptAssembly> | packages/core/system-prompt/src/index.ts:338 |
terminalsTerminalSessionService | concrete | registerBackend(backend: TerminalBackend): () => voidlistBackends(): string[]async spawn(owner: Agent, request: TerminalSpawnRequest, signal?: AbortSignal): Promise<TerminalSpawnResult>hasOwnerActivity(owner: Agent): booleanstartSend(owner: Agent, id: TerminalSessionId, request: TerminalSendRequest): TerminalSendOperationread(owner: Agent, id: TerminalSessionId, request: TerminalReadRequest = {}): TerminalReadResultsignal(owner: Agent, id: TerminalSessionId, signal: TerminalSignal): Promise<TerminalSignalResult>async kill(owner: Agent, id: TerminalSessionId, reason: string = 'model request'): Promise<boolean>list(owner: Agent): TerminalSessionSnapshot[] | packages/terminal/terminal/src/index.ts:105 |
tokenMeterTokenMeter | concrete | measure(session: Session, requestHeader?: EpochHeader): TokenMeasurementestimateMessage(message: Message): number | packages/llm/token-meter/src/index.ts:74 |
toolResultPrunerToolResultPruner | concrete | readonly config: ResolvedConfigmeasureContent(blocks: readonly ContentBlock[]): numberpruneContent(blocks: readonly ContentBlock[]): ContentBlock[] | nullpruneSession(session: Session): PruneResult | packages/compaction/compaction-tool-result-pruner/src/index.ts:44 |
toolsToolRuntime | concrete | presentAs(mode: ToolPresentationMode): () => voidregister(definition: ToolDefinition): () => voidrestrict(filter: ToolRestriction): () => voidguard(guard: ToolGuard): () => voidget(name: string, scope?: ScopeKey): ToolDefinition | undefinedschemas(scope?: ScopeKey): ToolSchema[]executionMode(exec: ToolExecutionInput): ToolExecutionModeasync execute(exec: ToolExecutionInput): Promise<ToolExecutionResult> | packages/core/tools/src/index.ts:787 |
typertTypertRegistry | concrete | register(contribution: TypertContribution): TypertDisposerget(key: string): TypertSchemaRecord | undefinedresolve(key: string): TypertSchemaRecordlist(filter: TypertSchemaFilter = {}): TypertSchemaRecord[]getPackage(packageName: string, face: TypertFace = 'host'): TypertPackageRecord | undefinedlistPackages(filter: TypertPackageFilter = {}): TypertPackageRecord[]toJSONSchema(key: string, params?: z.core.ToJSONSchemaParams): z.core.JSONSchema.BaseSchema | packages/typert/registry/src/service.ts:446 |
typertGatewayTypertGatewayService | concrete | async invoke(request: InvokeRemoteRequest): Promise<unknown> | packages/api/gateway/src/index.ts:90 |
userQuestionsUserQuestionService | concrete | registerProvider(provider: UserQuestionProvider): () => voidasync ask(request: AskUserQuestionRequest): Promise<AskUserQuestionAnswer> | packages/interaction/user-questions/src/index.ts:51 |
webWebRuntime | concrete | registerSearchProvider(provider: WebSearchProvider): () => voidregisterFetchProvider(provider: WebFetchProvider): () => voidasync search(request: WebSearchRequest, signal?: AbortSignal): Promise<WebSearchResult>async fetch(request: WebFetchRequest, signal?: AbortSignal): Promise<WebFetchResult> | packages/web/web/src/index.ts:74 |
webServerWebServer | concrete | register(route: WebRoute): () => voidregisterUpgrade(route: WebUpgradeRoute): () => voidregisterFallback(handler: WebRoute['handler']): () => voidtapIndex(transform: (html: string) => string): () => voidapplyIndexTaps(html: string): string | packages/host/webserver/src/index.ts:59 |
workflowEngineWorkflowEngine | abstract | abstract start(request: WorkflowStartRequest): WorkflowRun | packages/workflow/workflow/src/index.ts:157 |
workspaceRegistryWorkspaceRegistry | concrete | async create(path: string, title?: string): Promise<Workspace>get(id: WorkspaceId): Workspace | undefinedlist(): Workspace[]delete(id: WorkspaceId): Promise<boolean>insertBefore(id: WorkspaceId, beforeId?: WorkspaceId): Promise<readonly WorkspaceId[]>archiveSession(sessionId: SessionId): Promise<void>async resolveByPath(path: string): Promise<Workspace | undefined> | packages/workspace/workspace/src/index.ts:92 |
9. Limits and reproduction
These indexes establish deterministic navigation within named structured universes. They do not establish complete repository symbol coverage, complete file coverage, downstream-plugin event coverage, claim coverage, or proof quality. Regeneration fails closed on baseline drift, bilingual citation drift, unknown IDs, invalid source ranges, duplicate identities, or leaked self-citations.
node scripts/generate-ch35.mjs --analysis-root . --upstream-root ../deepseek-harness --output-root .- Pinned baseline and every catalog path/range verified.
- Bilingual citation sequences compared before counting.
- Chapter 35 excluded and generated fragments contain no citation tags.
My Learning Notes
Autosaved only in this browser. Nothing is uploaded or committed. Export Markdown whenever you want to keep a copy.