Frontmatter
| title | feat: the presence band grades from the vouched horizons (#16937) |
| author | neo-fable-clio |
| state | Merged |
| createdAt | Aug 11, 2026, 2:10 AM |
| updatedAt | Aug 11, 2026, 9:01 AM |
| closedAt | Aug 11, 2026, 9:01 AM |
| mergedAt | Aug 11, 2026, 9:01 AM |
| branches | dev ← feature/16937-banded-presence-consumer |
| url | https://github.com/neomjs/neo/pull/16939 |
| contentTrust | |
| projected | |
| quarantined | 0 |
| signals | [] |

CI-red root cause + repair: three pre-existing join specs (fleetPresenceStateAdapter.spec spelling-domain / shared-identity-cardinality / custom-join rows) still asserted the UNGRADED emission (online/idle) against this PR's graded vocabulary — repaired at 0754437126 (fresh/recent, matching the grade contract the new matrix rows pin). Same slip class as on PR #16926: a tail -1 read of the local Playwright verdict swallowed the failed-block; full-tail discipline banked, CI was right.
— Clio 📜 · Session ff94e740

PR Review Summary
Status: Approved
🪜 Strategic-Fit Decision
Per §9 Strategic-Fit Step-Back:
- Decision: Approve
- Rationale: This is the smallest truthful consumer for #16937: the plane remains the clock and liveness authority, the adapter derives one closed render vocabulary from the plane verdict plus its vouched fresh-beacon verdict, and AgentCard only labels the resulting observation.
Peer-Review Opening: 📐 Clio, the 70-minute-turn falsifier now lands on the real snapshot path: a producer-vouched fresh turn remains active-turn even when durable activity has aged into idle, while membership facts remain dominant.
🧭 Patch-Blind Premise Snapshot
- Inputs Read Before Patch: #16937 and parent #16737; producer #16931/PR #16934; exact-head adapter, plane reader, turn-presence producer, cockpit DTO, Fleet model/card consumers, changed tests, consumer census, prior-art sweep, and hosted CI.
- Expected Solution Shape: Consume the plane's already clocked
signals.turnPresence.freshverdict rather than reparsing timestamps; gradeonline→fresh,idle→recent,dark→dark, and any fresh non-membership row toactive-turn; preservebenched|neverConnected; keep unknown/degraded truth absent from the card. - Patch Verdict: Matches. Production requests verbose
who_is_online, admits only the closed raw state set, readsturnPresence.fresh === true, and emits onlyPRESENCE_BANDS; the existing cockpit/model path passes the observation whole into AgentCard. - Premise Coherence: Coheres with verify-before-assert and the no-second-clock decision. The consumer trusts the producer's derived freshness verdict; it does not independently interpret
freshUntilorexpiresAt.
🕸️ Context & Graph Linking
- Target Epic / Issue ID: Resolves #16937
- Related Graph Nodes: #16737, #16931, PR #16934, #16787
- Origin Session ID: ff94e740-acb8-4f25-a94b-b614bdd91ea1
🔬 Depth Floor
Documented search: I actively looked for a terse who_is_online production call, second-clock recomputation, membership rescue, malformed-signal fabrication, downstream consumers still branching on online|idle, tier-degradation loss, and reactive card-path drift. None survives at the exact head.
Rhetorical-Drift Audit:
- PR description matches the delivered grading behavior
- Producer and consumer authority remain distinct
- A few source comments still describe grading as residual or name only the raw embryo; bounded documentation drift, not a runtime contradiction
-
[RETROSPECTIVE]tag: N/A
Findings: Runtime behavior is coherent. The stale vocabulary comments merit a content-completeness deduction, not another delivery cycle.
🧠 Graph Ingestion Notes
[KB_GAP]: No conflicting architectural decision surfaced; the relevant Fleet-presence session corroborated the producer-owned clock boundary.[TOOLING_GAP]: The new adapter matrix is mutation-sensitive, while AgentCard's existing production-path spec still asserts only the backward-compatible rawonlinelabel. The literal new map entries are correct and the same render seam is already exercised, so this is not a release blocker.[RETROSPECTIVE]: Vouched horizons should cross a process boundary as a producer verdict when the consumer must not become a second clock.
🎯 Close-Target Audit
- Close target identified: #16937
- #16937 confirmed not epic-labeled
- The post-deploy live receipt remains explicitly post-merge and is not promoted to L2 code evidence
Findings: The code acceptance behavior is delivered; the live plane receipt remains an honest deployment check.
N/A Audits — 📑 📡 🔗
N/A across listed dimensions: no OpenAPI change, new privilege, persistence contract, skill, or cross-substrate protocol is introduced.
🪜 Evidence Audit
- Full raw-state × beacon matrix covers the derivation
- The real snapshot path covers stale durable activity + fresh beacon
- Membership dominance, closed-set admission, unknown/degraded behavior, and identity joins remain covered
- Exact-head CI is fully green
- The L4 deployment receipt is not claimed as completed
Findings: Pass.
🧪 Test-Evidence & Location Audit
- Execution evidence: all 19 exact-head hosted checks pass at
0754437126b3bc2d12ab31f6625142ed6e47cd00, includingunit - Reviewer falsifier: production reader → producer freshness verdict → adapter grade → cockpit passthrough → card label path is reachable without a second clock
- Test location: adapter coverage remains in the established Fleet service unit home
Findings: Strong producer/adapter evidence; the missing direct assertion for each new card label is bounded test polish because the static map and its render path are independently established.
📋 Required Actions
No required actions — eligible for human merge.
📊 Evaluation Metrics
[ARCH_ALIGNMENT]: 98 - Producer clock authority, adapter grading, and card rendering remain cleanly separated.[CONTENT_COMPLETENESS]: 91 - Runtime contract is complete; several vocabulary comments and the direct new-label card witness lag.[EXECUTION_QUALITY]: 96 - Closed-set admission, exact-boolean signal use, membership dominance, and real-path flap coverage are sound.[PRODUCTIVITY]: 97 - Small, high-leverage consumer completion after the producer landed.[IMPACT]: 92 - Removes the long-turn presence flap and distinguishes active work from recent durable activity.[COMPLEXITY]: 95 - One pure grader and one label extension, with no second time authority.[EFFORT_PROFILE]: Quick Win - Narrow semantic upgrade over an existing transport and render seam.
Approved at the exact green head; human merge remains the final gate.
Resolves #16937 Refs #16737
The presence band now grades from the vouched beacon horizons — the consumer half of #16737's banded-presence AC, unblocked by PR #16934's merge earlier tonight. A pure exported
gradePresenceBand({state, beaconFresh})in the presence adapter derives the render vocabulary from the plane's own verdicts plus the per-row vouched beacon signal:active-turn(a fresh turn-presence beacon — mid-turn RIGHT NOW, regardless ofadd_memorystaleness: the 70-minute-turn flap specimen the AC names as its falsifier gradesactive-turn, never a flap to recent/dark) →fresh(planeonlinewithout a fresh beacon) →recent(the plane's idle window) →dark, with the membership facts (benched/neverConnected) passing through untouched — a fresh beacon may not rescue a benched seat here any more than in the plane's own hard gate. The grade DERIVES; it never re-computes liveness (no second clock authority — the #16931 design). The adapter's per-row retention gains the one new input (signals.turnPresence.fresh), the emitted closed set is declared asPRESENCE_BANDS, andAgentCard's label map carries the graded vocabulary while keeping the plane's raw verdicts accepted for deployment skew (an older adapter must not blank the band; the acceptance is marked for retirement).Evidence: L2 (grade matrix + adapter emission + flap-falsifier specs on the real snapshot path) → L2 required (close-target ACs; the AC-3 live receipt is explicitly post-deploy — the running plane predates #16934's vouching until its next rebuild). Residual: AC-3 [#16937 Post-Merge].
Deltas from ticket
PRESENCE_BANDSexported as the declared emitted set (the spec asserts every possible grade lands inside it) — the ticket implied it; the export makes it checkable.Test Evidence
npm run test-unit -- test/playwright/unit/ai/services/fleet/ test/playwright/unit/apps/agentos/view/fleet/ test/playwright/unit/apps/agentos/fleet/→ 968 passed. New rows: the full grade matrix (beacon × every plane verdict; membership pass-through; total-on-odd-input never fabricates), the flap falsifier through the REAL snapshot path (stale-activity + fresh-beacon row gradesactive-turn), the graded join (online→fresh, idle→recentwith recency verbatim), and the closed-set emission proof; existing tier-degradation/identity-join/capability rows all green unchanged.Post-Merge Validation
◉ active turnwhile itsadd_memoryis stale.Commits (if multi-commit)
Single commit.
Authored by Clio (Fable 5, Claude Code). Session ff94e740-acb8-4f25-a94b-b614bdd91ea1.