Skip to content

Commit 7baf2b1

Browse files
copyleftdevclaude
andcommitted
chore: mark HB-019 through HB-023 and M3 epic as done
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent a628f78 commit 7baf2b1

8 files changed

Lines changed: 57 additions & 13 deletions

File tree

.github/issues/_index.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
{
2929
"id": "HB-018",
3030
"title": "M3: Dashboard — embedded web UI, hook list, request feed, request inspector",
31-
"status": "open",
31+
"status": "done",
3232
"children": ["HB-019", "HB-020", "HB-021", "HB-022", "HB-023"],
3333
"file": "epics/HB-018.json"
3434
}
@@ -163,7 +163,7 @@
163163
{
164164
"id": "HB-019",
165165
"title": "Serve embedded static assets via rust-embed",
166-
"status": "open",
166+
"status": "done",
167167
"epic": "HB-018",
168168
"depends_on": ["HB-017"],
169169
"blocks": ["HB-020"],
@@ -172,7 +172,7 @@
172172
{
173173
"id": "HB-020",
174174
"title": "Dashboard shell: layout, styling, router",
175-
"status": "open",
175+
"status": "done",
176176
"epic": "HB-018",
177177
"depends_on": ["HB-019"],
178178
"blocks": ["HB-021"],
@@ -181,7 +181,7 @@
181181
{
182182
"id": "HB-021",
183183
"title": "Hook list view: display, create, delete",
184-
"status": "open",
184+
"status": "done",
185185
"epic": "HB-018",
186186
"depends_on": ["HB-020"],
187187
"blocks": ["HB-022"],
@@ -190,7 +190,7 @@
190190
{
191191
"id": "HB-022",
192192
"title": "Request feed: paginated request list per hook",
193-
"status": "open",
193+
"status": "done",
194194
"epic": "HB-018",
195195
"depends_on": ["HB-021"],
196196
"blocks": ["HB-023"],
@@ -199,7 +199,7 @@
199199
{
200200
"id": "HB-023",
201201
"title": "Request inspector: full detail with headers and body",
202-
"status": "open",
202+
"status": "done",
203203
"epic": "HB-018",
204204
"depends_on": ["HB-022"],
205205
"blocks": [],
@@ -231,7 +231,7 @@
231231
"M0: Foundation": { "total": 6, "done": 6 },
232232
"M1: Ingestion": { "total": 4, "done": 4 },
233233
"M2: API": { "total": 4, "done": 4 },
234-
"M3: Dashboard": { "total": 5, "done": 0 },
234+
"M3: Dashboard": { "total": 5, "done": 5 },
235235
"M4: Operations": { "total": 0, "done": 0 },
236236
"M5: Hardening": { "total": 0, "done": 0 }
237237
}

.github/issues/epics/HB-013.json

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
{
2+
"id": "HB-013",
3+
"title": "M2: API — hook CRUD, request listing, request inspection",
4+
"type": "epic",
5+
"status": "ready",
6+
"priority": "critical",
7+
"labels": ["epic", "priority:critical", "api"],
8+
"milestone": "M2: API",
9+
"description": "Implement the full management API for hooks and captured requests. After this milestone, hookbin has a complete REST API: create hooks (already done in M1), list hooks, get/delete individual hooks, list captured requests per hook, and inspect individual requests with full detail. All endpoints return structured JSON with consistent error handling. Pagination support via query parameters.",
10+
"goals": [
11+
"GET /api/hooks lists all hooks with summary info",
12+
"GET /api/hooks/{id} returns full hook details including request count",
13+
"DELETE /api/hooks/{id} removes a hook and all its captured requests (CASCADE)",
14+
"GET /api/hooks/{id}/requests lists captured requests with pagination",
15+
"GET /api/hooks/{id}/requests/{rid} returns full request detail including headers and body"
16+
],
17+
"children": ["HB-014", "HB-015", "HB-016", "HB-017"],
18+
"acceptance_criteria": [
19+
{
20+
"id": "AC-1",
21+
"given": "a running hookbin server with hooks and captured requests",
22+
"when": "using the API to list, inspect, and delete hooks and requests",
23+
"then": "all operations return structured JSON with consistent error handling"
24+
},
25+
{
26+
"id": "AC-2",
27+
"given": "a hook with captured requests",
28+
"when": "deleting the hook via DELETE /api/hooks/{id}",
29+
"then": "the hook and all its requests are removed (CASCADE)"
30+
},
31+
{
32+
"id": "AC-3",
33+
"given": "a hook with many captured requests",
34+
"when": "listing requests with limit and offset query parameters",
35+
"then": "pagination works correctly, returning the requested slice"
36+
}
37+
],
38+
"out_of_scope": [
39+
"Token-based authentication (M5: Hardening)",
40+
"Rate limiting on API endpoints (M4: Operations)",
41+
"Dashboard UI consuming these endpoints (M3: Dashboard)",
42+
"Request replay (M4: Operations)"
43+
]
44+
}

.github/issues/epics/HB-018.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"id": "HB-018",
33
"type": "epic",
44
"title": "M3: Dashboard — embedded web UI, hook list, request feed, request inspector",
5-
"status": "open",
5+
"status": "done",
66
"milestone": "M3: Dashboard",
77
"children": ["HB-019", "HB-020", "HB-021", "HB-022", "HB-023"],
88
"description": "Embedded web dashboard served from the single binary. Vanilla SPA with hash routing, dark theme, developer-oriented UI. No npm, no build tools, no framework.",

.github/issues/stories/m3-dashboard/HB-019.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"id": "HB-019",
33
"type": "story",
44
"title": "Serve embedded static assets via rust-embed",
5-
"status": "open",
5+
"status": "done",
66
"epic": "HB-018",
77
"milestone": "M3: Dashboard",
88
"points": 3,

.github/issues/stories/m3-dashboard/HB-020.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"id": "HB-020",
33
"type": "story",
44
"title": "Dashboard shell: layout, styling, router",
5-
"status": "open",
5+
"status": "done",
66
"epic": "HB-018",
77
"milestone": "M3: Dashboard",
88
"points": 3,

.github/issues/stories/m3-dashboard/HB-021.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"id": "HB-021",
33
"type": "story",
44
"title": "Hook list view: display, create, delete",
5-
"status": "open",
5+
"status": "done",
66
"epic": "HB-018",
77
"milestone": "M3: Dashboard",
88
"points": 5,

.github/issues/stories/m3-dashboard/HB-022.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"id": "HB-022",
33
"type": "story",
44
"title": "Request feed: paginated request list per hook",
5-
"status": "open",
5+
"status": "done",
66
"epic": "HB-018",
77
"milestone": "M3: Dashboard",
88
"points": 5,

.github/issues/stories/m3-dashboard/HB-023.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"id": "HB-023",
33
"type": "story",
44
"title": "Request inspector: full detail with headers and body",
5-
"status": "open",
5+
"status": "done",
66
"epic": "HB-018",
77
"milestone": "M3: Dashboard",
88
"points": 5,

0 commit comments

Comments
 (0)