[AZ-560] [AZ-561] [AZ-562] Replay tracker leftovers for testability epic

Atlassian MCP came back online; per tracker.mdc Leftovers Mechanism
the deferred Jira writes for the testability refactor have been
replayed:

  - Epic AZ-560 created — 01-testability-refactoring (annotations)
  - Task AZ-561 created — JWKS HTTPS env gate (was C01, 1 pt)
  - Task AZ-562 created — RabbitMQ host DNS resolution (C02, 2 pt)

Both tasks linked to epic AZ-560 with status To Do and full
descriptions matching the in-tree task specs. The implementation
code (commit 90d48cf) and verification (commit d7d1c0e) predate
these tickets — the tickets are after-the-fact tracker hygiene.

File housekeeping:
  - Renamed _docs/02_tasks/done/01_*.md -> AZ-561_*.md and updated
    the Task / Tracker / Epic headers inside.
  - Renamed _docs/02_tasks/done/02_*.md -> AZ-562_*.md and updated
    the Task / Tracker / Epic headers inside.
  - _docs/02_tasks/_dependencies_table.md rewritten to reference
    the assigned Jira IDs and the completed-batch status.
  - _docs/_autodev_state.md: tracker mode flipped from `local` to
    `jira` now that all pending writes succeeded.
  - Deleted _docs/_process_leftovers/2026-05-14_testability-tracker.md
    (replay complete; nothing left to defer).

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Oleksandr Bezdieniezhnykh
2026-05-14 20:42:30 +03:00
parent d7d1c0ed6a
commit 637f41c51c
5 changed files with 15 additions and 85 deletions
+7 -9
View File
@@ -2,17 +2,15 @@
Tracks ordering and inter-task dependencies for all task specs in `_docs/02_tasks/todo/`. Updated by the decompose / refactor / new-task skills whenever a task is added or completed.
## Current Tasks (cycle 1 testability refactor)
## Completed — cycle 1, testability refactor (epic AZ-560)
| # | Task File | Component | Complexity | Depends on | Notes |
|---|-----------|-----------|-----------|------------|-------|
| 01 | `01_refactor_jwks_https_env_gate.md` | `06_platform` → Auth (`src/Auth/JwtExtensions.cs`) | 1 | None | C01 from `_docs/04_refactoring/01-testability-refactoring/list-of-changes.md` |
| 02 | `02_refactor_rabbitmq_host_dns_resolution.md` | `02_annotations-realtime-sync` (`src/Services/FailsafeProducer.cs`) | 2 | None | C02 from `_docs/04_refactoring/01-testability-refactoring/list-of-changes.md` |
| Task | Title | Component | Complexity | Depends on | Notes |
|------|-------|-----------|-----------|------------|-------|
| [AZ-561](https://denyspopov.atlassian.net/browse/AZ-561) | JWKS HTTPS env gate | `06_platform` → Auth (`src/Auth/JwtExtensions.cs`) | 1 | None | C01 from `_docs/04_refactoring/01-testability-refactoring/list-of-changes.md` — landed in commit 90d48cf |
| [AZ-562](https://denyspopov.atlassian.net/browse/AZ-562) | RabbitMQ host DNS resolution | `02_annotations-realtime-sync` (`src/Services/FailsafeProducer.cs`) | 2 | None | C02 from `_docs/04_refactoring/01-testability-refactoring/list-of-changes.md` — landed in commit 90d48cf |
## Independent Tasks
Tasks 01 and 02 touch disjoint files and have no inter-dependency. They may be implemented in parallel or in either order; the implement skill is free to batch them together.
Tasks AZ-561 and AZ-562 touch disjoint files and were implemented as a single batch.
## Tracker Status
`tracker: local` (per `_docs/_autodev_state.md`). Tracker writes are recorded in `_docs/_process_leftovers/2026-05-14_testability-tracker.md` for replay when Atlassian MCP is restored. On replay, each `PENDING_*` task ID in the file headers must be renamed to its assigned `AZ-NNNN` Jira issue key.
`tracker: jira` (per `_docs/_autodev_state.md`). All task headers carry their Jira issue key. The deferred-write leftover at `_docs/_process_leftovers/2026-05-14_testability-tracker.md` was replayed on 2026-05-14 and removed.
@@ -1,13 +1,13 @@
# Refactor: gate JWKS HTTPS requirement on `ASPNETCORE_ENVIRONMENT=E2ETest`
**Task**: PENDING_refactor_jwks_https_env_gate
**Task**: AZ-561_refactor_jwks_https_env_gate
**Name**: JWKS HTTPS env gate
**Description**: Gate the JWKS document retriever's `RequireHttps` flag on the ASP.NET Core environment name so the e2e test harness (which serves the mock issuer over plain HTTP on the test-only docker network) can fetch the public key set without weakening production HTTPS enforcement.
**Complexity**: 1 point
**Dependencies**: None
**Component**: `06_platform` → Auth (`src/Auth/JwtExtensions.cs`)
**Tracker**: pending (tracker MCP unavailable at task-creation time — see `_docs/_process_leftovers/2026-05-14_testability-tracker.md`)
**Epic**: pending`01-testability-refactoring`
**Tracker**: AZ-561
**Epic**: AZ-560`01-testability-refactoring (annotations)`
## Problem
@@ -1,13 +1,13 @@
# Refactor: resolve RabbitMQ broker host via DNS in `FailsafeProducer`
**Task**: PENDING_refactor_rabbitmq_host_dns_resolution
**Task**: AZ-562_refactor_rabbitmq_host_dns_resolution
**Name**: RabbitMQ host DNS resolution
**Description**: Replace `IPAddress.Parse(config.Host)` with a hostname-aware resolver (literal-IP shortcut + `Dns.GetHostAddressesAsync` fallback) so the `FailsafeProducer` outbox-drain loop can reach the broker when `RABBITMQ_HOST` is a DNS service name — which is the documented test configuration and the production-normal configuration for any container deployment.
**Complexity**: 2 points
**Dependencies**: None
**Component**: `02_annotations-realtime-sync``FailsafeProducer` (`src/Services/FailsafeProducer.cs`)
**Tracker**: pending (tracker MCP unavailable at task-creation time — see `_docs/_process_leftovers/2026-05-14_testability-tracker.md`)
**Epic**: pending`01-testability-refactoring`
**Tracker**: AZ-562
**Epic**: AZ-560`01-testability-refactoring (annotations)`
## Problem