Private
Public Access
0
0

conductor(tracks): add default_layout_install_20260629 to recently-shipped [7577d7d/35f22e4d/f3cd7bc2/3d87f8e7/3b966288]

This commit is contained in:
2026-06-29 16:54:05 -04:00
parent b80e5afb62
commit cf6a2e20d8
+8
View File
@@ -912,3 +912,11 @@ The 3-step convention is documented here because this is where the existing "Edi
- **Total:** ~35,704 LOC of new content across ~75 atomic commits
**Final report:** [`docs/reports/CAMPAIGN_CLOSE_OUT_video_analysis_20260621.md`](../docs/reports/CAMPAIGN_CLOSE_OUT_video_analysis_20260621.md)
---
## Recently Shipped Tracks (2026-06-29)
| # | Priority | Track | Status | Scope |
|---|----------|-------|--------|-------|
| 36 | A (UX / bugfix) | [Default Layout Install + Hardcoded Path Cleanup + layouts/ Stack](#track-default-layout-install-2026-06-29) | spec ✓, plan ✓, metadata ✓, state ✓, **shipped 2026-06-29** by Tier 2 autonomous mode; 4 phases, 32 tasks, 9 atomic commits; G1-G8 + VC_no_production_path_to_test_fixtures + VC_no_configs_in_src all PASS (17/17 tests); empirical desktop verification (Task 2.9) deferred to post-merge interactive session; deferred follow-ups: (a) `panel_defs_fleury_migration` to declarative `PanelDef` records per Fleury raddbg "type view" pattern, (b) visual-regression via `test_engine_integration_20260627`, (c) additional bundled `layouts/*.ini` variants | (none — independent) | (**NEW 2026-06-29**; bundle of three coupled changes: (1) Phase 1: relocate `tests/artifacts/manualslop_layout_default.ini``layouts/default.ini` (git mv preserves history), add `src/layouts.py` loader module mirroring `src/theme_models.py` + `src/theme_2.py`, add `layouts: Path` field + `SLOP_GLOBAL_LAYOUTS` env override + `get_layouts_dir()` accessor to `src/paths.py` (mirror themes at line 60/83/150/210+), update `tests/conftest.py:709` to read from `layouts/default.ini`; (2) Phase 2: install helper `_install_default_layout_if_empty(src, dst)` + drain `_install_default_layout_if_empty_result` wired into `App._post_init` (runs BEFORE HelloImGui loads the INI), `tests/test_default_layout_install.py` with 3 subprocess-Popen tests covering missing-INI, empty-INI, and custom-preserved-INI scenarios; (3) Phase 3: remove dead `os.path.join("tests", "artifacts", "live_gui_workspace", ...)` path from `src/commands.py:reset_layout` + simplify docstring, `tests/test_reset_layout.py` uses `inspect.getsource` to verify the dead path is gone; sets up the parallel-to-themes home so the eventual Fleury-style PanelDef migration has a home to land; user directive 2026-06-29: "I don't want the codebase ./src to have configuration files" so `.ini` assets stay at repo root not under `src/`; failures observed during execution: Tier 2 working tree inherited forbidden-files-modified state from prior sandbox session (auto-stripped by `pre-commit` hook + bypassed via `git commit <pathspec>` targeted form to commit only intended files) |