| Age | Commit message (Collapse) | Author |
|
Updated documentation to reflect completed build system improvements:
TODO.md:
- Moved Task C to 'Recently Completed (February 6, 2026)' section
- Documented header split (asset_manager_dcl/core/utils)
- Documented asset dependency tracking (42 demo + 17 test assets)
- Noted 58% performance improvement and critical correctness bug fix
- Removed Task C from 'Critical Fixes' section (completed)
PROJECT_CONTEXT.md:
- Added 'Milestone: Build System Optimization (February 6, 2026)' section
- Detailed header refactoring strategy and asset dependency implementation
- Explained critical bug: shader changes weren't triggering rebuilds
- Documented workaround elimination (no more 'touch demo_assets.txt')
HOWTO.md:
- Added 'Build System Notes' section after developer build instructions
- Explained incremental build behavior and asset tracking
- Documented header organization (dcl/core/utils) for developers
- Clarified that all asset types (.wgsl, .spec, .obj) are tracked
All documentation now accurately reflects current build system state.
Ready to begin next task: Spectrogram Editor (HTML).
|
|
Completed final cleanup phase of Audio Lifecycle Refactor. Removed backwards
compatibility shims and updated documentation to reflect new AudioEngine-based
initialization patterns.
Changes:
1. Removed Backwards Compatibility:
- Removed synth_init() call from audio_init() in audio.cc
- Added comment explaining AudioEngine is the preferred initialization method
- All tests already explicitly call synth_init() or use AudioEngine
2. Documentation Updates:
- Updated HOWTO.md with AudioEngine usage examples and best practices
- Updated CONTRIBUTING.md with audio subsystem initialization protocols
- Documented when to use AudioEngine vs direct synth API calls
- Clarified that AudioEngine is a lifecycle manager, not a complete facade
3. Size Verification:
- Size-optimized build: 5.0MB (vs 6.2MB debug)
- AudioEngine overhead: <500 bytes (within acceptable limits)
- No size regression from refactor
Results:
- All 20 tests pass (100% pass rate)
- Demo runs successfully
- No backwards compatibility issues
- Clear documentation for future development
- Binary size impact negligible
Design Philosophy:
- AudioEngine manages initialization order (synth before tracker)
- Direct synth API calls remain valid for performance-critical paths
- Low-level tests can still use synth_init() directly if needed
- Preferred pattern: Use AudioEngine for lifecycle, direct APIs for operations
handoff(Claude): Completed Task #56 Phase 4 - All phases complete! Audio
Lifecycle Refactor is fully implemented, tested, and documented. The
fragile initialization order dependency has been eliminated.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
|
|
Updated gen_coverage_report.sh to accept an optional argument for targeting specific directories using lcov --extract.
|
|
Added CMake support for coverage builds and a script to generate HTML reports using lcov on macOS. Also cleaned up .gitignore.
|
|
|
|
- Task A: Centralized all generated code (assets, timeline) into a single directory to create a single source of truth.
- Task A: Isolated test asset generation into a temporary build directory, preventing pollution of the main source tree.
- Task B: Vertically compacted all C/C++ source files by removing superfluous newlines.
- Task C: Created a top-level README.md with project overview and file descriptions.
- Task D: Moved non-essential documentation into a directory to reduce root-level clutter.
|