Commit Graph

113 Commits

Author SHA1 Message Date
Loic Coenen
e3b9321b1a fix: remove unused variable and suppress cppcheck warnings
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 19:00:13 +00:00
Loic Coenen
015ad2c5a7 chore: add trailing space to CFLAGS in makefile 2026-05-10 19:00:11 +00:00
Loic Coenen
c8b9de8e81 fix: reopen FIFO on EOF to prevent blocking on subsequent writes
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 18:39:10 +00:00
Loic Coenen
1ba98fc768 fix: prevent hang in scene add/remove test and fix unsafe scene copy
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 18:34:26 +00:00
Loic Coenen
4dfb7a87c1 fix: correct state access in MIDI clock handling
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 18:24:48 +00:00
Loic Coenen
8892acd3d2 refactor: split integration.c into modular test files
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 18:22:38 +00:00
Loic Coenen
7b00246443 feat: implement scene infrastructure for multi-scene looper support
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 18:00:32 +00:00
Loic Coenen
44177f785f style: fix code formatting in channel.c and midi.c 2026-05-10 18:00:29 +00:00
Loic Coenen
94d6bc25f1 test: add scene integration tests for add/remove/next/prev via FIFO and MIDI
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 17:42:45 +00:00
Loic Coenen
86d9bc72f1 style: reformat long lines in looper.c for readability 2026-05-10 16:36:15 +00:00
Loic Coenen
0be6cfb31d fix: move persistent MIDI client init/cleanup into each test
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 13:19:14 +00:00
Loic Coenen
de8202a0d2 fix: use persistent JACK client for MIDI injection to avoid race conditions
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 13:05:42 +00:00
Loic Coenen
fe3fb7d873 fix: reduce main loop sleep to 1ms and add polling in tests
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 12:53:15 +00:00
Loic Coenen
ffe422d83f fix: poll for burst stabilization in MIDI stop test
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 12:36:13 +00:00
Loic Coenen
5b1969415f fix: increase wait time and tolerance in MIDI stop test
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 12:21:33 +00:00
Loic Coenen
91d58a07f5 fix: allow up to 2 extra bursts after MIDI stop in test
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 12:18:08 +00:00
Loic Coenen
4e489b5e40 docs: add MIDI looping documentation and update evaluation
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 11:54:00 +00:00
Loic Coenen
df5ecef580 feat: add FIFO add_midi command and integration tests for FIFO stop/bind/unbind and MIDI channel creation
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 11:46:04 +00:00
Loic Coenen
df181b117e fix: correct MIDI channel processing and port cleanup
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 11:37:04 +00:00
Loic Coenen
ff226a8ea6 feat: add per-channel MIDI looping support
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 11:29:41 +00:00
Loic Coenen
85e828f461 style: reformat comments and code for consistent indentation 2026-05-10 11:29:39 +00:00
Loic Coenen
19b686fe2d docs: add arbitrary number of channels documentation and update evaluation
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 10:55:25 +00:00
Loic Coenen
0691594a92 docs: add documentation for arbitrary number of channels 2026-05-10 10:55:23 +00:00
Loic Coenen
9da4481300 fix: defer freeing old channel array until RT thread sees new pointer
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 10:50:03 +00:00
Loic Coenen
b7827e7311 fix: reset channel state on stop to prevent burst continuation
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 10:45:33 +00:00
Loic Coenen
595a35ec32 fix: correct atomic pointer declaration syntax
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 10:42:20 +00:00
Loic Coenen
5739ff8019 feat: remove hard limit on number of channels
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 10:38:59 +00:00
Loic Coenen
3a4aac3356 Documentation 2026-05-10 01:12:07 +00:00
Loic Coenen
69859a6294 docs: add command architecture documentation
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 01:11:47 +00:00
Loic Coenen
d47fddbeb3 docs: add command architecture documentation 2026-05-10 01:11:46 +00:00
Loic Coenen
900619a714 12-command-art 2026-05-10 01:08:11 +00:00
Loic Coenen
98c851f051 test: add MIDI stop and full record-loop-stop integration tests
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 00:37:21 +00:00
Loic Coenen
011d29cb09 docs: update evaluation.md with final code review
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 00:21:57 +00:00
Loic Coenen
be3188bbe2 fix: keep FIFO fd open across both writes to prevent hang
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-10 00:16:03 +00:00
Loic Coenen
c592c24634 feat: add MIDI stop command and FIFO pipe integration test
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 23:56:09 +00:00
Loic Coenen
7b61384154 docs: update evaluation.md with current code analysis
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 23:55:07 +00:00
Loic Coenen
7edd95d06e fix: split main command queue into per-source SPSC queues
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 23:32:21 +00:00
Loic Coenen
de0389e144 feat: remove MIDI-driven add/remove channel commands to fix SPSC race
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 23:12:53 +00:00
Loic Coenen
bd5fd59b7b fix: add missing source files to build
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 22:51:13 +00:00
Loic Coenen
b1e330e839 refactor: remove stale cmd_add/cmd_remove declarations from channel.h
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 22:20:35 +00:00
Loic Coenen
437ac31913 feat: unify add/remove commands into queue and fix race on channel removal
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 22:03:11 +00:00
Loic Coenen
a8a9c6164b docs: update evaluation.md with detailed code review and recommendations
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 21:35:38 +00:00
Loic Coenen
392dabbc0f feat: add command queue and FIFO pipe for unified input handling
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 21:31:54 +00:00
Loic Coenen
f7f18f9fa7 style: fix formatting and include order in source files 2026-05-09 21:31:52 +00:00
Loic Coenen
72839a9e5f Merge remote-tracking branch 'origin/multichannel' 2026-05-09 19:55:36 +00:00
Loic Coenen
d6336970bf Merge branch 'multichannel' 2026-05-09 19:54:08 +00:00
Loic Coenen
8c061f93cd delete main.c 2026-05-09 19:52:10 +00:00
2b4531f3f3 Merge pull request '1-multichannel' (#1) from 1-multichannel into multichannel
Reviewed-on: #1
2026-05-09 15:47:08 -04:00
Loic Coenen
b4a65a5788 chore: add git hooks 2026-05-09 14:47:04 +00:00
Loic Coenen
20c0820910 refactor: use explicit pointer casts to clarify type conversions
Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
2026-05-09 14:46:09 +00:00