6.7 KiB
Release Checklist - feat/http-api-phase2 → master
Release Coordinator: CLAUDE_RELEASE_COORD
Target Commit: 43118254e6 - "fix: apply /std:c++latest unconditionally on Windows for std::filesystem"
CI Run: #485 - https://github.com/scawful/yaze/actions/runs/19529565598
Status: IN_PROGRESS
Last Updated: 2025-11-20 02:50 PST
Critical Context
- Windows std::filesystem build has been BROKEN for 2+ weeks
- Latest fix simplifies approach: apply /std:c++latest unconditionally on Windows
- Multiple platform-specific fixes merged into feat/http-api-phase2 branch
- User demands: "we absolutely need a release soon"
Platform Build Status
Windows Build
- Status: ⏳ IN_PROGRESS (CI Run #485 - Job "Build - Windows 2022 (Core)")
- Previous Failures: std::filesystem compilation errors (runs #480-484)
- Fix Applied: Unconditional /std:c++latest flag in src/util/util.cmake
- Blocker: None (fix deployed, awaiting CI validation)
- Owner: CLAUDE_AIINF
- Test Command:
cmake --preset win-dbg && cmake --build build - CI Job Status: Building...
Linux Build
- Status: ⏳ IN_PROGRESS (CI Run #485 - Job "Build - Ubuntu 22.04 (GCC-12)")
- Previous Failures:
- Circular dependency resolved (commit
0812a84a22) ✅ - FLAGS symbol conflicts in run #19528789779 ❌ (NEW BLOCKER)
- Circular dependency resolved (commit
- Known Issues: FLAGS symbol redefinition (FLAGS_rom, FLAGS_norom, FLAGS_quiet)
- Blocker: CRITICAL - Previous run showed FLAGS conflicts in yaze_emu_test linking
- Owner: CLAUDE_LIN_BUILD (specialist agent monitoring)
- Test Command:
cmake --preset lin-dbg && cmake --build build - CI Job Status: Building...
macOS Build
- Status: ⏳ IN_PROGRESS (CI Run #485 - Job "Build - macOS 14 (Clang)")
- Previous Fixes: z3ed linker error resolved (commit
9c562df277) ✅ - Previous Run: PASSED in run #19528789779 ✅
- Known Issues: None active
- Blocker: None
- Owner: CLAUDE_MAC_BUILD (specialist agent confirmed stable)
- Test Command:
cmake --preset mac-dbg && cmake --build build - CI Job Status: Building...
HTTP API Validation
Phase 2 Implementation Status
- Status: ✅ COMPLETE (validated locally on macOS)
- Scope: cmake/options.cmake, src/cli/cli_main.cc, src/cli/service/api/
- Endpoints Tested:
- ✅ GET /api/v1/health → 200 OK
- ✅ GET /api/v1/models → 200 OK (empty list expected)
- CI Testing: ⏳ PENDING (enable_http_api_tests=false for this run)
- Documentation: ✅ Complete (src/cli/service/api/README.md)
- Owner: CLAUDE_AIINF
Test Execution Status
Unit Tests
- Status: ⏳ TESTING (CI Run #485)
- Expected: All pass (no unit test changes in this branch)
Integration Tests
- Status: ⏳ TESTING (CI Run #485)
- Expected: All pass (platform fixes shouldn't break integration)
E2E Tests
- Status: ⏳ TESTING (CI Run #485)
- Expected: All pass (no UI changes)
GO/NO-GO Decision Criteria
GREEN LIGHT (GO) Requirements
- ✅ All 3 platforms build successfully in CI
- ✅ All test suites pass on all platforms
- ✅ No new compiler warnings introduced
- ✅ HTTP API validated on at least one platform (already done: macOS)
- ✅ No critical security issues introduced
- ✅ All coordination board blockers resolved
RED LIGHT (NO-GO) Triggers
- ❌ Any platform build failure
- ❌ Test regression on any platform
- ❌ New critical warnings/errors
- ❌ Security vulnerabilities detected
- ❌ Unresolved blocker from coordination board
Current Blockers
ACTIVE BLOCKERS
BLOCKER #1: Linux FLAGS Symbol Conflicts (CRITICAL)
- Status: ⚠️ UNDER OBSERVATION (waiting for CI run #485 results)
- First Seen: CI Run #19528789779
- Description: Multiple definition of FLAGS_rom and FLAGS_norom; undefined FLAGS_quiet
- Impact: Blocks yaze_emu_test linking on Linux
- Root Cause: flags.cc compiled into agent library without ODR isolation
- Owner: CLAUDE_LIN_BUILD
- Resolution Plan: If persists in run #485, requires agent library linking fix
- Severity: CRITICAL - blocks Linux release
BLOCKER #2: Code Quality - clang-format violations
- Status: ❌ FAILED (CI Run #485)
- Description: Formatting violations in test_manager.h, editor_manager.h, menu_orchestrator.cc
- Impact: Non-blocking for release (cosmetic), but should be fixed before merge
- Owner: TBD
- Resolution Plan: Run
cmake --build build --target formatbefore merge - Severity: LOW - does not block release, can be fixed in follow-up
RESOLVED BLOCKERS
✅ Windows std::filesystem compilation - Fixed in commit 43118254e6
✅ Linux circular dependency - Fixed in commit 0812a84a22
✅ macOS z3ed linker error - Fixed in commit 9c562df277
Release Merge Plan
When GREEN LIGHT Achieved:
- Verify CI run #485 passes all jobs
- Run smoke build verification:
scripts/agents/smoke-build.sh {preset} {target}on all platforms - Update coordination board with final status
- Create merge commit:
git checkout develop && git merge feat/http-api-phase2 --no-ff - Run final test suite:
scripts/agents/run-tests.sh {preset} - Merge to master:
git checkout master && git merge develop --no-ff - Tag release:
git tag -a v0.x.x -m "Release v0.x.x - Windows std::filesystem fix + HTTP API Phase 2" - Push with tags:
git push origin master develop --tags - Trigger release workflow: CI will automatically build release artifacts
If RED LIGHT (Failure):
- Identify failing job in CI run #485
- Assign to specialized agent:
- Windows failures → CLAUDE_AIINF (Windows Build Specialist)
- Linux failures → CLAUDE_AIINF (Linux Build Specialist)
- macOS failures → CLAUDE_AIINF (macOS Build Specialist)
- Test failures → CLAUDE_CORE (Test Specialist)
- Create emergency fix on feat/http-api-phase2 branch
- Trigger new CI run and update this checklist
- Repeat until GREEN LIGHT
Monitoring Protocol
CLAUDE_RELEASE_COORD will check CI status every 5 minutes and update coordination board with:
- Platform build progress (queued/in_progress/success/failure)
- Test execution status
- Any new blockers discovered
- ETA to GREEN LIGHT decision
Next Steps
- ⏳ Monitor CI run #485 - https://github.com/scawful/yaze/actions/runs/19529565598
- ⏳ Wait for Windows build job to complete (critical validation)
- ⏳ Wait for Linux build job to complete
- ⏳ Wait for macOS build job to complete
- ⏳ Wait for test jobs to complete on all platforms
- ⏳ Make GO/NO-GO decision
- ⏳ Execute merge plan if GREEN LIGHT
Coordination Board: docs/internal/agents/coordination-board.md
Build Reference: docs/public/build/quick-reference.md
HTTP API Docs: src/cli/service/api/README.md