From dbae0cad5b262d5d43da115e7281b8be03febf36 Mon Sep 17 00:00:00 2001 From: Oleksandr Bezdieniezhnykh Date: Tue, 19 May 2026 06:35:47 +0300 Subject: [PATCH] [autodev] Backfill batch_90_cycle1_report.md for AZ-619 Prior session committed AZ-619 (Phase A of AZ-618) as 8abfb02, transitioned the tracker, and archived the spec, but did not write the batch report. Content reconstructed from git show + the AZ-619 task spec + the prior _docs/_autodev_state.md sub_step.detail. No code change. Pure audit-trail housekeeping. Co-authored-by: Cursor --- ...-620_pre_constructed_phase_b_c6_storage.md | 0 .../batch_90_cycle1_report.md | 52 +++++++++++++++++++ 2 files changed, 52 insertions(+) rename _docs/02_tasks/{todo => done}/AZ-620_pre_constructed_phase_b_c6_storage.md (100%) create mode 100644 _docs/03_implementation/batch_90_cycle1_report.md diff --git a/_docs/02_tasks/todo/AZ-620_pre_constructed_phase_b_c6_storage.md b/_docs/02_tasks/done/AZ-620_pre_constructed_phase_b_c6_storage.md similarity index 100% rename from _docs/02_tasks/todo/AZ-620_pre_constructed_phase_b_c6_storage.md rename to _docs/02_tasks/done/AZ-620_pre_constructed_phase_b_c6_storage.md diff --git a/_docs/03_implementation/batch_90_cycle1_report.md b/_docs/03_implementation/batch_90_cycle1_report.md new file mode 100644 index 0000000..4b71baf --- /dev/null +++ b/_docs/03_implementation/batch_90_cycle1_report.md @@ -0,0 +1,52 @@ +# Batch 90 Report — AZ-619 Phase A: build_pre_constructed seeds c13_fdr + clock (cycle 1) + +**Batch**: 90 +**Date**: 2026-05-19 +**Context**: Product implementation (greenfield Step 7 — Implement; AZ-618 umbrella, Phase A of 6) +**Tasks**: AZ-619 (2 cp) — 1 task +**Cycle**: 1 +**Verdict**: COMPLETE — PASS (committed as `8abfb02`) +**Note**: Report backfilled retroactively — the prior session committed code, transitioned tracker, and archived the spec but did not write this report. Content reconstructed from the commit (`git show 8abfb02`), the task spec in `_docs/02_tasks/done/AZ-619_pre_constructed_phase_a_c13_fdr_clock.md`, and the prior `_docs/_autodev_state.md` `sub_step.detail`. + +## Summary + +First of six subtasks decomposing the AZ-618 umbrella ("airborne_bootstrap pre-constructed dict"). Phase A introduces the public entry-point `build_pre_constructed(config) -> dict[str, Any]` and seeds the two foundational keys (`c13_fdr`, `clock`). Phases B..F (AZ-620..AZ-624) extend this function additively without breaking the AZ-619 contract. + +### AZ-619 — build_pre_constructed Phase A (2 cp) + +* **`src/gps_denied_onboard/runtime_root/airborne_bootstrap.py`** — new public `build_pre_constructed(config)` plus two internal builders: + * `_build_c13_fdr(config) -> FdrClient` via `make_fdr_client("airborne_main", config)`. Per-producer cache makes the instance identity-stable across calls (AC-619.2). + * `_build_clock(config) -> WallClock`. Replay-mode override is not done here — `compose_root` merges `replay_components` over `pre_constructed`, replacing `WallClock` with `TlogDerivedClock` in replay binaries (existing contract). +* **New module constant** `AIRBORNE_MAIN_PRODUCER_ID = "airborne_main"` for the producer ID used by the bootstrap FdrClient. +* **`__all__`** updated to export `build_pre_constructed`. + +## Out of scope (deferred) + +* All other 10 keys in `AIRBORNE_REQUIRED_PRE_CONSTRUCTED_KEYS` — AZ-620 (c6 storage), AZ-621 (c7 inference), AZ-622 (c3 runtimes), AZ-623 (RANSAC + c5 helpers). +* `runtime_root.main()` integration + full AC-1..AC-5 umbrella verification — AZ-624. +* Mandatory-Tier-2 Jetson run — consolidated at AZ-624 to avoid 6 separate Jetson runs for one feature (per `_docs/02_document/tests/tier2-jetson-testing.md`). + +## Test Results + +* New unit tests: **5** under `tests/unit/runtime_root/test_az619_pre_constructed_phase_a.py` covering AC-619.1 (required minimum keys present with correct types) and AC-619.2 (`c13_fdr` identity stability across calls). +* Combined run with AZ-591 regression: **12/12 passed** (no regression in the registry seam). +* No new linter errors introduced. + +## File Ownership + +* OWNED (component `runtime_root`): + * `src/gps_denied_onboard/runtime_root/airborne_bootstrap.py` + * `tests/unit/runtime_root/test_az619_pre_constructed_phase_a.py` +* READ-ONLY: `runtime_root` imports from `fdr_client` (`make_fdr_client`) and `clock` (`WallClock`) Public APIs only. +* No FORBIDDEN-zone writes. + +## State + +* Spec moved: `_docs/02_tasks/todo/AZ-619_pre_constructed_phase_a_c13_fdr_clock.md` → `_docs/02_tasks/done/`. +* Commit: `8abfb02 [AZ-619] Phase A: build_pre_constructed seeds c13_fdr + clock`. +* Tracker: AZ-619 transitioned to **In Testing**. +* `_docs/_autodev_state.md` advanced to `last_completed_batch: 90`. + +## Next Batch + +* **Batch 91**: AZ-620 (3 cp) — Phase B of AZ-618 umbrella. Adds `c6_descriptor_index` (DescriptorIndex) and `c6_tile_store` (TileStore) keys to `build_pre_constructed`, plus an `AirborneBootstrapError` path when a BUILD-flag mismatch leaves a consuming component without its dependency.