# Track state for default_layout_install_20260629 # Updated by Tier 2 Tech Lead as tasks complete [meta] track_id = "default_layout_install_20260629" name = "Default Layout Install + Hardcoded Path Cleanup + layouts/ Stack" status = "completed" current_phase = "complete (post-ship errata shipped via default_layout_install_followup_20260629; TRACK_COMPLETION has a FOLLOWUP note pointing at the followup commits 2afb0126 + 79c25a32 + 5e53d477)" last_updated = "2026-06-29" [blocked_by] # None. This track is independent. [blocks] # None. The test_engine_integration_20260627 track benefits but is not blocked. [phases] phase_1 = { status = "completed", checkpoint_sha = "7577d7d", name = "Move default layout to layouts/ + create src/layouts.py stack (mirror themes/)" } phase_2 = { status = "completed", checkpoint_sha = "3d87f8e7", name = "Install-on-empty-INI in App._post_init" } phase_3 = { status = "completed", checkpoint_sha = "3b966288", name = "Remove hardcoded test-fixture path from production code" } phase_4 = { status = "completed", checkpoint_sha = "519e1340", name = "Verification + checkpoint" } [tasks] # Phase 1 (10 tasks) t1_1 = { status = "completed", commit_sha = "(audit, no commit)", description = "Verify bundled layout content + themes pattern baseline" } t1_2 = { status = "completed", commit_sha = "7577d7d", description = "git mv tests/artifacts/manualslop_layout_default.ini -> layouts/default.ini" } t1_3 = { status = "completed", commit_sha = "7577d7d", description = "Update tests/conftest.py:709 to layouts/default.ini" } t1_4 = { status = "completed", commit_sha = "7577d7d", description = "Add `layouts: Path` to src/paths.py config dataclass (mirror themes line 60)" } t1_5 = { status = "completed", commit_sha = "7577d7d", description = "Resolve layouts = root_dir / 'layouts' in src/paths.py (mirror line 83)" } t1_6 = { status = "completed", commit_sha = "7577d7d", description = "Add SLOP_GLOBAL_LAYOUTS env + config override in src/paths.py (mirror line 150)" } t1_7 = { status = "completed", commit_sha = "7577d7d", description = "Add get_layouts_dir() accessor to src/paths.py (mirror line 210-216)" } t1_8 = { status = "completed", commit_sha = "7577d7d", description = "Create src/layouts.py loader module (mirror src/theme_models.py + src/theme_2.py)" } t1_9 = { status = "completed", commit_sha = "7577d7d", description = "Verify src/layouts.py imports + returns empty dict cleanly" } t1_10 = { status = "completed", commit_sha = "7577d7d", description = "Commit phase 1 with git note (relocation + layouts/ stack + future Fleury target)" } # Phase 2 (9 tasks) t2_1 = { status = "completed", commit_sha = "35f22e4d", description = "Write 3 failing tests in tests/test_default_layout_install.py" } t2_2 = { status = "completed", commit_sha = "35f22e4d", description = "Confirm RED (tests fail for install-logic-missing reason)" } t2_3 = { status = "completed", commit_sha = "f3cd7bc2", description = "Implement _install_default_layout_if_empty helper in src/gui_2.py" } t2_4 = { status = "completed", commit_sha = "3d87f8e7", description = "Wire helper into App._post_init BEFORE _diag_layout_state" } t2_5 = { status = "completed", commit_sha = "f3cd7bc2", description = "Add drain helper _install_default_layout_if_empty_result per data-oriented convention" } t2_6 = { status = "completed", commit_sha = "35f22e4d", description = "Confirm GREEN (all 3 tests pass); orchestrator re-verified after worker delegation" } t2_7 = { status = "completed", commit_sha = "35f22e4d", description = "Run adjacent tests/test_gui*.py batch (8/8 PASSED)" } t2_8 = { status = "completed", commit_sha = "3d87f8e7", description = "Commit phase 2 with git note (helpers + wiring)" } t2_9 = { status = "deferred", commit_sha = "", description = "User Manual Verification — DEFERRED to post-merge interactive session (requires desktop screenshot observation, cannot be performed in headless Tier 2 sandbox)" } # Phase 3 (7 tasks) t3_1 = { status = "completed", commit_sha = "3b966288", description = "Write tests/test_reset_layout.py failing test for path cleanup" } t3_2 = { status = "completed", commit_sha = "3b966288", description = "Confirm RED (test reads source via inspect and asserts dead path is gone)" } t3_3 = { status = "completed", commit_sha = "3b966288", description = "Remove hardcoded tests/artifacts/... line from src/commands.py:reset_layout" } t3_4 = { status = "completed", commit_sha = "3b966288", description = "Update commands.reset_layout docstring (line 351-362)" } t3_5 = { status = "completed", commit_sha = "3b966288", description = "Confirm GREEN — 2/2 PASSED" } t3_6 = { status = "completed", commit_sha = "3b966288", description = "Run tests/test_commands*.py batch — 6/6 PASSED" } t3_7 = { status = "completed", commit_sha = "3b966288", description = "Commit phase 3 with git note" } # Phase 4 (6 tasks) t4_1 = { status = "pending", commit_sha = "", description = "Run batched verification per workflow.md §Phase Completion Verification" } t4_2 = { status = "pending", commit_sha = "", description = "Empirical reproduction of original bug (production cwd, manual)" } t4_3 = { status = "pending", commit_sha = "", description = "Phase 4 checkpoint commit + verification git note" } t4_4 = { status = "pending", commit_sha = "", description = "Append phase checkpoint SHAs to plan.md" } t4_5 = { status = "pending", commit_sha = "", description = "Commit final plan update" } t4_6 = { status = "pending", commit_sha = "", description = "Add row to conductor/tracks.md + commit in same batch" } [verification] phase_4_g1_install_on_empty_ini = false phase_4_g2_overrides_cleared = false phase_4_g3_path_cleanup = false phase_4_g4_regression_tests = false phase_4_g5_layouts_at_root = false phase_4_g6_paths_layouts_field = false phase_4_g7_src_layouts_py = false phase_4_g8_conftest_path_update = false phase_4_no_test_paths_in_src = false phase_4_no_configs_in_src = false phase_4_user_signoff = false