backend-infra-engineer: Release v0.3.9-hotfix7 snapshot
This commit is contained in:
326
docs/internal/plans/GEMINI3_HANDOFF.md
Normal file
326
docs/internal/plans/GEMINI3_HANDOFF.md
Normal file
@@ -0,0 +1,326 @@
|
||||
# Gemini 3 Handoff Document
|
||||
|
||||
**Date**: 2024-11-22
|
||||
**Prepared by**: Claude (Sonnet 4.5)
|
||||
**Previous agents**: Gemini 3 (interrupted), Claude 4.5, GPT-OSS 120
|
||||
|
||||
## TL;DR
|
||||
|
||||
Your work was interrupted and left ~112 uncommitted files scattered across the workspace. I've organized everything into 5 logical branches based on your original `branch_organization.md` plan. All branches are ready for review and merging.
|
||||
|
||||
## What Happened
|
||||
|
||||
1. You (Gemini 3) started work on multiple features simultaneously
|
||||
2. You created `docs/internal/plans/branch_organization.md` outlining how to split the work
|
||||
3. You were interrupted before completing the organization
|
||||
4. Claude 4.5 and GPT-OSS 120 attempted to help but left things partially done
|
||||
5. I (Claude Sonnet 4.5) completed the reorganization
|
||||
|
||||
## Current Branch State
|
||||
|
||||
```
|
||||
master (0d18c521a1) ─┬─► feature/agent-ui-improvements (29931139f5)
|
||||
├─► infra/ci-test-overhaul (aa411a5d1b)
|
||||
├─► test/e2e-dungeon-coverage (28147624a3)
|
||||
├─► chore/misc-cleanup (ed396f7498)
|
||||
├─► fix/overworld-logic (00fef1169d)
|
||||
└─► backup/all-uncommitted-work-2024-11-22 (5e32a8983f)
|
||||
```
|
||||
|
||||
Also preserved:
|
||||
- `feature/debugger-disassembler` (2a88785e25) - Your original debugger work
|
||||
|
||||
---
|
||||
|
||||
## Branch Details
|
||||
|
||||
### 1. `feature/agent-ui-improvements` (19 files, +5183/-141 lines)
|
||||
|
||||
**Purpose**: Agent UI enhancements and new dev assist tooling
|
||||
|
||||
**Key Changes**:
|
||||
| File | Change Type | Description |
|
||||
|------|-------------|-------------|
|
||||
| `agent_chat_widget.cc` | Modified | Enhanced chat UI with better UX |
|
||||
| `agent_editor.cc` | Modified | Editor improvements |
|
||||
| `proposal_drawer.cc` | Modified | Better proposal display |
|
||||
| `dev_assist_agent.cc/.h` | **New** | Development assistance agent |
|
||||
| `tool_dispatcher.cc/.h` | Modified | New tool dispatch capabilities |
|
||||
| `tools/build_tool.cc/.h` | **New** | Build system integration tool |
|
||||
| `tools/filesystem_tool.cc/.h` | **New** | File operations tool |
|
||||
| `tools/memory_inspector_tool.cc/.h` | **New** | Memory debugging tool |
|
||||
| `emulator_service_impl.cc/.h` | Modified | Enhanced emulator integration |
|
||||
| `prompt_builder.cc` | Modified | AI prompt improvements |
|
||||
| `tool_dispatcher_test.cc` | **New** | Integration tests |
|
||||
|
||||
**Dependencies**: None - can be merged independently
|
||||
|
||||
**Testing needed**:
|
||||
```bash
|
||||
cmake --preset mac-dbg
|
||||
ctest --test-dir build -R "tool_dispatcher"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 2. `infra/ci-test-overhaul` (23 files, +3644/-263 lines)
|
||||
|
||||
**Purpose**: CI/CD and test infrastructure modernization
|
||||
|
||||
**Key Changes**:
|
||||
| File | Change Type | Description |
|
||||
|------|-------------|-------------|
|
||||
| `ci.yml` | Modified | Improved CI workflow |
|
||||
| `release.yml` | Modified | Better release process |
|
||||
| `nightly.yml` | **New** | Scheduled nightly builds |
|
||||
| `AGENTS.md` | Modified | Agent coordination updates |
|
||||
| `CLAUDE.md` | Modified | Build/test guidance |
|
||||
| `CI-TEST-STRATEGY.md` | **New** | Test strategy documentation |
|
||||
| `CI-TEST-AUDIT-REPORT.md` | **New** | Audit findings |
|
||||
| `ci-and-testing.md` | **New** | Comprehensive CI guide |
|
||||
| `test-suite-configuration.md` | **New** | Test config documentation |
|
||||
| `coordination-board.md` | **New** | Agent coordination board |
|
||||
| `test/README.md` | Modified | Test organization guide |
|
||||
| `test/test.cmake` | Modified | CMake test configuration |
|
||||
|
||||
**Dependencies**: None - should be merged FIRST
|
||||
|
||||
**Testing needed**:
|
||||
```bash
|
||||
# Verify workflows are valid YAML
|
||||
python3 -c "import yaml; yaml.safe_load(open('.github/workflows/ci.yml'))"
|
||||
python3 -c "import yaml; yaml.safe_load(open('.github/workflows/nightly.yml'))"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 3. `test/e2e-dungeon-coverage` (18 files, +3379/-39 lines)
|
||||
|
||||
**Purpose**: Comprehensive dungeon editor test coverage
|
||||
|
||||
**Key Changes**:
|
||||
| File | Change Type | Description |
|
||||
|------|-------------|-------------|
|
||||
| `dungeon_canvas_interaction_test.cc/.h` | **New** | Canvas click/drag tests |
|
||||
| `dungeon_e2e_tests.cc/.h` | **New** | Full workflow E2E tests |
|
||||
| `dungeon_layer_rendering_test.cc/.h` | **New** | Layer visibility tests |
|
||||
| `dungeon_object_drawing_test.cc/.h` | **New** | Object rendering tests |
|
||||
| `dungeon_visual_verification_test.cc/.h` | **New** | Visual regression tests |
|
||||
| `dungeon_editor_system_integration_test.cc` | Modified | System integration |
|
||||
| `dungeon_object_rendering_tests.cc` | Modified | Object render validation |
|
||||
| `dungeon_rendering_test.cc` | Modified | Rendering pipeline |
|
||||
| `dungeon_room_test.cc` | Modified | Room data validation |
|
||||
| `object_rendering_test.cc` | Modified | Unit test updates |
|
||||
| `room.cc` | Modified | Minor bug fix |
|
||||
| `dungeon-gui-test-design.md` | **New** | Test design document |
|
||||
|
||||
**Dependencies**: Merge after `infra/ci-test-overhaul` for test config
|
||||
|
||||
**Testing needed**:
|
||||
```bash
|
||||
cmake --preset mac-dbg
|
||||
ctest --test-dir build -R "dungeon" -L stable
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 4. `chore/misc-cleanup` (39 files, +7924/-127 lines)
|
||||
|
||||
**Purpose**: Documentation, architecture docs, misc cleanup
|
||||
|
||||
**Key Changes**:
|
||||
| Category | Files | Description |
|
||||
|----------|-------|-------------|
|
||||
| Architecture Docs | `docs/internal/architecture/*` | dungeon_editor_system, message_system, music_system |
|
||||
| Plan Docs | `docs/internal/plans/*` | Various roadmaps and plans |
|
||||
| Dev Guides | `GEMINI_DEV_GUIDE.md`, `ai-asm-debugging-guide.md` | Developer guides |
|
||||
| Build System | `src/CMakeLists.txt`, `editor_library.cmake` | Build config updates |
|
||||
| App Core | `controller.cc`, `main.cc` | Application updates |
|
||||
| Style System | `src/app/gui/style/theme.h` | **New** UI theming |
|
||||
| Unit Tests | `test/unit/*` | Various test updates |
|
||||
|
||||
**Dependencies**: Merge LAST - may need rebasing
|
||||
|
||||
**Testing needed**:
|
||||
```bash
|
||||
cmake --preset mac-dbg
|
||||
ctest --test-dir build -L stable
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 5. `fix/overworld-logic` (2 files, +10/-5 lines)
|
||||
|
||||
**Purpose**: Small fixes to overworld tests
|
||||
|
||||
**Key Changes**:
|
||||
- `overworld_integration_test.cc` - Integration test fixes
|
||||
- `overworld_test.cc` - Unit test fixes
|
||||
|
||||
**Dependencies**: None
|
||||
|
||||
**Testing needed**:
|
||||
```bash
|
||||
ctest --test-dir build -R "overworld"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Recommended Merge Order
|
||||
|
||||
```
|
||||
1. infra/ci-test-overhaul # Sets up CI/test infrastructure
|
||||
↓
|
||||
2. test/e2e-dungeon-coverage # Uses new test config
|
||||
↓
|
||||
3. feature/agent-ui-improvements # Independent feature
|
||||
↓
|
||||
4. fix/overworld-logic # Small fix
|
||||
↓
|
||||
5. chore/misc-cleanup # Docs and misc (rebase first)
|
||||
```
|
||||
|
||||
### Merge Commands
|
||||
|
||||
```bash
|
||||
# 1. Merge CI infrastructure
|
||||
git checkout master
|
||||
git merge --no-ff infra/ci-test-overhaul -m "Merge infra/ci-test-overhaul: CI/CD and test infrastructure"
|
||||
|
||||
# 2. Merge dungeon tests
|
||||
git merge --no-ff test/e2e-dungeon-coverage -m "Merge test/e2e-dungeon-coverage: Dungeon E2E test suite"
|
||||
|
||||
# 3. Merge agent UI
|
||||
git merge --no-ff feature/agent-ui-improvements -m "Merge feature/agent-ui-improvements: Agent UI and tools"
|
||||
|
||||
# 4. Merge overworld fix
|
||||
git merge --no-ff fix/overworld-logic -m "Merge fix/overworld-logic: Overworld test fixes"
|
||||
|
||||
# 5. Rebase and merge cleanup (may have conflicts)
|
||||
git checkout chore/misc-cleanup
|
||||
git rebase master
|
||||
# Resolve any conflicts
|
||||
git checkout master
|
||||
git merge --no-ff chore/misc-cleanup -m "Merge chore/misc-cleanup: Documentation and cleanup"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Potential Conflicts
|
||||
|
||||
### Between branches:
|
||||
- `chore/misc-cleanup` touches `src/CMakeLists.txt` which other branches may also modify
|
||||
- Both `infra/ci-test-overhaul` and `chore/misc-cleanup` touch documentation
|
||||
|
||||
### With master:
|
||||
- If master advances, all branches may need rebasing
|
||||
- The `CLAUDE.md` changes in `infra/ci-test-overhaul` should be reviewed carefully
|
||||
|
||||
---
|
||||
|
||||
## Untracked Files (Need Manual Decision)
|
||||
|
||||
These were NOT committed to any branch:
|
||||
|
||||
| File/Directory | Recommendation |
|
||||
|----------------|----------------|
|
||||
| `.tmp/` | **Delete** - Contains ZScreamDungeon embedded repo |
|
||||
| `third_party/bloaty` | **Decide** - Should be submodule or in .gitignore |
|
||||
| `CIRCULAR_DEPENDENCY_ANALYSIS.md` | **Delete** - Temporary analysis |
|
||||
| `CIRCULAR_DEPENDENCY_FIX_REPORT.md` | **Delete** - Temporary report |
|
||||
| `FIX_CIRCULAR_DEPS.patch` | **Delete** - Temporary patch |
|
||||
| `debug_crash.lldb` | **Delete** - Debug artifact |
|
||||
| `fix_dungeon_colors.py` | **Delete** - One-off script |
|
||||
| `test_grpc_server.sh` | **Keep?** - Test utility |
|
||||
|
||||
### Cleanup Commands
|
||||
```bash
|
||||
# Remove temporary files
|
||||
rm -f CIRCULAR_DEPENDENCY_ANALYSIS.md CIRCULAR_DEPENDENCY_FIX_REPORT.md
|
||||
rm -f FIX_CIRCULAR_DEPS.patch debug_crash.lldb fix_dungeon_colors.py
|
||||
|
||||
# Remove embedded repos (careful!)
|
||||
rm -rf .tmp/
|
||||
|
||||
# Add to .gitignore if needed
|
||||
echo ".tmp/" >> .gitignore
|
||||
echo "third_party/bloaty/" >> .gitignore
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Stash Contents (For Reference)
|
||||
|
||||
```bash
|
||||
$ git stash list
|
||||
stash@{0}: WIP on feature/ai-test-infrastructure
|
||||
stash@{1}: WIP on feature/ai-infra-improvements
|
||||
stash@{2}: Release workflow artifact path fix
|
||||
stash@{3}: WIP on develop (Windows OpenSSL)
|
||||
stash@{4}: WIP on feat/gemini-unified-fix
|
||||
```
|
||||
|
||||
To view a stash:
|
||||
```bash
|
||||
git stash show -p stash@{0}
|
||||
```
|
||||
|
||||
These may contain work that was already incorporated into the branches, or may have unique changes. Review before dropping.
|
||||
|
||||
---
|
||||
|
||||
## The Original Plan (For Reference)
|
||||
|
||||
Your original plan from `branch_organization.md` was:
|
||||
|
||||
1. `feature/debugger-disassembler` - ✅ Already had commit
|
||||
2. `infra/ci-test-overhaul` - ✅ Now populated
|
||||
3. `test/e2e-dungeon-coverage` - ✅ Now populated
|
||||
4. `feature/agent-ui-improvements` - ✅ Now populated
|
||||
5. `fix/overworld-logic` - ✅ Now populated
|
||||
6. `chore/misc-cleanup` - ✅ Now populated
|
||||
|
||||
---
|
||||
|
||||
## UI Modernization Context
|
||||
|
||||
You also had `ui_modernization.md` which outlines the component-based architecture pattern. Key points:
|
||||
|
||||
- New editors should follow `DungeonEditorV2` pattern
|
||||
- Use `EditorDependencies` struct for dependency injection
|
||||
- Use `ImGuiWindowClass` for docking groups
|
||||
- Use `EditorCardRegistry` for tool windows
|
||||
- `UICoordinator` is the central hub for app-level UI
|
||||
|
||||
The agent UI improvements in `feature/agent-ui-improvements` should align with these patterns.
|
||||
|
||||
---
|
||||
|
||||
## Safety Net
|
||||
|
||||
If anything goes wrong, the backup branch has EVERYTHING:
|
||||
|
||||
```bash
|
||||
# Restore everything from backup
|
||||
git checkout backup/all-uncommitted-work-2024-11-22
|
||||
|
||||
# Or cherry-pick specific files
|
||||
git checkout backup/all-uncommitted-work-2024-11-22 -- path/to/file
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Questions for You
|
||||
|
||||
1. Should `third_party/bloaty` be a git submodule?
|
||||
2. Should `.tmp/` be added to `.gitignore`?
|
||||
3. Are the stashed changes still needed, or can they be dropped?
|
||||
4. Do you want PRs created for review, or direct merges?
|
||||
|
||||
---
|
||||
|
||||
## Contact
|
||||
|
||||
This document is in `docs/internal/plans/GEMINI3_HANDOFF.md` on the `chore/misc-cleanup` branch.
|
||||
|
||||
Good luck! 🚀
|
||||
Reference in New Issue
Block a user