feat: add workplan aliases and legacy meter
Adds preferred workplan REST/event surfaces, legacy-meter telemetry and weekly review summaries, documentation/dashboard terminology updates, dashboard API loading fixes, and close-out sync for STATE-WP-0052 and STATE-WP-0054.
This commit is contained in:
parent
355f80b078
commit
166aedfa8d
43 changed files with 1851 additions and 145 deletions
|
|
@ -11,13 +11,13 @@ import {statusControl, TASK_STATUSES, WORKSTREAM_STATUSES} from "../components/s
|
|||
```js
|
||||
const wsId = observable.params.id;
|
||||
const [raw, taskRows, workplanIndex] = await Promise.all([
|
||||
fetch(`${API}/workstreams/${wsId}`)
|
||||
fetch(`${API}/workplans/${wsId}`)
|
||||
.then(r => r.ok ? r.json() : r.json().then(e => ({error: e.detail ?? `HTTP ${r.status}`})))
|
||||
.catch(e => ({error: String(e)})),
|
||||
fetch(`${API}/tasks/?workstream_id=${wsId}&limit=1000`)
|
||||
.then(r => r.ok ? r.json() : [])
|
||||
.catch(() => []),
|
||||
fetch(`${API}/workstreams/workplan-index`)
|
||||
fetch(`${API}/workplans/index`)
|
||||
.then(r => r.ok ? r.json() : {workstreams: {}})
|
||||
.catch(() => ({workstreams: {}})),
|
||||
]);
|
||||
|
|
@ -31,7 +31,7 @@ if (raw.error) {
|
|||
const name = raw.title || raw.slug || wsId;
|
||||
const shortName = name.length > 60 ? name.slice(0, 60) + "…" : name;
|
||||
display(html`<h1 style="font-size:1.1rem;margin-bottom:0.25rem">Workstream · <em>${shortName}</em></h1>`);
|
||||
display(html`<p style="margin-top:0"><a href="/">← Overview</a> | <a href="/workstreams">← Workstreams</a> | <a href="/token-cost">← Token Cost</a></p>`);
|
||||
display(html`<p style="margin-top:0"><a href="/">← Overview</a> | <a href="/workstreams">← Workplans</a> | <a href="/token-cost">← Token Cost</a></p>`);
|
||||
|
||||
display(html`<div class="ws-summary">
|
||||
<div><span>Status</span>${statusControl({
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue