docs: purge chain-of-thought leakage from prose

Delete design-session citations (decision/audit/plan ordinals, stack
positions), change narration, review choreography, and reviewer-addressed
justification from comments, JSDoc, docs, READMEs, Agent Notes, tests, and
generator templates; restate every affected fact as current-state contract
prose. Fix generated docs at their sources and regenerate the catalogs and
cordis-surface regions; re-paste type-equiv blocks; update every bilingual
counterpart and re-record the pairs. Record the citation rule in the
committed-artifact-citations Agent Note.
This commit is contained in:
Tianyi Cui
2026-08-09 15:09:19 +08:00
parent 793f6f55df
commit 25dcd7293c
763 changed files with 2705 additions and 1710 deletions
@@ -47,7 +47,8 @@ export class SlashController {
*/
readonly launcher: SnapshotStore<string | null> = createSnapshotStore<string | null>(null)
/**
* Aggregated hot reference lexicon, grouped by trigger (decision 21):
* Aggregated hot reference lexicon, grouped by trigger (plain-text-reference decision;
* see .agents/notes/implemented/architecture/2026-07-25-web-input-machine-and-slash-pipeline.md):
* sources implementing the lexicon hook are polled with the session
* projection; undefined answers (roll not hot yet) are skipped; multiple
* sources on one trigger concatenate in registration order. A snapshot
@@ -225,7 +226,7 @@ export class SlashController {
/**
* Serialize one reference occurrence to its model form via the owning
* source's codec (design §9.1 prompt serialization: registry → explicit
* source's codec (prompt serialization: registry → explicit
* call → await). Owner missing or codec-less rejects — the submit attempt
* blocks instead of silently downgrading to the clipboard text.
* @param source - owning source name.
+1 -1
View File
@@ -4,7 +4,7 @@
* entry (declaring is claiming: anchor, children declaration, lifecycle),
* but the SlotMap type merge lives here: the owner package depends on this
* one, so the dependency direction admits no reverse type import, and a
* type-erased registration is ruled out (PR #632 review). The owner's
* type-erased registration is ruled out. The owner's
* program picks this merge up transitively through its ui-slash imports.
*/
// Type-only edge: the SlotMap augmentation below merges into this package's interface.
@@ -1,8 +1,8 @@
/**
* Frozen pure-core contract (design v4, plan §1.2): trigger detection and
* menu reduction, zero React / DOM / cordis. Types only — T2 implements
* these signatures in sibling modules (annotate implementations with these
* aliases); the service shell (T4) wires them to ctx.
* Frozen pure-core contract: trigger detection and
* menu reduction, zero React / DOM / cordis. Types only — implementations
* live in sibling modules annotated with these
* aliases; the service shell wires them to ctx.
*/
import type { SlashCandidate, TokenSpan, TriggerChar, TriggerGuard, TriggerPosition } from '../types.ts'
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* Trigger detection pure core (design §5.1, plan §1.2). Scans backward from
* Trigger detection pure core. Scans backward from
* the caret for a live trigger char under the guard tier and applies the
* word-boundary rules. Zero React / DOM / cordis.
*/
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* Menu reduction pure core (design §5.1, plan §1.2). One group per source;
* Menu reduction pure core. One group per source;
* generation-gated settlement; empty ready groups auto-close. Zero React /
* DOM / cordis. Stale or no-op events return the same state reference so
* store subscribers skip re-renders.
+7 -5
View File
@@ -80,7 +80,9 @@ export interface SubmitOutcome {
/**
* Unified pick return. `undefined` = miss → default sink; `'handled'` = the
* source dealt with it internally (e.g. opened its popup shell). The `text`
* arm is the plain-text reference path (decision 21): the token span is
* arm is the plain-text reference path (decision recorded in
* .agents/notes/implemented/architecture/2026-07-25-web-input-machine-and-slash-pipeline.md):
* the token span is
* replaced with literal text — no occurrence identity, no placeholder; any
* chip visual is derived downstream by scanning the draft against the
* source lexicons.
@@ -159,8 +161,8 @@ export interface SlashSource {
*/
warm?(session: ClientSessionContext): void
/**
* Synchronous hot-snapshot name roll for plain-text reference decoration
* (decision 21). Implementing IS the participation claim: the render side
* Synchronous hot-snapshot name roll for plain-text reference decoration.
* Implementing IS the participation claim: the render side
* scans the draft for `<trigger><name>` tokens and decorates exact matches.
* `undefined` = backing data not warm yet — no decoration, never a fetch
* (the render path must stay synchronous and side-effect free).
@@ -211,7 +213,7 @@ export interface ConsumeTokenRequest {
| { readonly kind: 'bare-token'; readonly token: string }
}
/** Request payload of the scoped insert-text input event (decision 21). */
/** Request payload of the scoped insert-text input event (the plain-text reference path). */
export interface InsertTextRequest {
/** Literal replacement for the trigger token span (e.g. `/name `). */
readonly text: string
@@ -245,7 +247,7 @@ declare module 'cordis' {
'slash/input-consume-token'(request: ConsumeTokenRequest): true | undefined
/**
* Replaces the trigger token span with literal text — the plain-text
* reference path (decision 21). Same carrier routing and applied-truth
* reference path. Same carrier routing and applied-truth
* contract; the draft gains ordinary characters, no occurrence entry.
* @param request - Replacement text and menu-time span CAS.
* @mode bail