G08: Make CLI status a readable snapshot with useful details while preserving JSON and pipes #182

Closed
opened 2026-10-04 22:25:02 +00:00 by kilo · 1 comment
Member

Goal

Product owner: Scarcity Router; G08/G13. Source: Creatidy architecture v1.0 (2026-10-04), sections 1-5, 7-13, 14-18 via #173. Improve ordinary scarcity-router status usability independently of Console, using the same normalized status contract.

Why and Evidence

Develop 8d9d4b04bcb23fe19ff702b6209fbcb1537cdf1b, status.render_human and _format_window print provider/status plus raw kind/resource/used/remaining/reset/id/diagnostic fields. render_json / canonical_snapshot_documents define shipped canonical snapshot arrays; CLI status JSON intentionally differs from REST/MCP envelope eligibility (docs machine-interfaces). Telemetry session alignment #171/#172 is integrated, not an open missing feature because #168/#170 remain open. Operator can read facts but gets no coherent compact snapshot/detail/recovery experience. Existing #140 is administrator UI, not this CLI scope.

Scope and Non-Goals

Improve human overview and detail presentation, meaningful limiting windows/reset/freshness/source/unknown distinctions and safe recovery guidance. Determine smallest backward-compatible CLI design from existing flags before proposing new ones. TUI/watch, if justified, is a client of the same state contract, not another collector/policy engine; the known client requirement must receive an explicit supported/conditional disposition, not vanish. No prerequisite Console rollout, new service, telemetry normalization change, new model ranker or color requirement.

Acceptance Criteria

  1. Synthetic healthy, weekly-critical, short-critical, exhausted, auth-required, schema-changed, unsupported, stale/unknown, missing-reset, shared-pool/ambiguous-source fixtures render an understandable compact snapshot and accessible details; unknown is never green/full/zero and absent windows are not exhaustion.
  2. Human output explains collection vs quota vs policy vs execution readiness and mode differences. Remediation actions reuse actual login/service/doctor commands, never disclose paths/secrets or recommend inference to diagnose telemetry.
  3. Existing --json shape, canonical ordering, stdout/stderr, exit codes and pipes/CI remain compatible; no ANSI/control characters or compulsory color in non-TTY/narrow terminals. Configuration notes cannot corrupt JSON.
  4. Deterministic clock/collector injection, golden behavioral assertions for information content, narrow/no-color screen evidence and mandatory UX review; do not mock renderer behavior.
  5. Docs match installed help/commands; if watch/TUI added it consumes shared contract with bounded polling/reconnect and clean exit. No change to public schema/flags without explicit compatibility decision.

Dependencies, Priority, Reuse and Authority

Independent operator-priority lane; do not wait for Console or MI. Coordinate forthcoming Router state/event contract only where needed; #140 remains admin-view owner. Reuse StatusObservation, canonical serializers, render_human, diagnostics and current worker discovery; assess Rich adoption before custom formatting, exact revision/files/license, no-color/accessibility/negative tests/security/dependency/maintenance. Candidate is not approval to install it.
Refs #173, #140, #171/#172. No credentials or live quota fixtures, no paid calls. Future user acceptance can use redacted/synthetic snapshots; real telemetry/service access requires explicit selected validation scope, inference not needed or authorized. Full repository gates and owner merge required.

## Goal **Product owner: Scarcity Router**; G08/G13. Source: Creatidy architecture v1.0 (2026-10-04), sections 1-5, 7-13, 14-18 via #173. Improve ordinary `scarcity-router status` usability independently of Console, using the same normalized status contract. ## Why and Evidence Develop `8d9d4b04bcb23fe19ff702b6209fbcb1537cdf1b`, `status.render_human` and `_format_window` print provider/status plus raw kind/resource/used/remaining/reset/id/diagnostic fields. `render_json` / `canonical_snapshot_documents` define shipped canonical snapshot arrays; CLI status JSON intentionally differs from REST/MCP envelope eligibility (docs machine-interfaces). Telemetry session alignment #171/#172 is integrated, not an open missing feature because #168/#170 remain open. Operator can read facts but gets no coherent compact snapshot/detail/recovery experience. Existing #140 is administrator UI, not this CLI scope. ## Scope and Non-Goals Improve human overview and detail presentation, meaningful limiting windows/reset/freshness/source/unknown distinctions and safe recovery guidance. Determine smallest backward-compatible CLI design from existing flags before proposing new ones. TUI/watch, if justified, is a client of the same state contract, not another collector/policy engine; the known client requirement must receive an explicit supported/conditional disposition, not vanish. No prerequisite Console rollout, new service, telemetry normalization change, new model ranker or color requirement. ## Acceptance Criteria 1. Synthetic healthy, weekly-critical, short-critical, exhausted, auth-required, schema-changed, unsupported, stale/unknown, missing-reset, shared-pool/ambiguous-source fixtures render an understandable compact snapshot and accessible details; unknown is never green/full/zero and absent windows are not exhaustion. 2. Human output explains collection vs quota vs policy vs execution readiness and mode differences. Remediation actions reuse actual login/service/doctor commands, never disclose paths/secrets or recommend inference to diagnose telemetry. 3. Existing `--json` shape, canonical ordering, stdout/stderr, exit codes and pipes/CI remain compatible; no ANSI/control characters or compulsory color in non-TTY/narrow terminals. Configuration notes cannot corrupt JSON. 4. Deterministic clock/collector injection, golden behavioral assertions for information content, narrow/no-color screen evidence and mandatory UX review; do not mock renderer behavior. 5. Docs match installed help/commands; if watch/TUI added it consumes shared contract with bounded polling/reconnect and clean exit. No change to public schema/flags without explicit compatibility decision. ## Dependencies, Priority, Reuse and Authority Independent operator-priority lane; do not wait for Console or MI. Coordinate forthcoming Router state/event contract only where needed; #140 remains admin-view owner. Reuse `StatusObservation`, canonical serializers, `render_human`, diagnostics and current worker discovery; assess Rich adoption before custom formatting, exact revision/files/license, no-color/accessibility/negative tests/security/dependency/maintenance. Candidate is not approval to install it. Refs #173, #140, #171/#172. No credentials or live quota fixtures, no paid calls. Future user acceptance can use redacted/synthetic snapshots; real telemetry/service access requires explicit selected validation scope, inference not needed or authorized. Full repository gates and owner merge required.
Author
Member

