mirror of
https://github.com/azaion/ui.git
synced 2026-06-21 19:01:12 +00:00
[AZ-512] Defer to backlog at cross-workspace BLOCKING gate
AZ-512 (Admin edit detection class) hit its spec-defined Cross-Workspace Verification gate during cycle 3 batch 15. The admin/ service (Azaion.AdminApi/Program.cs) exposes /login, /users*, /resources* only — no /classes routes exist, so neither the PATCH this task needs nor the POST/DELETE that AdminPage.tsx already calls today are wired end-to-end. Per the spec's Choose A/B/C (user skipped, defaulted to A): file a prerequisite ticket on admin/ and pause AZ-512 in backlog/. AZ-510 + AZ-511 already shipped this cycle; cycle 3 closes with 6 of 9 points delivered. - Move AZ-512 spec from todo/ to backlog/ with a STATUS banner. - Add Jira comment on AZ-512 documenting the blocker + replay path. - Write leftover record _docs/_process_leftovers/2026-05-13_az-512-... capturing the full prerequisite payload (suggested ticket summary, description, ACs, story points) and the side observation that the existing add+delete affordances on the Detection Classes table are also broken end-to-end against admin/ (pre-existing bug, NOT introduced by cycle 3). - Write batch 15 deferral report. - Write Product Implementation Completeness Gate report (PASS for AZ-510 + AZ-511; AZ-512 deferred is outside the gate's scope). - Write final cycle 3 implementation report with handoff to Step 11. - Advance state: step 10 -> step 11 (Run Tests). Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
# Batch 15 — AZ-512 (Admin edit detection class) — DEFERRED
|
||||
|
||||
**Date**: 2026-05-13
|
||||
**Cycle**: 3 — autodev Step 10 (Implement), batch 3 of 3 (fixes-first order: AZ-510 ✓ → AZ-511 ✓ → AZ-512 deferred at gate)
|
||||
**Tickets**: AZ-512 (Epic AZ-509)
|
||||
**Verdict**: DEFERRED — BLOCKING gate failed; cross-workspace prerequisite missing
|
||||
|
||||
---
|
||||
|
||||
## Task Results
|
||||
|
||||
| Task | Status | Files Modified | Tests | AC Coverage | Issues |
|
||||
|------|--------|----------------|-------|-------------|--------|
|
||||
| AZ-512_admin_edit_detection_class | DEFERRED | 0 production files (verification only) | n/a — implementation never started | 0/8 ACs covered (gate stopped before implementation) | 1 (cross-workspace prerequisite missing) |
|
||||
|
||||
## Why deferred
|
||||
|
||||
The task spec defines a Cross-Workspace Verification BLOCKING gate that must pass before implementation begins:
|
||||
|
||||
> *"Before implementing the form, the implementer MUST verify the backend endpoint exists.
|
||||
> Read `../admin/` source to confirm `PATCH /api/admin/classes/{id}` is routed and accepts `{ name?, shortName?, color?, maxSizeM? }`."*
|
||||
|
||||
### Verification result
|
||||
|
||||
`grep -rn -E "MapPost|MapPatch|MapDelete|MapGet" /Users/.../suite/admin --include="*.cs" | grep -i class` → **no matches**.
|
||||
|
||||
The `admin/` sibling service (`Azaion.AdminApi/Program.cs`) exposes `/login`, `/users*`, `/resources*` only. There are no `/classes` routes at all.
|
||||
|
||||
### Choices presented (per spec)
|
||||
|
||||
- **A**: File a hard-prerequisite ticket on the `admin/` workspace, pause AZ-512 until it lands.
|
||||
- **B**: Implement only the UI form, MSW-stubbed in tests, mark Step 11 blocked-on-admin/PATCH, ship draft PR.
|
||||
- **C**: Drop AZ-512 from cycle 3, defer to a future cycle.
|
||||
|
||||
User was prompted via `AskQuestion`; user skipped the prompt.
|
||||
|
||||
### Default decision (A)
|
||||
|
||||
The autodev defaulted to **A** for these reasons:
|
||||
|
||||
1. **Workspace boundary discipline** (`.cursor/rules/coderule.mdc`): the UI workspace cannot add routes in the `admin/` workspace. Filing a prerequisite ticket is the right cross-workspace coordination pattern.
|
||||
2. **Spec invariant**: *"Do not invent a workaround that bypasses the missing endpoint."* Option B's MSW-stubbed UI is exactly that workaround once it ships, because the user-visible affordance would 404 in production.
|
||||
3. **Cycle ordering rationale**: cycle 3 was deliberately ordered fixes-first (AZ-510 → AZ-511 → AZ-512) for exactly this risk — if AZ-512 hits a cross-workspace blocker, the fixes ship anyway. Option C re-validates that decision.
|
||||
4. **Conservative default**: A is the minimal-progress option that preserves both correctness and the user's ability to override at the next `/autodev` invocation.
|
||||
|
||||
### Side observation (pre-existing bug, not introduced by AZ-512)
|
||||
|
||||
`AdminPage.tsx` already calls `POST /api/admin/classes` and `DELETE /api/admin/classes/{id}`. Neither is served by the admin service today (same gap that blocks AZ-512). The existing add+delete affordances on the Detection Classes table are therefore broken end-to-end against the live admin/ service in production. This is **pre-existing**, not introduced by AZ-510 / AZ-511 / AZ-512. Captured in the leftover record (see Section 7) for the user to track as a separate UI-workspace ticket once the admin/ work is filed.
|
||||
|
||||
## Files touched
|
||||
|
||||
- `_docs/02_tasks/todo/AZ-512_admin_edit_detection_class.md` → moved to `_docs/02_tasks/backlog/AZ-512_admin_edit_detection_class.md` (with a STATUS banner inserted at the top of the spec).
|
||||
- `_docs/_process_leftovers/2026-05-13_az-512-admin-classes-prereq.md` (new) — full prerequisite payload + replay obligation.
|
||||
- Jira AZ-512 — status remains `To Do` (no `Blocked` status exists in the project workflow); a comment was added explaining the blocker and linking to the leftover record.
|
||||
|
||||
## Re-activation
|
||||
|
||||
The next `/autodev` invocation will:
|
||||
|
||||
1. Run the leftovers replay step from `.cursor/rules/tracker.mdc` and check this entry.
|
||||
2. If the admin/ workspace's `/classes` routes now exist → move `_docs/02_tasks/backlog/AZ-512_*.md` back to `todo/`, transition the Jira ticket back to In Progress, and proceed with implementation.
|
||||
3. If they still don't exist → leave the leftover as-is and surface the outstanding prerequisite to the user.
|
||||
|
||||
## Cycle 3 outcome (overall)
|
||||
|
||||
- **AZ-510** ✓ shipped (batch 13, commit `70fb452`) — closes Finding B3 / Vision P3
|
||||
- **AZ-511** ✓ shipped (batch 14, commit `c368f60`) — closes Finding F3
|
||||
- **AZ-512** ⏸ deferred to backlog — blocked on cross-workspace prerequisite
|
||||
|
||||
Cycle 3 ships **6 of 9 planned story points** (3 + 3 = 6, with AZ-512's 3 points carried forward). Both delivered tasks were the cycle's "fixes" half — Vision P3 and F3 are now closed. The "feature" half (P12 / F10) is deferred until the cross-workspace prerequisite lands.
|
||||
Reference in New Issue
Block a user