Summary
Transform publicatorg from run-once batch tool to long-running server with incremental builds.
Watch Mode
- Monitor file system for changes (filenotify, or receive explicit signals)
- Debounce rapid changes
- Trigger incremental rebuild
Incremental Intelligence
- Track dependencies at output level (not just note level)
- Rebuild only affected outputs
- Handle transitive dependencies (note A links to B; B changes; A's output may need rebuild)
Status Reporting
- What's currently building
- Build times per output
- Error collection and display
- Progress indication for large builds
Control Interface
- Start/stop server
- Force full rebuild
- Pause/resume watching
- Query build status
State Machine
idle → watching → building → idle
Open Questions
- In-Emacs or separate process?
- How to handle builds that take longer than change frequency?
- External trigger support (git hooks, manual command)?
Summary
Transform publicatorg from run-once batch tool to long-running server with incremental builds.
Watch Mode
Incremental Intelligence
Status Reporting
Control Interface
State Machine
idle → watching → building → idle
Open Questions