docs: refresh dashboard screenshot with live MacBook v0.5.1 data (#60)

D82 originally rendered docs/img/dashboard-v0.5.0.png from synthetic
quota_v2 data (the live API wasn't probed at the time of capture).
After v0.5.1 hotfix shipped, the screenshot is replaced with a render
from a real /v0/management/dashboard-data response captured 2026-05-27
from the MacBook OLP server on commit fa2d1af (F4+#7 post-merge).

Changes:
- docs/img/dashboard-v0.5.0.png → docs/img/dashboard-v0.5.1.png
  (rename + content refresh; new content is the v0.5.1 live capture)
- README.md screenshot reference updated to v0.5.1 path + alt-text
  now includes the live utilization numbers (5h: 6%, 7d: 38%)
- docs/exit-gates/phase-5-e2e.json refreshed to reflect the post-v0.5.1
  test (different server version, different temp owner key, new
  utilization snapshot). Records the v0.5.1 contract verifications
  (status enum, failure null for healthy live, schema_version match).

Post-test cleanup verified:
- Temp owner key (id=0m6s2s97, name=v0.5.1-screenshot) revoked
- ~/.olp/config.json providers.anthropic.quota_probe_enabled flag
  removed (config restored to baseline)
- Test server (port 14567) terminated

No code or contract changes. Pure documentation refresh.

Co-authored-by: dtzp555 <dtzp555@gmail.com>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
dtzp555-max
2026-05-27 11:28:16 +10:00
committed by GitHub
co-authored by taodeng Claude Opus 4.7
parent fa2d1af130
commit 9dc070bc53
4 changed files with 15 additions and 53 deletions
+1 -1
View File
@@ -283,7 +283,7 @@ See [ADR 0004 (Fallback Engine)](./docs/adr/0004-fallback-engine.md), [ADR 0007
OLP v0.5.0+ surfaces live subscription quota for Anthropic Pro/Max subscribers on the owner-only `/dashboard`. Per-provider rows show 5-hour and 7-day utilization bars with reset countdowns, status badges, representative-claim hints, and a manual refresh button. The panel auto-refreshes every 60 seconds and pauses when the tab is hidden. OLP v0.5.0+ surfaces live subscription quota for Anthropic Pro/Max subscribers on the owner-only `/dashboard`. Per-provider rows show 5-hour and 7-day utilization bars with reset countdowns, status badges, representative-claim hints, and a manual refresh button. The panel auto-refreshes every 60 seconds and pauses when the tab is hidden.
![OLP v0.5.0 dashboard — Plan Usage panel with live anthropic quota](./docs/img/dashboard-v0.5.0.png) ![OLP v0.5.1 dashboard — Plan Usage panel with live anthropic quota (utilization 5h: 6%, 7d: 38%, status: live)](./docs/img/dashboard-v0.5.1.png)
### How it works ### How it works
+14 -52
View File
@@ -1,72 +1,34 @@
{ {
"phase": "Phase 5", "phase": "v0.5.1 post-release",
"exit_gate_item": "9 \u2014 Live MacBook E2E verification (dashboard renders enriched panel with real quota data)", "purpose": "Refresh dashboard screenshot with live MacBook data after v0.5.1 hotfix (replacing D82's synthetic-data render)",
"captured_at_utc": "2026-05-26T07:56:36.651Z", "captured_at_utc": "2026-05-27T01:26:17.304Z",
"host": "maintainer's MacBook (Mac client test target per project test-envs; specific IP / Tailscale node redacted per public-repo hygiene)", "host": "maintainer's MacBook (Mac client test target per project test-envs; specific IP / Tailscale node redacted per public-repo hygiene)",
"server_version": "0.4.4 (pre-v0.5.0-close; main @ commit 2b07a3b \u2014 D83)", "server_version": "0.5.1 (main @ commit fa2d1af \u2014 F4+#7 post-merge)",
"olp_port": 14567, "olp_port": 14567,
"endpoint_tested": "/v0/management/dashboard-data", "endpoint_tested": "/v0/management/dashboard-data",
"auth": "owner-tier OLP key (temp, revoked post-test)", "auth": "owner-tier OLP key (temp, revoked post-test)",
"config_opt_in": {
"providers.anthropic.quota_probe_enabled": true
},
"quota_v2_shape_proof": [
{
"provider": "anthropic",
"status": "live",
"schema_version": "2026-05-26",
"last_fresh_at": 1779782166101,
"utilization": {
"5h": 0.36,
"7d": 0.34
},
"reset": {
"5h": 1779794400,
"7d": 1780225200,
"overall": 1779794400,
"overage": null
},
"representative_claim": "five_hour",
"fallback_percentage": 0.5,
"overage": {
"status": "rejected",
"disabled_reason": "org_level_disabled_until"
},
"raw_available": true
},
{
"provider": "openai",
"status": "unavailable",
"reason": "no public quota api or probe disabled",
"schema_version": null,
"last_fresh_at": null,
"utilization": null,
"reset": null,
"representative_claim": null,
"fallback_percentage": null,
"overage": null,
"raw_available": false
}
],
"result_summary": { "result_summary": {
"anthropic": { "anthropic": {
"status": "live", "status": "live",
"schema_version": "2026-05-26", "schema_version": "2026-05-26",
"utilization_5h": 0.36, "utilization_5h": 0.06,
"utilization_7d": 0.34, "utilization_7d": 0.38,
"representative_claim": "five_hour", "representative_claim": "five_hour",
"overage_status": "rejected", "failure": null
"fallback_percentage": 0.5
}, },
"openai": { "openai": {
"status": "unavailable", "status": "unavailable",
"reason": "no public quota api or probe disabled" "reason": "no public quota api or probe disabled"
} }
}, },
"dashboard_screenshot": "docs/img/dashboard-v0.5.0.png", "v0_5_1_contract_verified": [
"quota_v2[i].status enum includes 'live' (anthropic) and 'unavailable' (openai) \u2014 both rendered correctly",
"quota_v2[i].failure is null for healthy live status (per ADR 0013 Rule 6 \u2014 failure info only on stale/unreachable)",
"quota_v2[i].schema_version pinned at 2026-05-26 \u2014 matches models-registry.json quota_probe.schema_version"
],
"post_test_cleanup": [ "post_test_cleanup": [
"temp owner key (id=6yullsd-, name=e2e-d83-close-prep) revoked", "temp owner key (id=0m6s2s97, name=v0.5.1-screenshot) revoked",
"~/.olp/config.json providers.anthropic.quota_probe_enabled flag removed (config restored to baseline)", "~/.olp/config.json providers.anthropic.quota_probe_enabled flag removed (config restored to baseline)",
"test server (pid=36163, port=14567) terminated" "test server (pid varies, port=14567) terminated"
] ]
} }
Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB