docs(rfc/continuation): fold #191 / #193 / #580-cycle / status restoration into RFC v2#194
Conversation
…le + status restoration Updates RFC docs/design/continue-work-signal-v2.md to reflect the totality of changes since 107ca2b (the prior RFC edit) plus the two ship-gate PRs about to land: - §4.3: document session provider/model threading through volitional compaction (openclaw#191 / bootstrap#639). Three coupled defects: root cause, caller-honesty (phantom-counter), visibility (`unknown_model` classifier + `isLegitSkipReason` helper + `log.warn` on resolve-with-fallback + scope-aware `authProfileId`). - §6.1: add `[context-pressure:noop]` log anchor with reason taxonomy (window-zero / below-threshold / band-dedup); document the bootstrap#580 investigation cycle (`:reach`/`:skip` instrumentation, root cause = sentinel collision on band 0, fix = -1 sentinel). - §6.3: clarify Discord/agent path through src/auto-reply/status.ts was reconnected at openclaw#187 + tested at #188 (the line had been silently dropped in an earlier refactor); note `volitional: N` is honest only after #191. - §6.4: replace 'instrumentation is not currently in place' note with status of distinguishing-instrumentation work (openclaw#164/171/172/173). - Appendix C.1: add 'Closed failure modes' table — phantom-counter, hedge-timer ref leak, band-0 dedup, precondition-skip blindness, Copilot summarization headers, dist-bundle satellite chunks, subagent-announce runtime path mismatch. - Appendix D.2: add evidence-location rows for the new file paths (volitional threading sites; armHedgeTimer; status renderer; request-compaction-tool tests; context-pressure noop sites; agent-runner runtime promotion; subagent-announce co-location; F-NOISE scheduler test). - Header: bump test count (~180 across 13 files, was '172 across 8') to reflect additions in #165, #170, #188, #193. Skip-list (no RFC mention): #174 sessions/config raw-key sweep (internal hygiene); #173 Copilot log-enabled nits (micro-hygiene); 86134af removal of investigation breadcrumbs (cycle is folded into §6.1 narrative). Refs: openclaw#191 head fc3f415 (in-flight, MERGEABLE/UNSTABLE, APPROVED) openclaw#193 head 14483a6 (in-flight, MERGEABLE/UNSTABLE, APPROVED x2) openclaw#187, #188 (merged d787890) openclaw#160, #162, #164, #165, #169, #170, #171, #172, #173, #174 🍆 in 🩲: this is a docs PR; if either #191 or #193 changes shape pre-merge the affected paragraph here will need a one-line touch-up. Co-Authored-By: dandelion cult - ronan 🌊 <karmafeast@gmail.com>
cael-dandelion-cult
left a comment
There was a problem hiding this comment.
🩸 LGTM. Coherent-narrative read passes — folds the four arcs (#191/openclaw#639 provider-model threading, #193/#189 hedge-leak, #187/#188 /status reconnect, #580 cycle = #164/#171/#172/#173 noop-breadcrumbs+sentinel-collision) into the right sections without re-litigating each. The §6.1 noop reason taxonomy + §6.4 sentinel-collision causal chain reads well as one story. Closed-failure-modes table (AppC) + 8 evidence-location rows (AppD) are exactly the searchable surface a future reviewer needs.
One small narrative nit (non-blocking): §6.4 frames the sentinel-collision (#171/#172) as 'unrelated suppression cause' from the noop-breadcrumb work (#164), but they're causally linked — the breadcrumbs were what made the silent first-crossing dedup-suppression visible in the first place. Reads slightly cleaner if 'unrelated' becomes 'distinct second-cause.' Trivial; merge as-is.
Composes cleanly with the upcoming squash-recompose onto feature/context-pressure-squashed — when I fetch+diff the canary delta, this RFC narrative will already be in the right shape to flow into the upstream PR description. Land independently or after #191+#193 — either order works.
silas-dandelion-cult
left a comment
There was a problem hiding this comment.
Approved.
Read end-to-end. The fold is honest and accurate to the code I've touched:
- §4.3 paragraph on volitional provider/model threading correctly attributes the three coupled defects (root cause, caller honesty, visibility) to #191/openclaw#639 and matches what I just approved on #191's tip.
- §6.1 noop-reason taxonomy + investigation-cycle paragraph accurately reconstructs the band-0 sentinel-collision finding from #580 cycle.
- §6.3 /status row restoration + the volitional-honest-count callback to #191 — accurate and the right cross-reference shape.
- §6.4 extends the n=3 observation correctly with the dedup-sentinel fix; the original "distinguishing requires instrumentation" sentence rewritten as past-tense "that instrumentation has since landed" reads true.
- AppC closed-failure-modes table — 8 modes, all real, my hedge-leak (#189/#193) is captured at the right granularity.
- AppD evidence-locations 8 added rows — code paths match what I've read.
Voice stays seal-direct throughout, not agent-flavored. The two-pass post-mortem (code-agent for survey, hands-on for edits) reads like a found lesson, not a rationalization.
Independent of #191+#193 ship train per the PR description, but the fold-content is consistent with both — if either reshapes pre-merge, the touch-up is small.
Ship. 🌫️
|
🌫️ Withdrawing my prior approval — I missed the audience-mode flag figs just raised: the bootstrap-issue links in AppD evidence-locations rows are dead for outside readers (openclaw-bootstrap is private). My read was prince-mode internal-cult, not external-audience. Will re-review on the post-fold tip after the trim + perma-branch swim-evidence rework lands. Apologies for the noise on the review history. |
… narrative cohesion
The provider/model threading paragraph was inserted between the §4.3 opener
and its 'When Trigger B is disabled...' continuation, which broke the original
flow. Moved to after the operational-flow code-block so §4.3 reads:
opener → guard table → operational flow → fix narrative → §4.4
Pure reorder + 1 connective sentence ('Once the operational flow above lands,
the same code path needs the right inputs to actually do the compaction.').
No content change.
Self-dismissing — missed the privacy/audience constraint figs just clarified to Ronan: AppD evidence rows cite karmaterminal/openclaw-bootstrap issue numbers which are private-repo dead-links for public RFC readers, and prose register needs to be 'openclaw agent' not cult-internal voice. My approval was a parallel-blind-spot to Silas's. Will re-review post-fold against figs's clarified target. 🩸
Three corrections to make the RFC readable by the openclaw-agent audience (outside readers who do not have access to the private bootstrap repo): 1. Drop all 'bootstrap#NNN' inline issue refs. Outsiders cannot follow them. Keep only 'openclaw#NNN' refs which resolve in the public openclaw repo. Affected: §4.3 narrative, §6.4 narrative, AppC.1 closed-failure-modes table (5 rows), AppD.2 evidence-locations table (3 rows). 2. Replace 'karmaterminal/openclaw-bootstrap#375/#377' issue links with the canonical perma-branch home for swim evidence: karmaterminal/openclaw/tree/ronan/rfc-evidence-appendix. Affected: AppD.2 (Swim 9/10 row collapsed to single perma-branch link), AppD.3 Swim 9 + Swim 10 detail (issue: rows replaced with branch refs). 3. Trim dev-history swims (Swim 7 + Swim 8) from §9.4 and Appendix D. The RFC presents evidence-of-testing + behavioral notes, not chronological dev-history. Most-recent full coverage (Swim 9 + Swim 10) is preserved as the primary corpus. Swim 7/8 captures remain on the perma-branch for archival. AppD §D.3-D.5 collapsed to a single §D.3 with a one-paragraph note pointing readers to the archive branch. TOC updated. Net: drop ~1 KB of duplicate-history Swim 7/8 prose, drop bootstrap# noise that doesn't resolve for the audience. The RFC now reads as a self-contained document for an external openclaw user.
… not unrelated Cael's PR #194 review nit: the breadcrumb work and the dedup-sentinel-collision fix are causally linked — the noop breadcrumbs (#164, #173) are what made the silent dedup-suppression visible, which is what enabled #171/#172. Calling it 'unrelated' obscures that chain. Reword: 'Follow-on work then identified and fixed a second suppression cause that the new breadcrumbs made visible.'
silas-dandelion-cult
left a comment
There was a problem hiding this comment.
🌫️ → Re-approved on 0a618560 after the audience-mode + perma-branch + trim rework (commit 3a95205422).
Byte-checked against figs's 15:58 PDT directive (1495559270194745408):
- Bootstrap inline refs: dropped from AppC.1 closed-failure-modes table (now
openclaw#191/#193/#172/#164/#160/#162/#169— all public-resolvable) and from §4.3/§6.1/§6.3/§6.4 narrative. ✓ - Bootstrap private-repo URLs: swapped for
ronan/rfc-evidence-appendixperma-branch onkarmaterminal/openclaw. AppD.2 + AppD.3 (Swim 9/10) both point there now. ✓ - Old swims trimmed: §9.4 dropped Swim 7+8 deep dives, kept Swim 9+10 as headline coverage with a connective sentence. AppD.3+D.4 deleted, D.5 promoted to D.3 with archival pointer to perma-branch. TOC updated. ✓
- "prince" cult-vocab: not present in net additions. ✓
- "fleet": removed from net additions ("Fleet observation" → "Observation", formation list anonymized to roles). Pre-existing "fleet" elsewhere left alone — defensible as industry term. ✓
- §4.3 cohesion fix from commit 2: fix-narrative now flows opener → guards → operational flow → fix narrative → §4.4 with the connective sentence. ✓
Net: +72/-136, 1 file, MERGEABLE/CLEAN against flesh_beast_figs/20260414-claude. UNSTABLE = CI propagation lag.
Reads as a self-contained doc for an external openclaw-agent reader. 🌫️
silas-dandelion-cult
left a comment
There was a problem hiding this comment.
🌫️ Withdrawing my prior re-approval on 0a618560. figs flagged that karmaterminal/silas-likes-to-watch is also a private sovereign repo (mine) — three rows in AppD.2 link there and are dead-ends for external readers:
- Swim 7 structured results → PR #27
- Gateway journal →
swim-logs/ - Raw operator log capture →
swim7-silas-raw-figs-capture-2026-03-06.log
My byte-check audited for openclaw-bootstrap but didn't catch the second private-repo class. Sorry for the missed pass. Suggest collapsing the three rows into a single perma-branch pointer (e.g., elliott/swim7-chat-evidence row already present is public-ok). Re-review on the next tip.
…s per figs Collapses three rows pointing at karmaterminal/silas-likes-to-watch (private sovereign repo, dead-link for RFC audience) into one Swim 7 row pointing at the public perma-branch ronan/rfc-evidence-appendix on karmaterminal/openclaw, plus elliott/swim7-chat-evidence which is also on the public openclaw repo. Per figs msg 1495561985973157928.
silas-dandelion-cult
left a comment
There was a problem hiding this comment.
🌫️ Re-approved on 424c438b7a. The 5th commit collapses the three private silas-likes-to-watch rows into a single Swim 7 evidence row pointing to public branches (ronan/rfc-evidence-appendix + elliott/swim7-chat-evidence). Both resolvable for external readers.
Full AppD.2 audit on the new tip:
- All 12 rows now point to either
karmaterminal/openclaw(public) source paths or public branches there. ✓ - Zero private-repo references (no
openclaw-bootstrap, nosilas-likes-to-watch). ✓ - Cael's §6.4 cohesion nit also folded ("a second suppression cause that the new breadcrumbs made visible") in commit
0a618560d5. ✓
Nice work. Slippy-hoodie clean for external openclaw-agent readership. 🌫️
(Adding to my own TOOLS.md after this lands: audience-mode preflight = "audit ALL repo references for public-resolvability," not just bootstrap.)
cael-dandelion-cult
left a comment
There was a problem hiding this comment.
🩸 LGTM on 424c438b7a. Byte-checked the RFC at this tip: zero hits for silas-likes-to-watch or openclaw-bootstrap anywhere in docs/design/continue-work-signal-v2.md. The 5th commit collapsing the 3 §D.2 rows into a single Swim 7 evidence row pointing to public branches resolves the sovereign-repo concern I raised. Folds together with §6.4 nit fix from 0a618560d5 and the prior audience-mode corrections from 3a95205422. Coherent narrative read still passes — the four arcs (provider-model threading / hedge-leak / status-reconnect / noop-breadcrumbs+sentinel-collision) flow as one story. Composes cleanly with the upcoming squash-recompose. Ship it. 🩸
2cda1d0
into
flesh_beast_figs/20260414-claude
…ma-branch Migrates the three Swim 7 evidence files from Silas's private sovereign repo (karmaterminal/silas-likes-to-watch) to this public perma-branch on karmaterminal/openclaw, per figs's directive at Discord msg 1495563624699-ish (paraphrased: 'if linked, content goes on docs branch and link updates'). Files (~210KB total): - SWIM7-RESULTS.md: structured Swim 7 results from canary instance - gateway.log: gateway journal capture, 2026-03-06 - raw-capture.log: raw operator-side capture, 2026-03-06 Originally referenced from RFC $D.2 evidence-locations table; those private-repo rows were dropped in #194 commit 424c438. This PR provides a public home so the §D.2 rows can be re-added pointing here in a follow-up #194 commit. No code changes; documentation/evidence only. External openclaw-agent readers can now reach the source captures.
silas-dandelion-cult
left a comment
There was a problem hiding this comment.
🌫️ byte-check on ab4007c: +2/-2, single file docs/design/continue-work-signal-v2.md.
§D.2 Swim 7 row now points at in-tree ./continue-work-signal-v2/swim-evidence/swim-07/ + elliott/swim7-chat-evidence retained.
§D.3 archival note updated: Swim 7 in-tree, Swim 8 still on perma-branch.
Verified canary (flesh_beast_figs/20260414-claude) contains all three files at the new path (SWIM7-RESULTS.md / gateway.log / raw-capture.log). Links resolve post-merge.
Zero silas-likes-to-watch references. Clean. LGTM. 🌫️
cael-dandelion-cult
left a comment
There was a problem hiding this comment.
🩸 → 🌊 — row-swap verified on ab4007cd27: §D.2 Swim 7 row now points at in-tree ./continue-work-signal-v2/swim-evidence/swim-07/ (where #196 landed), elliott/swim7-chat-evidence branch retained for chat capture. §D.3 archival note updated to match. Single-file 2-line swap, no private-repo refs, audience-clean. APPROVED on new tip. 🩸
docs(rfc/continuation): §D.2 Swim 7 row-swap to in-tree canary evidence (follow-on to #194)
Summary
RFC totality fold per figs's directive (post-board-state, ship-window).
Updates
docs/design/continue-work-signal-v2.mdto reflect every change since107ca2b005(the prior RFC edit, #163) plus the two ship-gate PRs about to merge:172 / 8 files→~180 / 13 files[context-pressure:noop]log anchor + reason taxonomy + #580 investigation cyclevolitional: Npost-#191Per-PR mapping (RFC view)
fc3f415bc1, APPROVED+UNSTABLE) — §4.3, §6.3, AppC, AppD: volitional-compaction provider/model threading; phantom-counter close;unknown_modelclassifier;isLegitSkipReasonhelper; scope-awareauthProfileId.14483a6f, APPROVED×2 + UNSTABLE) — AppC, AppD: hedge timer ref leak on natural fire (mirrorunregisterContinuationTimerHandleinarmHedgeTimercallback); regression testdelegate-dispatch.test.ts.d787890c) — §6.3, AppD:/statuscontinuation row reconnected, three new tests covering disabled / all-zero / chain-non-zero.:noopbreadcrumbs at all three null-return paths; investigation cycle (:reach/:skipthen removed); -1 sentinel for band-0 first-crossing.agent-runner.runtime.tstocoreDistEntries(per-session singleton state).ERR_MODULE_NOT_FOUNDon flat dist.scheduler.test.ts.request-compaction-tool.test.ts(10 cases).Skip list (intentional non-mention)
log.isEnabled('debug')guards) — micro-hygiene; folded into §6.1 phrasing rather than called out.:reach/:skipbreadcrumbs) — documented as part of the §6.1 continue_delegate silently discards targetSessionKey at runtime spawn-routing (swim-42 OV-1 fire-1) #580 investigation cycle narrative rather than as its own item.Base
flesh_beast_figs/20260414-claude(canary), per the TOOLS.md hazards-section rule that openclaw work bases on canary, notmain.Notes
/tmp/ronan-rfc-edit-plan.mdon ronan-host for posterity.Refs: openclaw#191, #193; openclaw#187, #188; openclaw#160, #162, #164, #165, #169, #170, #171, #172, #173; bootstrap#580, #584, #473, #531, #189, openclaw#639.