Open Decisions (Appendix C)
These items need resolution during implementation:
-
Config hot-reload. Should
orgloop starton a running daemon cause a hot-reload of config, or require a restart? Recommendation: restart for MVP, hot-reload for v1.1. -
Event ID generation.Resolved (MVP). UUID v4 withevt_prefix + what?evt_prefix (evt_+ 16 hex chars). Trace IDs usetrc_prefix. Implemented in@orgloop/sdkevent.ts. -
Transform timeout handling. What happens when a script transform hangs?Resolved (MVP). Configurabletimeout_msper transform (default 30s in spec, 5s in scaffolded config). Shell script transforms killed on timeout. Implemented in@orgloop/coretransform pipeline. -
Connector authentication. How do connectors authenticate to source APIs?Resolved (MVP). Environment variables referenced in config via${GITHUB_TOKEN}syntax. The schema loader’s env var substitution resolves${VAR_NAME}placeholders at config load time. -
Multi-route matching. Can one event match multiple routes?Resolved (MVP). Yes. An event flows through all matching routes independently. Implemented in@orgloop/corerouter.ts—matchRoutes()returns all matching routes, and the engine processes each one. -
Process management. Should OrgLoop manage itself as a system service? Recommendation: provide a
orgloop service installcommand that generates a launchd plist (macOS) or systemd unit (Linux), but don’t require it. Users can run it however they want.
This specification is a living document. It will be updated as implementation reveals new considerations and as the community provides feedback.