- Rewrote the remaining em dashes outside docs/reviews/ (preserved as historical record, matching the alktty precedent): tests/ (313), fuzz/ (34 plus one shell comment), tasks/ (671 plus 12 kept in fences), docs/research + sdd_process + plans (525 plus 25 in fences), docs/architecture/overview.md fence labels (13), README, CHANGELOG, AGENTS.md, fuzz/README.md (176), and the .opencode/agents prompts (110) - Rewrote fenced content too: ASCII tree and module-map label separators, Rust snippet comments, and template placeholders; wire data, JSON/BAST examples, and transcripts survive verbatim - Rewrote 6 assert/expect message literals in tests/ and 2 format strings in fuzz/shared/src; no test data changed - Added Project Convention 18: no em dashes in prose (doc comments, markdown including docs/ and tasks/, agent prompts, commit messages); fence content rule, en-dash clause rule, and the no-spaced-hyphen prohibition follow alktty's convention 15 Follows6b20924(src doc comments) andcd0afe0(docs/architecture). Verification: cargo test (141 pass); cargo clippy --all-targets -D warnings; cargo fmt --check; cargo doc --no-deps; wasm check and clippy for wasm32-unknown-unknown with -D warnings; em dash grep over the repo returns matches only in docs/reviews/
4.9 KiB
id, name, status, depends_on, scope, risk, impact, level, tags
| id | name | status | depends_on | scope | risk | impact | level | tags | |||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| tunnels/corrmiss-doc-sync | Doc sync: review 003 status + plan 003 checkboxes + plan-level AC close-out (W1) | completed |
|
narrow | trivial | component | implementation |
|
Description
Close out W1's remaining doc bookkeeping (the plan-level AC's "review 003 status updated to resolved (W1 absorbed; W2/W3 pointed)" clause): resolve the review's doc trail once the ADR + API + tests + review checkpoint are landed.
docs/reviews/003-…alkssh-input.md: update the Status block, resolved for W1 (this repo absorbed the ask via the ADR + the establisher variant); W2/W3 pointed at the sibling repos (docs/plans/003-correlation-miss-resolve.mdis the pointer). Match the status-block format the other reviews use.docs/plans/003-correlation-miss-resolve.md: tick the W1 share of §Acceptance criteria (the first checkbox's clauses that are now true). Leave the W2/W3 checkboxes and the plan-level "W2: …" / "W3: …" boxes UNTICKED, since they are sibling-repo sessions, unticked until those repos land.docs/plans/003-…status header: planned → W1 landed (keep the file; it records the tri-vocabulary decision's ground).- If any doc comment referencing the miss is stale after the API task
(a
grepforcorrelation miss/handler_error-class acrosssrc/,docs/architecture/), align it. Convention: stale TODOs/comments pointing at superseded designs get removed, not annotated.
Acceptance Criteria
- Review 003's Status block reads resolved-for-W1 with the W2/W3 pointer
- Plan 003's W1 acceptance clauses ticked; W2/W3 left visibly open
- A stale-comment sweep across
src/+docs/architecture/ran clean (or the stragglers aligned) cargo doc --no-depsclean (doc edits touch lib.rs-adjacent comments only if the sweep found any)
References
- docs/reviews/003-correlation-miss-arrival-class-alkssh-input.md (the status block)
- docs/plans/003-correlation-miss-resolve.md §Acceptance criteria (the plan-level boxes)
- tasks/tunnels/review-002-doc-sync.md (the doc-sync precedent, the same job shape for review 002)
Notes
The sweep grep (correlation miss / correlation-miss /
handler_error-class across src/ + docs/architecture/) found the
two-shape posture docs already synced by the earlier trio (the
make_forwarded_op_handler doc, both registration docs, the gate
establisher doc, wire.md §The Forwarded Op's registration paragraph,
the ADR amendment itself). Three STALE spots found and aligned:
src/producer.rs:838-854(the bind-first accept loop's failed-open arm): the in-comment class-distinction still read "correlation miss → handler_error-class", the exact prose review 003 flagged. Reworded: a stale/missing token is now the typedunknown_resourceopen_failed under the serving side's establisher variant (ADR-008 Amendment 2); other establisher failures ride handler_error-class. (Deliberately a comment-update, not removal, since the class distinctions are the arm's working notes; convention 1's removal rule is for pointers at superseded designs, and this one now points at the current one.)wire.md§The Forwarded Op "Reply / errors": "a producer-side accept correlation miss is the typedchannel:open_failed/handler_error-class error", which was pre-amendment attribution. Now records the amendment posture: the miss is the typedunknown_resourceopen_failed (establisher variant, recommended); under the base shape an in-session miss produces no call error: the assembly-side post-open decline,correlation-missatdebug.producer.md§The Forwarded Op: "(ADR-008 §3) … no establisher, the data plane starts immediately" now carries the two-shape posture with the Amendment 2 pointer; the correlate step notes the gate rides the establisher with the handler-side correlation as the residual fallback.last_updatedheader bumped.
Summary
Review 003's Status block now reads resolved-for-W1: the ask absorbed
via plan 003 §Decisions 1–4 + ADR-008 Amendment 2 (typed
unknown_resource open_failed at the gate; correlation-miss at
debug for the residual decline; unknown_resource reused, wire
vocabulary unextended), with W2 (alkssh) / W3 (alksocks) pointed at
the plan's §W2/§W3 and recorded as open. Plan 003's status header is
"W1 landed; W2/W3 open (sibling repos)" and only the W1 plan-level AC
box is ticked, and W2/W3 plus the family-coherence box stay untouched
until those repos land. The stale-comment sweep aligned three
stragglers (the accept-loop arm's comment, wire.md's failure line,
producer.md's forwarded-op section); everything else already carried
the two-shape posture. Verification: cargo test (14 suites, 0
failures), clippy --all-targets -- -D warnings clean,
cargo fmt --check clean, cargo doc --no-deps clean.