Completed in the SAME /loop invocation2026-10-05T12:38:32Z. PR197 merged through supported Forgejo merge as1dae1948f372e0f1739896655bb7db97d6b08460. Fetched develop exactmerge; approvedbase78c0013dc941fc3fd0bf896d9fac55e6801d73fc and HEAD19c5436aa0426c314df22bac8e8e0703fd6c59bf parents/ancestry verified and integratedtreeequalsapprovedtree.

Acceptance verified against actualsynthetic renderer/clock/collectors/sourceunitfixtures and independentUX review: readable ASCII terminal overview/details, weekly/short low windows, exhausted/auth/schema/unsupported/old/unknown/missing-reset/ambiguous scopes, policy distinctfromquota and readiness, safe existing recovery. Multi-source custom home/bin guidance matches actual login discovery; doctor accurately offlineartifacts/configuration, notsourceaccess. Both installed/module entrypoints keep oneclock/collection, byte-identicalJSON/nonTTY output/order/streams/exits/flags, noANSI/colorrequirement and actual32columnscreens/golden. No renderingmock or sourceprivatevalues. Watch/TUIexplicitconditional/deferred usingcurrentstatus or183onlyifneeded; Rich immutablepin/license/behavior independentlyverified, notadopted/copied.

Reviewhistory182 preserved:1COMMENT withguidanceP2 andinfra; sourcebytes/safe freshreadonlypath resolved, remediation9121a42.2REQUEST_CHANGES doctorcapabilityP2; remediation19c5436.3APPROVE/findings[] at exactHEAD/base, independent113tests16.326s/type0/source/UX/security. Full exactcleanHEAD env-i gate2719 PASS17skips/type0/whitespace/exit0 assessed. Original implementation4d6093c retained, no rewrite/merge-in/permission/model/dependency change.

Closing only selected CLI presentation feature, not live telemetry/service/account/harness or productreadiness. No inference/benefit orpaidcalls. Next freshfullSELECT uses correctednonterminal gates,175stillopen/unimplemented.

Completed in the SAME /loop invocation2026-10-05T12:38:32Z. PR197 merged through supported Forgejo merge as1dae1948f372e0f1739896655bb7db97d6b08460. Fetched develop exactmerge; approvedbase78c0013dc941fc3fd0bf896d9fac55e6801d73fc and HEAD19c5436aa0426c314df22bac8e8e0703fd6c59bf parents/ancestry verified and integratedtreeequalsapprovedtree. Acceptance verified against actualsynthetic renderer/clock/collectors/sourceunitfixtures and independentUX review: readable ASCII terminal overview/details, weekly/short low windows, exhausted/auth/schema/unsupported/old/unknown/missing-reset/ambiguous scopes, policy distinctfromquota and readiness, safe existing recovery. Multi-source custom home/bin guidance matches actual login discovery; doctor accurately offlineartifacts/configuration, notsourceaccess. Both installed/module entrypoints keep oneclock/collection, byte-identicalJSON/nonTTY output/order/streams/exits/flags, noANSI/colorrequirement and actual32columnscreens/golden. No renderingmock or sourceprivatevalues. Watch/TUIexplicitconditional/deferred usingcurrentstatus or183onlyifneeded; Rich immutablepin/license/behavior independentlyverified, notadopted/copied. Reviewhistory182 preserved:1COMMENT withguidanceP2 andinfra; sourcebytes/safe freshreadonlypath resolved, remediation9121a42.2REQUEST_CHANGES doctorcapabilityP2; remediation19c5436.3APPROVE/findings[] at exactHEAD/base, independent113tests16.326s/type0/source/UX/security. Full exactcleanHEAD env-i gate2719 PASS17skips/type0/whitespace/exit0 assessed. Original implementation4d6093c retained, no rewrite/merge-in/permission/model/dependency change. Closing only selected CLI presentation feature, not live telemetry/service/account/harness or productreadiness. No inference/benefit orpaidcalls. Next freshfullSELECT uses correctednonterminal gates,175stillopen/unimplemented.
kilo closed this issue 2026-10-06 03:19:35 +00:00
Sign in to join this conversation.
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
Creatidy/scarcity-router#182
No description provided.