Damascus Entry Points P5: damascus-ui v2 (ingest + 4 widgets + project-grouped dashboard) #19
Reference in New Issue
Block a user
Delete Branch "feat/entry-points-ui-v2"
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?
P5 — damascus-ui v2
Closes the UI v2 contract from
wiki/concepts/entry-points-contract.md§8.What's in this PR
UI v2 (P5 deliverables)
API wiring (gap fix)
Tests
Build
Decisions
Followups (NOT in this PR)
- POST /v1/items (in-memory insert, idempotent on (project, story_id), validates IngestStoryRequest field constraints) - POST /v1/issues/{id}/answer (sets answer/status='answered'/ answered_at, returns AnswerIssueResponse) - GET /v1/cost?days=N (synthetic 7-day deterministic data; one spike day so the CostSparkline widget has a visible shape) - GET /v1/issues?status=&project=&limit=&offset= (backing the OpenIssues widget's 'last 5' list) - GET /v1/items?group_by=project returns GroupedItemsResponse (GroupedItemsResponse shape matches src/damascus/api_schemas.py P5 additions); bad group_by values return 400 Fixture dataset grows from 3 items (v1) to 5 (v2): adds an item in awaiting_human with an open issue (answer-form target) and a blocked item with last_verdict+last_feedback (BlockedItems target). Also adds 2 events for the awaiting_human item so the drawer's recent events list has something to render. v1 e2e open-issues-count expectation bumped 1→2 to match the new fixture.Pull request closed