Pinky XXX: the blessed polish round — affordance symmetry, state grammar, fleet-scope unread (v1.81.0) #114

Merged
ClaudiuSchuster merged 3 commits from oss-oo/pinky-xxx-polish into main 2026-10-14 09:01:18 +00:00
Owner

Three families, one polish round (roadmap-blessed order 1-of-3):

X1 — affordance symmetry (item-8 completion + #17): every failed steer card carries BOTH affordances — Retry gated on the prompt file's survival (the dam-quarantined corpse class renders no dead promise), Dismiss ALWAYS (dismissedAt settles the result durably; no card waits for age-out housekeeping). The #17 hide audit answered: the per-row Hide exists on main-table non-keep-close rows; the errored corpse row lacked it because it was PINNED (verified live); the exclusion is now surfaced in the pin/star tooltips and the census chip names both semantics (filter view vs row Hide).

X2 — state grammar (#14 + sibling): resolveRowState is the ONE grammar every status surface derives through — running says running, terminal says its word, resting rows say idle (never a defaulted running), brand-new says nothing; a live error episode rides its own labeled chip, compounds never join the state word.

X3 — the VVV fleet-scope: usage-ledger pairing extends to bell-visible fleet children (album-persisted) and the consumed cutoff (newest bell delivery + 2s grace) keeps belled round output off the owner's unread even in lane sessions; genuine post-bell conversation still counts. Live dry-run over copied station state: B² 60 → 0; a synthetic post-bell reply counts 1.

Gates: tests/test_round_xxx.py (30 legs incl. the node state-grammar harness); full suite 1286 green; Super-Linter station recipe green on the final tree (BASH/BASH_EXEC/MARKDOWN/PYTHON_PYLINT/PYTHON_RUFF/YAML).

Three families, one polish round (roadmap-blessed order 1-of-3): **X1 — affordance symmetry (item-8 completion + #17)**: every failed steer card carries BOTH affordances — Retry gated on the prompt file's survival (the dam-quarantined corpse class renders no dead promise), Dismiss ALWAYS (dismissedAt settles the result durably; no card waits for age-out housekeeping). The #17 hide audit answered: the per-row Hide exists on main-table non-keep-close rows; the errored corpse row lacked it because it was PINNED (verified live); the exclusion is now surfaced in the pin/star tooltips and the census chip names both semantics (filter view vs row Hide). **X2 — state grammar (#14 + sibling)**: resolveRowState is the ONE grammar every status surface derives through — running says running, terminal says its word, resting rows say idle (never a defaulted running), brand-new says nothing; a live error episode rides its own labeled chip, compounds never join the state word. **X3 — the VVV fleet-scope**: usage-ledger pairing extends to bell-visible fleet children (album-persisted) and the consumed cutoff (newest bell delivery + 2s grace) keeps belled round output off the owner's unread even in lane sessions; genuine post-bell conversation still counts. Live dry-run over copied station state: B² 60 → 0; a synthetic post-bell reply counts 1. Gates: tests/test_round_xxx.py (30 legs incl. the node state-grammar harness); full suite 1286 green; Super-Linter station recipe green on the final tree (BASH/BASH_EXEC/MARKDOWN/PYTHON_PYLINT/PYTHON_RUFF/YAML).
X1 (item-8 completion + #17): every failed steer card carries BOTH
affordances — Retry gated on the prompt file's survival (retryable in
the failed view; the dam-quarantined corpse renders no dead promise),
Dismiss always (dismissedAt settles the result durably, the block
drops it, the console line calms). The #17 hide audit answered: the
per-row Hide exists on main-table non-keep-close rows; the corpse row
lacked it because it was PINNED (verified live); the exclusion is now
surfaced in the pin/star tooltips and the census chip names both
semantics (filter view vs row Hide).

X2 (#14 + sibling): resolveRowState is the ONE state grammar (badge,
dots, dock): running says running, terminal says its word, resting
rows say idle (never a defaulted running), brand-new says nothing; a
live error episode rides its own labeled chip — compounds never join
the state word.

X3 (VVV fleet-scope): usage-ledger pairing extends to bell-visible
fleet children (album-persisted), and the consumed cutoff (newest
bell delivery + 2s grace) keeps belled round output off the owner's
unread even in lane sessions; genuine post-bell conversation still
counts. Live dry-run: B2 60 -> 0, synthetic post-bell reply -> 1.

tests/test_round_xxx.py: G1-G3 gate legs (30 tests incl. the node
state-grammar harness).
XXX lint: read_text encoding + split the terminal-settle condition (pylint W1514/R0916)
All checks were successful
Checks / Functional checks (pull_request) Successful in 38s
3822fdc712
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
OSS-Singularity/zcode-dispatch-observatory!114
No description provided.