Files
yaze/docs/internal
scawful 43a0e5e314 fix(linux): remove yaze_editor dependency from yaze_emu_test to resolve FLAGS symbol conflicts
Resolves Linux build failure where multiple definition of FLAGS_rom and FLAGS_norom
occurred. The yaze_emu_test is a minimal headless test that should not link to
yaze_editor (which pulls in yaze_agent containing flags.cc). The test defines its
own flags (FLAGS_emu_test_rom, etc.) which were conflicting with the agent's flags.

Root cause:
- yaze_emu_test linked to yaze_editor
- yaze_editor links to yaze_agent (when agent UI enabled)
- yaze_agent includes cli/flags.cc with FLAGS_rom/FLAGS_norom definitions
- This created ODR (One Definition Rule) violations with emu_test's own flags

Solution:
- Remove yaze_editor and yaze_app_core_lib dependencies from yaze_emu_test
- Only link minimal dependencies: yaze_emulator, yaze_util, and Abseil flags

Affected platforms: Linux (Ubuntu 22.04 GCC-12)
Related commits: 0812a84a22 (circular dependency fix), 43118254e6 (Windows fix)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 03:03:56 -05:00
..

YAZE Handbook

Internal documentation for planning, AI agents, research, and historical build notes. These files are intentionally excluded from the public Doxygen site so they can remain verbose and speculative without impacting the published docs.

Sections

  • agents/ z3ed and AI agent playbooks, command abstractions, and debugging guides.
  • blueprints/ architectural proposals, refactors, and technical deep dives.
  • roadmaps/ sequencing, feature parity analysis, and postmortems.
  • research/ emulator investigations, timing analyses, web ideas, and development trackers.
  • legacy/ superseded build guides and other historical docs kept for reference.
  • agents/ includes the coordination board, personas, GH Actions remote guide, and helper scripts (scripts/agents/) for common agent workflows.

When adding new internal docs, place them under the appropriate subdirectory here instead of docs/.

Version Control & Safety Guidelines

  • Coordinate before forceful changes: Never rewrite history on shared branches. Use dedicated feature/bugfix branches (see docs/public/developer/git-workflow.md) and keep develop/master clean.
  • Back up ROMs and assets: Treat sample ROMs, palettes, and project files as irreplaceable. Work on copies, and enable the editors automatic backup setting before testing risky changes.
  • Run scripts/verify-build-environment. after pulling significant build changes* to avoid drifting tooling setups.
  • Document risky operations: When touching migrations, asset packers, or scripts that modify files in bulk, add notes under docs/internal/roadmaps/ or blueprints/ so others understand the impact.
  • Use the coordination board for any change that affects multiple personas or large parts of the tree; log blockers and handoffs to reduce conflicting edits.