mirror of
https://github.com/azaion/gps-denied-onboard.git
synced 2026-06-22 19:41:14 +00:00
[AZ-777] Refresh spec to match codebase reality (cycle-3 batch 104)
Cycle-3 /autodev session discovered material drift between the prior
session's rewritten AZ-777 spec and current codebase reality. Refreshed
the spec, re-synced Jira (description + summary updated, status
unchanged at In Progress), appended an addendum to the 2026-05-21
decision log capturing the findings, and slimmed the state file to
the conciseness rule.
Findings reconciled:
- Tier-1 (docker-compose.test.yml) is deprecated per 2026-05-20 env
policy; original Phase 1 mods there are out of scope.
- Jetson compose ALREADY has satellite-provider + satellite-provider
-postgres services (lineage AZ-688 / AZ-691 / AZ-692). No new
service definitions needed; only e2e-runner env block.
- Port / protocol: 8080 HTTPS (self-signed dev cert), not 5101 HTTP.
- C11 contract drift: _LIST_PATH/_GET_PATH constants in
tile_downloader.py don't match the real /api/satellite/tiles
/inventory + /tiles/{z}/{x}/{y} endpoints. Phase 1 now includes
C11 contract adaptation (the largest single sub-deliverable).
- arm64 manifest of mcr.microsoft.com/dotnet/aspnet:10.0 verified;
Risk 3 closed.
- mock-sat retired from Jetson + D-PROJ-2 /api/satellite/upload
shipped on parent; mock-sat retention closed.
8-pt complexity unchanged. Single-ticket containment preserved.
Phase boundaries (STOP gates) preserved. No code changed yet —
this commit is spec / state / decision-log only; next /autodev
session executes Phase 1.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -44,3 +44,24 @@ The "single ticket" property is preserved as long as work proceeds linearly. If
|
||||
This is NOT a tracker write blocker — Jira is reachable and the AZ-777 description + story points update is being made in the same /autodev turn that this decision log is being written. This file is the AUDIT TRAIL for the override, not a deferred-write record.
|
||||
|
||||
No replay action required on subsequent /autodev invocations. The file can be deleted once AZ-777 is moved to `done/`, but it's small enough that keeping it as historical documentation of the decision is fine.
|
||||
|
||||
## 2026-05-21 spec-refresh addendum (cycle-3 batch 104)
|
||||
|
||||
The /autodev session that was supposed to execute Phase 1 instead discovered material drift between the prior session's rewritten spec and current codebase reality. Findings:
|
||||
|
||||
- **Tier-1 is deprecated** per `_docs/02_document/tests/environment.md` 2026-05-20 active policy. The original Phase 1 explicitly modified `docker-compose.test.yml` — that file is now out of scope.
|
||||
- **Jetson compose already has the real satellite-provider service** (`satellite-provider` + `satellite-provider-postgres`, lineage AZ-688 / AZ-691 / AZ-692; no local task spec files for those tickets — they were closed Jira-side without local /decompose output). Original spec said "add service" — already there.
|
||||
- **Port / protocol mismatch**: original spec said port 5101 HTTP; actual is 8080 HTTPS with self-signed dev cert (per Dockerfile `EXPOSE 8080` + Jetson compose `ASPNETCORE_URLS: https://+:8080`).
|
||||
- **DB naming**: original spec said `satellite-provider-db`; existing convention is `satellite-provider-postgres`.
|
||||
- **`mock-sat` already retired** from Jetson compose. D-PROJ-2 / `POST /api/satellite/upload` has shipped on the real satellite-provider (`Program.cs:211`). `MOCK_SAT_UPLOAD_URL` env var that the original spec proposed retaining doesn't exist in source code at all.
|
||||
- **C11 contract drift surfaced**: C11's `_LIST_PATH = /api/satellite/tiles` and `_GET_PATH = /api/satellite/tiles` constants in `tile_downloader.py:61-62` do NOT match the real satellite-provider API. Actual endpoints (`Program.cs:187-209`):
|
||||
- `POST /api/satellite/tiles/inventory` (bulk lookup by `(z,x,y)` or `locationHashes` per `tile-inventory.md` v1.0.0)
|
||||
- `GET /tiles/{z}/{x}/{y}` (slippy-map tile fetch)
|
||||
Phase 1 now includes C11 contract adaptation — this is the largest single sub-deliverable of the refreshed Phase 1 and explains why the 8-pt budget stays appropriate even after dropping the Tier-1 mods.
|
||||
- **arm64 manifest verified**: `mcr.microsoft.com/dotnet/aspnet:10.0` has a multi-arch manifest including arm64 (per `docker manifest inspect`). Risk 3 of the original spec (cross-compile follow-up) is **CLOSED** — no follow-up ticket needed.
|
||||
|
||||
The user chose option A from the spec-reconciliation Choose block: refresh the spec to match reality, re-sync Jira, then proceed with the corrected Phase 1 in a fresh session.
|
||||
|
||||
The 8-pt complexity stays. Phase boundaries (STOP gates between phases) preserved. Single-ticket containment preserved.
|
||||
|
||||
Both this addendum and the canonical local spec at `_docs/02_tasks/todo/AZ-777_derkachi_c6_reference_fixture.md` were updated in the same /autodev turn that synced the refresh to Jira.
|
||||
|
||||
Reference in New Issue
Block a user