refactor: scaffold module registries and default-module layout
Additive change — existing code paths still run via inline fallbacks. Prepares core for per-module extractions in PR #3 onward. Four registries added with empty defaults: - delivery action handlers (delivery.ts) - router inbound gate (router.ts) - response dispatcher (index.ts) - MCP tool self-registration (container/agent-runner/src/mcp-tools/server.ts) Default modules moved to src/modules/ for signaling: - src/modules/typing/ (extracted from delivery.ts) - src/modules/mount-security/ (moved from src/mount-security.ts) Both are imported directly by core — no hook, no registry. Removal requires editing core imports. Migrator now keys applied rows by name (uniqueness) so module migrations can pick arbitrary version numbers. Stored version column is auto-assigned as an applied-order sequence. sqlite_master guards added around core calls into module-owned tables (user_roles, agent_destinations, pending_questions). No-ops today; load-bearing after the owning modules are extracted. MODULE-HOOK markers placed at scheduling's two skill-edit sites (host-sweep.ts recurrence call, poll-loop.ts pre-task gate). PR #4 replaces the marked blocks when scheduling moves to its module. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
16
src/modules/index.ts
Normal file
16
src/modules/index.ts
Normal file
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
* Modules barrel.
|
||||
*
|
||||
* Each module self-registers at import time. This barrel is imported by
|
||||
* src/index.ts for side effects (registry registrations, typing impl setup,
|
||||
* etc.). Core runs with an empty barrel — the registries have inline
|
||||
* fallbacks and `sqlite_master` guards.
|
||||
*
|
||||
* Default modules (ship with main, direct core import):
|
||||
* - src/modules/typing/ → imported directly by router/delivery/container-runner
|
||||
* - src/modules/mount-security/ → imported directly by container-runner
|
||||
*
|
||||
* Registry-based modules (installed via /add-<name> skills, pulled from the
|
||||
* `modules` branch): append imports below.
|
||||
*/
|
||||
export {};
|
||||
Reference in New Issue
Block a user