H. Administrator UX cleanup (derived resources, honest counters, revoked-worker deletion, limits + client integration) #140
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
P1
P2
P3
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Creatidy/scarcity-router#140
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Child H of #132. Fix the misleading post-D-053 administration UX.
1. Resources page
Currently lists only static
_config.resourcesand can be empty while D-053 dynamic resources are live. Show configured resources AND read-only source-derived resources. Derived entries display: resource id, source, provider, model, effort, health/availability. Do NOT duplicate derived resources into durable static configuration; do NOT offer edit/remove actions implying independent configuration (read-only presentation; availability follows the source lifecycle).2. Sources page counters
errorscurrently counts merely discovered/unclassified models. Split state honestly:routable / restricted / discovered-unclassified / errors. Normal discovery is never labeled an error. Render theretiredlist too.3. Source action text — state-aware remediation
Authenticated source must not be told to log in; auth-required source gets the login remediation; disconnected worker gets worker/service remediation (linking child F's service commands); stale inventory says so; a source with current healthy inventory shows no fake warnings.
4. Revoked worker deletion
Revoked workers currently cannot be removed. Implement safe deletion: only revoked workers; active-worker deletion rejected; deletion rejected while referenced by a Source or static Resource; historical audit records preserved (no rewriting old audit identity); Delete exposed in the UI only when semantically valid; referential-integrity tests.
5. Execution limits UX
Normal operator surface for gateway limits (child D exposes the data; this child renders it): an operator can see why a 128k model request is or is not accepted. No hidden safety policy.
6. Client integration UX
A user configuring a representative OpenAI-compatible client can determine: Base URL, API format, exposed model ids, effective context, effective output limit, available reasoning efforts, TLS/trust status. Prefer standard protocol metadata; use additive
x_scarcity_routermetadata (child B) or a small integration view where the standard API cannot represent it. No ZCode-specific behavior in the routing core.Tests
Resources page composition (configured + derived, read-only discipline); counter splits per source state; remediation text per state (table-driven); revoked-worker deletion happy path + each refusal + audit preservation; limits visibility; integration-view payload correctness; no secrets in any rendered surface.
Complexity boundary
server_ui.py,control_api.py,execution_sources.py(view fields),control_server.pyservice endpoints as needed; ~3 test files. Budget: 120 min wall clock. Depends on child D data (limits) and B (model metadata); independent otherwise.Acceptance
Full gate green; mandatory UX review (
UX impact:assessment, material regression = CHANGES_REQUESTED); PR open for human review; not merged.Additive scope note (D-056, PR #147 — frozen scope text above unchanged):
Authoritative text: D-056 pt 1/pt 6/pt 9 in
docs/decisions.md; "Harness-independent execution backend (D-056, #146)" indocs/architecture.md.kilo referenced this issue2026-10-01 01:48:36 +00:00
kilo referenced this issue2026-10-04 23:43:29 +00:00
2026-10-27 owner backlog disposition (D-083, governance issue #228). This issue remains open with its
wontfixlabel unchanged; history preserved. Verified against current source: §6 client-integration UX is delivered (D-055/D-058x_scarcity_routermetadata, Client-configuration page); §§1–5 remain unimplemented in the current M09 UI. Producer-owned resource-state correctness (derived/discovered representation, honest availability/freshness, stable consistent projection, no fabricated completeness) is integrated into #183; the administrator-facing remainder (derived-resources display, honest counters, state-aware remediation, revoked-worker deletion, limits visibility) is re-homed to #226, reusing the existing UI and control plane. The former #183 → #140 native dependency was removed as stale. See D-083 indocs/decisions.md.