From e06039957928c7e2113887e802a07e0a2891b256 Mon Sep 17 00:00:00 2001 From: Ed_ Date: Tue, 16 Jun 2026 18:51:42 -0400 Subject: [PATCH] conductor(plan): add state.toml for tier2_autonomous_sandbox track 44 tasks across 9 phases, all pending. Tracks: - failcount unit test progression (13 target) - slash command spec tests (11 target) - report writer tests (4 opt-in) - bootstrap test (1 opt-in) - sandbox enforcement test (1 opt-in) - smoke e2e test (1 opt-in, double gate) Enforcement stack contract: 9 flags tracking the 4 git bans + filesystem boundary + 3 hook installs + OpenCode deny rules + Windows restricted token. Final verification requires all 9 enforcement flags = true. status: active, current_phase: 0, blocked_by: none, blocks: none --- .../state.toml | 132 ++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 conductor/tracks/tier2_autonomous_sandbox_20260616/state.toml diff --git a/conductor/tracks/tier2_autonomous_sandbox_20260616/state.toml b/conductor/tracks/tier2_autonomous_sandbox_20260616/state.toml new file mode 100644 index 00000000..68f2f179 --- /dev/null +++ b/conductor/tracks/tier2_autonomous_sandbox_20260616/state.toml @@ -0,0 +1,132 @@ +# Track state for tier2_autonomous_sandbox_20260616 +# Updated by Tier 2 Tech Lead as tasks complete + +[meta] +track_id = "tier2_autonomous_sandbox_20260616" +name = "Tier 2 Autonomous Sandbox (unattended track execution with bounded blast radius)" +status = "active" +current_phase = 0 +last_updated = "2026-06-16" + +[blocked_by] +# None - independent track (per spec ยง1.1) + +[blocks] +# None - this is a meta-tooling track; no follow-ups planned in this spec + +[phases] +phase_1 = { status = "pending", checkpointsha = "", name = "failcount Module + Tests (TDD red/green)" } +phase_2 = { status = "pending", checkpointsha = "", name = "Failure Report Writer" } +phase_3 = { status = "pending", checkpointsha = "", name = "Slash Command + Agent Profile + Spec Test" } +phase_4 = { status = "pending", checkpointsha = "", name = "CLI Entry Point (run_track.py)" } +phase_5 = { status = "pending", checkpointsha = "", name = "PowerShell Bootstrap (setup_tier2_clone.ps1)" } +phase_6 = { status = "pending", checkpointsha = "", name = "PowerShell Sandbox Launcher (run_tier2_sandboxed.ps1)" } +phase_7 = { status = "pending", checkpointsha = "", name = "Git Hooks" } +phase_8 = { status = "pending", checkpointsha = "", name = "Opt-in Tests (Sandbox Enforcement + Smoke E2E)" } +phase_9 = { status = "pending", checkpointsha = "", name = "User Guide + Final Verification" } + +[tasks] +# Phase 1: failcount Module + Tests +t1_1 = { status = "pending", commit_sha = "", description = "Create the scripts/tier2/ package directory" } +t1_2 = { status = "pending", commit_sha = "", description = "Write test_initial_state_zero (red)" } +t1_3 = { status = "pending", commit_sha = "", description = "Implement FailcountState + FailcountConfig dataclasses (green)" } +t1_4 = { status = "pending", commit_sha = "", description = "Create the default failcount.toml" } +t1_5 = { status = "pending", commit_sha = "", description = "Write test_red_phase_failure_increments (red)" } +t1_6 = { status = "pending", commit_sha = "", description = "Implement record_red_failure (green)" } +t1_7 = { status = "pending", commit_sha = "", description = "Write + implement test_green_success_resets_red_counter" } +t1_8 = { status = "pending", commit_sha = "", description = "Write + implement test_green_phase_failure_increments" } +t1_9 = { status = "pending", commit_sha = "", description = "Write + implement test_no_progress_advances" } +t1_10 = { status = "pending", commit_sha = "", description = "Write + implement test_no_progress_resets_on_commit and test_no_progress_resets_on_green" } +t1_11 = { status = "pending", commit_sha = "", description = "Write + implement test_threshold_fires_at_three and test_threshold_does_not_fire_at_two" } +t1_12 = { status = "pending", commit_sha = "", description = "Write + implement test_multi_signal_independence and test_any_signal_triggers" } +t1_13 = { status = "pending", commit_sha = "", description = "Write + implement test_state_persistence_round_trip" } +t1_14 = { status = "pending", commit_sha = "", description = "Write + implement test_configurable_thresholds" } +t1_15 = { status = "pending", commit_sha = "", description = "Implement load_state and save_state with atomic write" } +t1_16 = { status = "pending", commit_sha = "", description = "Verify 100% coverage on failcount.py + User Manual Verification" } + +# Phase 2: Failure Report Writer +t2_1 = { status = "pending", commit_sha = "", description = "Write test_report_path_is_correct (red)" } +t2_2 = { status = "pending", commit_sha = "", description = "Implement compute_report_path, compute_stopped_flag_path, TaskResult (green)" } +t2_3 = { status = "pending", commit_sha = "", description = "Write test_report_has_7_sections (red)" } +t2_4 = { status = "pending", commit_sha = "", description = "Implement write_failure_report with 7 sections + flag (green)" } + +# Phase 3: Slash Command + Agent Profile + Spec Test +t3_1 = { status = "pending", commit_sha = "", description = "Create the tier-2-auto-execute.md slash command template" } +t3_2 = { status = "pending", commit_sha = "", description = "Create the tier2-autonomous.md agent template" } +t3_3 = { status = "pending", commit_sha = "", description = "Create the opencode.json.fragment config template" } +t3_4 = { status = "pending", commit_sha = "", description = "Write test_tier2_slash_command_spec.py (11 contract assertions)" } +t3_5 = { status = "pending", commit_sha = "", description = "User Manual Verification (Phase 3)" } + +# Phase 4: CLI Entry Point (run_track.py) +t4_1 = { status = "pending", commit_sha = "", description = "Create run_track.py skeleton with argparse" } +t4_2 = { status = "pending", commit_sha = "", description = "Wire in git fetch + branch creation" } +t4_3 = { status = "pending", commit_sha = "", description = "User Manual Verification (Phase 4)" } + +# Phase 5: PowerShell Bootstrap (setup_tier2_clone.ps1) +t5_1 = { status = "pending", commit_sha = "", description = "Create the bootstrap script skeleton with -WhatIf" } +t5_2 = { status = "pending", commit_sha = "", description = "User Manual Verification (Phase 5)" } + +# Phase 6: PowerShell Sandbox Launcher (run_tier2_sandboxed.ps1) +t6_1 = { status = "pending", commit_sha = "", description = "Create the launcher skeleton (restricted token, Job Object)" } +t6_2 = { status = "pending", commit_sha = "", description = "User Manual Verification (Phase 6)" } + +# Phase 7: Git Hooks +t7_1 = { status = "pending", commit_sha = "", description = "Create pre-push hook (refuses all pushes)" } +t7_2 = { status = "pending", commit_sha = "", description = "Create post-checkout hook (detection only)" } + +# Phase 8: Opt-in Tests +t8_1 = { status = "pending", commit_sha = "", description = "Add tier2_sandbox and tier2_smoke markers to pyproject.toml" } +t8_2 = { status = "pending", commit_sha = "", description = "Create the trivial smoke track (spec + plan)" } +t8_3 = { status = "pending", commit_sha = "", description = "Create test_tier2_setup_bootstrap.py (opt-in, -WhatIf)" } +t8_4 = { status = "pending", commit_sha = "", description = "Create test_tier2_sandbox_enforcement.py (opt-in, pre-push hook)" } +t8_5 = { status = "pending", commit_sha = "", description = "Create test_tier2_smoke_e2e.py (opt-in, double gate)" } +t8_6 = { status = "pending", commit_sha = "", description = "User Manual Verification (Phase 8)" } + +# Phase 9: User Guide + Final Verification +t9_1 = { status = "pending", commit_sha = "", description = "Create the user guide (docs/guide_tier2_autonomous.md)" } +t9_2 = { status = "pending", commit_sha = "", description = "Update conductor/tracks.md with the new track" } +t9_3 = { status = "pending", commit_sha = "", description = "Create metadata.json (already committed 2026-06-16 in commit 6a26713d)" } +t9_4 = { status = "pending", commit_sha = "", description = "Final User Manual Verification (full track)" } + +[verification] +# Filled as phases complete. The metadata.json's verification_criteria is the source of truth. +phase_1_failcount_tests_pass = false +phase_2_report_writer_tests_pass = false +phase_3_slash_command_spec_pass = false +phase_4_cli_entry_point_runs = false +phase_5_bootstrap_whatif_works = false +phase_6_sandbox_launcher_runs = false +phase_7_git_hooks_installed = false +phase_8_optin_tests_pass = false +phase_9_user_guide_complete = false +default_pytest_app_focused = false +optin_sandbox_tests_under_env_var = false +optin_smoke_tests_under_double_env_var = false +metadata_json_valid = true + +[test_progress] +# Track the test count as the track progresses +failcount_unit_tests_target = 13 +failcount_unit_tests_passing = 0 +slash_command_spec_tests_target = 11 +slash_command_spec_tests_passing = 0 +report_writer_tests_target = 4 +report_writer_tests_passing = 0 +bootstrap_tests_target = 1 +bootstrap_tests_passing = 0 +sandbox_enforcement_tests_target = 1 +sandbox_enforcement_tests_passing = 0 +smoke_e2e_tests_target = 1 +smoke_e2e_tests_passing = 0 + +[enforcement_stack] +# The 3-layer enforcement contract that must be verified at the end +git_push_ban_enforced = false +git_checkout_ban_enforced = false +git_restore_ban_enforced = false +git_reset_ban_enforced = false +filesystem_boundary_enforced = false +pre_push_hook_installed = false +post_checkout_hook_installed = false +opencode_deny_rules_in_clone = false +windows_restricted_token_acquired = false