Phase 4: Add modular graph editor and transactional graph edits
This commit is contained in:
parent
2ecc03b482
commit
5c41d7f6da
27 changed files with 1023 additions and 64 deletions
|
|
@ -18,7 +18,7 @@ make gui
|
|||
core/offline tests, concurrent plan-handoff stress, JACK fault injection
|
||||
(when JACK headers are available), and the startup check. `debug` builds and tests separately in
|
||||
`build/debug`. `gui` builds the FLTK shell with backend controls and status.
|
||||
The shell starts a silent engine and never connects physical ports. Generated files remain under `build` and header changes trigger rebuilds.
|
||||
The shell starts with a silent graph and never connects physical ports. Generated files remain under `build` and header changes trigger rebuilds.
|
||||
Compiler, flags, `BUILD_DIR`, `PKG_CONFIG`, `FLTK_CONFIG`, and installation
|
||||
`PREFIX` can be overridden through Make variables. C uses C99; GUI uses C++17.
|
||||
|
||||
|
|
@ -92,8 +92,25 @@ exit-time font allocations; see tests/integration/README.md for the distinction
|
|||
and command. No compiler warnings remain with GCC or Clang. Core/backend tests
|
||||
pass with unsuppressed ASan/UBSan. No packages or system configuration changed.
|
||||
|
||||
## Phase 4 verification
|
||||
|
||||
```sh
|
||||
make clean all test gui debug test-gui test-gui-jack
|
||||
make BUILD_DIR=build/nojack PKG_CONFIG=false all test gui test-gui
|
||||
```
|
||||
|
||||
The normal suite adds test_graph_edits for stable IDs, dense snapshots,
|
||||
transactional rejection/deletion/disconnect and known rendered samples before
|
||||
and after edits. Core/backend/realtime tests pass under unsuppressed Clang
|
||||
ASan/UBSan; ThreadSanitizer passes the concurrent handoff test with revision-to-
|
||||
gain checks. GUI ASan/UBSan tests pass with the existing fontconfig-only leak
|
||||
suppression. Live GUI tests build a connected graph, adopt accepted edits during
|
||||
playback, reject cycles, reconnect and close active clients. Mouse/visual smoke
|
||||
checks cover node creation, wiring, cycle rejection, dragging and deletion.
|
||||
No physical routes, new dependencies or system changes are introduced.
|
||||
|
||||
## Next milestone
|
||||
|
||||
Phase 4 implements the modular graph editor and submits validated graph edits
|
||||
through the C API. Physical playback/endurance, project persistence and
|
||||
sequencing remain unverified/unimplemented as applicable.
|
||||
Phase 5 adds versioned project persistence and the sequencer foundation, stable
|
||||
track/clip IDs and timeline editing. Physical-device playback/endurance remains
|
||||
unverified; graph parameters are fixed GUI presets and undo/zoom are not present.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue