agent-enderun 1.1.2 → 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{.enderun/ENDERUN.md → ENDERUN.md} +25 -25
- package/README.md +6 -6
- package/bin/compile.js +13 -14
- package/bin/enderun-dashboard.js +866 -0
- package/bin/generate-cursor-rules.js +78 -0
- package/bin/test-init-run.js +37 -26
- package/bin/validate-agent-army.js +65 -67
- package/bin/watch-memory.js +54 -0
- package/dist/framework-mcp/src/index.js +1 -1
- package/dist/framework-mcp/src/tools/control_plane/locking.d.ts +15 -0
- package/dist/framework-mcp/src/tools/control_plane/locking.js +65 -0
- package/dist/framework-mcp/src/tools/control_plane/locking.js.map +1 -0
- package/dist/framework-mcp/src/tools/control_plane/registry.d.ts +12 -0
- package/dist/framework-mcp/src/tools/control_plane/registry.js +35 -0
- package/dist/framework-mcp/src/tools/control_plane/registry.js.map +1 -0
- package/dist/framework-mcp/src/tools/definitions.js +46 -7
- package/dist/framework-mcp/src/tools/definitions.js.map +1 -1
- package/dist/framework-mcp/src/tools/file_system/write_file.js +16 -2
- package/dist/framework-mcp/src/tools/file_system/write_file.js.map +1 -1
- package/dist/framework-mcp/src/tools/index.d.ts +1 -1
- package/dist/framework-mcp/src/tools/index.js +5 -0
- package/dist/framework-mcp/src/tools/index.js.map +1 -1
- package/dist/framework-mcp/src/tools/messaging/send_message.d.ts +1 -1
- package/dist/framework-mcp/src/tools/messaging/send_message.js +2 -4
- package/dist/framework-mcp/src/tools/messaging/send_message.js.map +1 -1
- package/dist/framework-mcp/src/utils/metrics.d.ts +10 -0
- package/dist/framework-mcp/src/utils/metrics.js +39 -0
- package/dist/framework-mcp/src/utils/metrics.js.map +1 -0
- package/dist/framework-mcp/src/utils/security.js +7 -3
- package/dist/framework-mcp/src/utils/security.js.map +1 -1
- package/dist/init-adapters/antigravity-cli/.agents/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/antigravity-cli/.agents/STATUS.md +3 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/analyst/agent.json +28 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/architect/agent.json +30 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/backend/agent.json +30 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/database/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/devops/agent.json +28 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/explorer/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/frontend/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/git/agent.json +28 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/manager/agent.json +30 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/mobile/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/native/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/quality/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/agents/security/agent.json +29 -0
- package/dist/init-adapters/antigravity-cli/.agents/cli-commands.json +32 -0
- package/dist/init-adapters/antigravity-cli/.agents/config.json +12 -0
- package/dist/init-adapters/antigravity-cli/.agents/mcp_config.json +13 -0
- package/dist/init-adapters/antigravity-cli/.agents/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/discovery.md +3 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/editing.md +3 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/execution.md +4 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/file_system.md +4 -0
- package/dist/init-adapters/antigravity-cli/.agents/skills/orchestration.md +3 -0
- package/dist/init-adapters/antigravity-cli/AGENTS.md +1 -0
- package/dist/init-adapters/antigravity-cli/ENDERUN.md +263 -0
- package/dist/init-adapters/antigravity-cli/mcp.json +13 -0
- package/dist/init-adapters/antigravity-cli/package.json +5 -0
- package/dist/init-adapters/antigravity-cli/panda.config.ts +2 -0
- package/dist/init-adapters/claude/.claude/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/claude/.claude/STATUS.md +3 -0
- package/dist/init-adapters/claude/.claude/agents/analyst.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/architect.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/backend.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/database.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/devops.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/explorer.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/frontend.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/git.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/manager.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/mobile.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/native.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/quality.md +15 -0
- package/dist/init-adapters/claude/.claude/agents/security.md +15 -0
- package/dist/init-adapters/claude/.claude/cli-commands.json +32 -0
- package/dist/init-adapters/claude/.claude/config.json +12 -0
- package/dist/init-adapters/claude/.claude/mcp_config.json +13 -0
- package/dist/init-adapters/claude/.claude/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/claude/.claude/skills/discovery.md +3 -0
- package/dist/init-adapters/claude/.claude/skills/editing.md +3 -0
- package/dist/init-adapters/claude/.claude/skills/execution.md +4 -0
- package/dist/init-adapters/claude/.claude/skills/file_system.md +4 -0
- package/dist/init-adapters/claude/.claude/skills/orchestration.md +3 -0
- package/dist/init-adapters/claude/.mcp.json +13 -0
- package/dist/init-adapters/claude/CLAUDE.md +1 -0
- package/dist/init-adapters/claude/ENDERUN.md +263 -0
- package/dist/init-adapters/claude/mcp.json +13 -0
- package/dist/init-adapters/claude/package.json +5 -0
- package/dist/init-adapters/claude/panda.config.ts +2 -0
- package/dist/init-adapters/codex/.github/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/codex/.github/STATUS.md +3 -0
- package/dist/init-adapters/codex/.github/agents/analyst.md +15 -0
- package/dist/init-adapters/codex/.github/agents/architect.md +15 -0
- package/dist/init-adapters/codex/.github/agents/backend.md +15 -0
- package/dist/init-adapters/codex/.github/agents/database.md +15 -0
- package/dist/init-adapters/codex/.github/agents/devops.md +15 -0
- package/dist/init-adapters/codex/.github/agents/explorer.md +15 -0
- package/dist/init-adapters/codex/.github/agents/frontend.md +15 -0
- package/dist/init-adapters/codex/.github/agents/git.md +15 -0
- package/dist/init-adapters/codex/.github/agents/manager.md +15 -0
- package/dist/init-adapters/codex/.github/agents/mobile.md +15 -0
- package/dist/init-adapters/codex/.github/agents/native.md +15 -0
- package/dist/init-adapters/codex/.github/agents/quality.md +15 -0
- package/dist/init-adapters/codex/.github/agents/security.md +15 -0
- package/dist/init-adapters/codex/.github/cli-commands.json +32 -0
- package/dist/init-adapters/codex/.github/config.json +12 -0
- package/dist/init-adapters/codex/.github/mcp_config.json +13 -0
- package/dist/init-adapters/codex/.github/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/codex/.github/skills/discovery.md +3 -0
- package/dist/init-adapters/codex/.github/skills/editing.md +3 -0
- package/dist/init-adapters/codex/.github/skills/execution.md +4 -0
- package/dist/init-adapters/codex/.github/skills/file_system.md +4 -0
- package/dist/init-adapters/codex/.github/skills/orchestration.md +3 -0
- package/dist/init-adapters/codex/.mcp.json +13 -0
- package/dist/init-adapters/codex/.vscode/mcp.json +13 -0
- package/dist/init-adapters/codex/ENDERUN.md +263 -0
- package/dist/init-adapters/codex/copilot-instructions.md +1 -0
- package/dist/init-adapters/codex/mcp.json +13 -0
- package/dist/init-adapters/codex/package.json +5 -0
- package/dist/init-adapters/codex/panda.config.ts +2 -0
- package/dist/init-adapters/cursor/.cursor/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/cursor/.cursor/STATUS.md +3 -0
- package/dist/init-adapters/cursor/.cursor/agents/analyst.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/architect.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/backend.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/database.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/devops.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/explorer.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/frontend.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/git.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/manager.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/mobile.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/native.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/quality.md +15 -0
- package/dist/init-adapters/cursor/.cursor/agents/security.md +15 -0
- package/dist/init-adapters/cursor/.cursor/cli-commands.json +32 -0
- package/dist/init-adapters/cursor/.cursor/config.json +12 -0
- package/dist/init-adapters/cursor/.cursor/mcp.json +13 -0
- package/dist/init-adapters/cursor/.cursor/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/cursor/.cursor/skills/discovery.md +3 -0
- package/dist/init-adapters/cursor/.cursor/skills/editing.md +3 -0
- package/dist/init-adapters/cursor/.cursor/skills/execution.md +4 -0
- package/dist/init-adapters/cursor/.cursor/skills/file_system.md +4 -0
- package/dist/init-adapters/cursor/.cursor/skills/orchestration.md +3 -0
- package/dist/init-adapters/cursor/CURSOR.md +1 -0
- package/dist/init-adapters/cursor/ENDERUN.md +263 -0
- package/dist/init-adapters/cursor/mcp.json +13 -0
- package/dist/init-adapters/cursor/package.json +5 -0
- package/dist/init-adapters/cursor/panda.config.ts +2 -0
- package/dist/init-adapters/gemini/.gemini/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/gemini/.gemini/STATUS.md +3 -0
- package/dist/init-adapters/gemini/.gemini/agents/analyst.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/architect.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/backend.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/database.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/devops.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/explorer.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/frontend.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/git.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/manager.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/mobile.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/native.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/quality.md +15 -0
- package/dist/init-adapters/gemini/.gemini/agents/security.md +15 -0
- package/dist/init-adapters/gemini/.gemini/cli-commands.json +32 -0
- package/dist/init-adapters/gemini/.gemini/config.json +12 -0
- package/dist/init-adapters/gemini/.gemini/mcp.json +13 -0
- package/dist/init-adapters/gemini/.gemini/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/gemini/.gemini/skills/discovery.md +3 -0
- package/dist/init-adapters/gemini/.gemini/skills/editing.md +3 -0
- package/dist/init-adapters/gemini/.gemini/skills/execution.md +4 -0
- package/dist/init-adapters/gemini/.gemini/skills/file_system.md +4 -0
- package/dist/init-adapters/gemini/.gemini/skills/orchestration.md +3 -0
- package/dist/init-adapters/gemini/ENDERUN.md +263 -0
- package/dist/init-adapters/gemini/GEMINI.md +1 -0
- package/dist/init-adapters/gemini/mcp.json +13 -0
- package/dist/init-adapters/gemini/package.json +5 -0
- package/dist/init-adapters/gemini/panda.config.ts +2 -0
- package/dist/init-adapters/grok/.grok/BRAIN_DASHBOARD.md +11 -0
- package/dist/init-adapters/grok/.grok/STATUS.md +3 -0
- package/dist/init-adapters/grok/.grok/agents/analyst.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/architect.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/backend.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/database.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/devops.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/explorer.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/frontend.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/git.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/manager.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/mobile.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/native.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/quality.md +15 -0
- package/dist/init-adapters/grok/.grok/agents/security.md +15 -0
- package/dist/init-adapters/grok/.grok/cli-commands.json +32 -0
- package/dist/init-adapters/grok/.grok/config.json +12 -0
- package/{.enderun → dist/init-adapters/grok/.grok}/mcp_config.json +4 -2
- package/dist/init-adapters/grok/.grok/memory/PROJECT_MEMORY.md +8 -0
- package/dist/init-adapters/grok/.grok/skills/discovery.md +3 -0
- package/dist/init-adapters/grok/.grok/skills/editing.md +3 -0
- package/dist/init-adapters/grok/.grok/skills/execution.md +4 -0
- package/dist/init-adapters/grok/.grok/skills/file_system.md +4 -0
- package/dist/init-adapters/grok/.grok/skills/orchestration.md +3 -0
- package/dist/init-adapters/grok/ENDERUN.md +263 -0
- package/dist/init-adapters/grok/GROK.md +1 -0
- package/{mcp.json → dist/init-adapters/grok/mcp.json} +4 -2
- package/dist/init-adapters/grok/package.json +5 -0
- package/dist/init-adapters/grok/panda.config.ts +2 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/mcp.json +13 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/mcp_config.json +13 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/analyst/agent.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/analyst.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/architect/agent.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/architect.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/backend/agent.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/backend.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/database/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/database.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/devops/agent.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/devops.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/explorer/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/explorer.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/frontend/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/frontend.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/git/agent.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/git.json +28 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/manager/agent.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/manager.json +30 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/mobile/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/mobile.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/native/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/native.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/quality/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/quality.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/security/agent.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/agents/security.json +29 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/hooks.json +4 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/mcp.json +13 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/mcp_config.json +13 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/plugin.json +5 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/analyst.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/architect.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/backend.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/database.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/devops.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/explorer.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/frontend.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/git.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/manager.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/mobile.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/native.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/quality.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/rules/security.md +11 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/discovery.md +3 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/editing.md +3 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/execution.md +4 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/file_system.md +4 -0
- package/dist/init-adapters/mock-home/.gemini/antigravity-cli/plugins/agent-enderun/skills/orchestration.md +3 -0
- package/dist/init-adapters/mock-home/Library/Application Support/Claude/claude_desktop_config.json +13 -0
- package/dist/src/cli/adapters/types.d.ts +14 -0
- package/dist/src/cli/adapters/types.js +2 -0
- package/dist/src/cli/adapters/types.js.map +1 -0
- package/dist/src/cli/adapters.d.ts +4 -22
- package/dist/src/cli/adapters.js +123 -141
- package/dist/src/cli/adapters.js.map +1 -1
- package/dist/src/cli/commands/check.d.ts +0 -5
- package/dist/src/cli/commands/check.js +64 -76
- package/dist/src/cli/commands/check.js.map +1 -1
- package/dist/src/cli/commands/init.d.ts +1 -1
- package/dist/src/cli/commands/init.js +154 -319
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/cli/commands/log.d.ts +1 -0
- package/dist/src/cli/commands/log.js.map +1 -1
- package/dist/src/cli/commands/memory.js +2 -69
- package/dist/src/cli/commands/memory.js.map +1 -1
- package/dist/src/cli/commands/orchestrate.d.ts +19 -9
- package/dist/src/cli/commands/orchestrate.js +56 -77
- package/dist/src/cli/commands/orchestrate.js.map +1 -1
- package/dist/src/cli/index.js +112 -30
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/utils/app.d.ts +1 -2
- package/dist/src/cli/utils/app.js +2 -2
- package/dist/src/cli/utils/app.js.map +1 -1
- package/dist/src/cli/utils/config-schema.d.ts +139 -0
- package/dist/src/cli/utils/config-schema.js +43 -0
- package/dist/src/cli/utils/config-schema.js.map +1 -0
- package/dist/src/cli/utils/fs.d.ts +2 -4
- package/dist/src/cli/utils/fs.js +9 -26
- package/dist/src/cli/utils/fs.js.map +1 -1
- package/dist/src/cli/utils/memory.d.ts +4 -3
- package/dist/src/cli/utils/memory.js +135 -116
- package/dist/src/cli/utils/memory.js.map +1 -1
- package/dist/src/cli/utils/pkg.js +4 -4
- package/dist/src/cli/utils/pkg.js.map +1 -1
- package/dist/src/cli/utils/ui.d.ts +30 -0
- package/dist/src/cli/utils/ui.js +56 -0
- package/dist/src/cli/utils/ui.js.map +1 -0
- package/dist/src/modules/adapters/antigravity-cli.d.ts +3 -0
- package/dist/src/modules/adapters/antigravity-cli.js +21 -0
- package/dist/src/modules/adapters/antigravity-cli.js.map +1 -0
- package/dist/src/modules/adapters/claude.d.ts +3 -0
- package/dist/src/modules/adapters/claude.js +36 -0
- package/dist/src/modules/adapters/claude.js.map +1 -0
- package/dist/src/modules/adapters/codex.d.ts +3 -0
- package/dist/src/modules/adapters/codex.js +20 -0
- package/dist/src/modules/adapters/codex.js.map +1 -0
- package/dist/src/modules/adapters/cursor.d.ts +3 -0
- package/dist/src/modules/adapters/cursor.js +20 -0
- package/dist/src/modules/adapters/cursor.js.map +1 -0
- package/dist/src/modules/adapters/gemini.d.ts +3 -0
- package/dist/src/modules/adapters/gemini.js +23 -0
- package/dist/src/modules/adapters/gemini.js.map +1 -0
- package/dist/src/modules/adapters/grok.d.ts +3 -0
- package/dist/src/modules/adapters/grok.js +18 -0
- package/dist/src/modules/adapters/grok.js.map +1 -0
- package/dist/src/modules/adapters/shared.d.ts +1 -0
- package/dist/src/modules/adapters/shared.js +79 -0
- package/dist/src/modules/adapters/shared.js.map +1 -0
- package/dist/src/modules/adapters/types.d.ts +14 -0
- package/dist/src/modules/adapters/types.js +2 -0
- package/dist/src/modules/adapters/types.js.map +1 -0
- package/dist/src/modules/agents/definitions.d.ts +13 -0
- package/dist/src/modules/agents/definitions.js +169 -0
- package/dist/src/modules/agents/definitions.js.map +1 -0
- package/dist/src/modules/skills/definitions.d.ts +31 -0
- package/dist/src/modules/skills/definitions.js +32 -0
- package/dist/src/modules/skills/definitions.js.map +1 -0
- package/dist/src/shared/fs.d.ts +3 -0
- package/dist/src/shared/fs.js +24 -0
- package/dist/src/shared/fs.js.map +1 -0
- package/eslint.config.js +1 -0
- package/framework-mcp/dist/src/index.js +1 -1
- package/framework-mcp/dist/src/tools/control_plane/locking.js +64 -0
- package/framework-mcp/dist/src/tools/control_plane/registry.js +34 -0
- package/framework-mcp/dist/src/tools/definitions.js +46 -7
- package/framework-mcp/dist/src/tools/file_system/write_file.js +16 -2
- package/framework-mcp/dist/src/tools/index.js +5 -0
- package/framework-mcp/dist/src/tools/messaging/send_message.js +2 -4
- package/framework-mcp/dist/src/utils/metrics.js +38 -0
- package/framework-mcp/dist/src/utils/security.js +7 -3
- package/framework-mcp/dist/tests/tools/file_system/file_system_tools.test.js +147 -0
- package/framework-mcp/package.json +1 -1
- package/framework-mcp/src/index.ts +1 -1
- package/framework-mcp/src/tools/control_plane/locking.ts +77 -0
- package/framework-mcp/src/tools/control_plane/registry.ts +44 -0
- package/framework-mcp/src/tools/definitions.ts +46 -7
- package/framework-mcp/src/tools/file_system/write_file.ts +19 -2
- package/framework-mcp/src/tools/index.ts +6 -1
- package/framework-mcp/src/tools/messaging/send_message.ts +2 -3
- package/framework-mcp/src/utils/metrics.ts +53 -0
- package/framework-mcp/src/utils/security.ts +8 -3
- package/framework-mcp/tests/tools/file_system/file_system_tools.test.ts +164 -0
- package/framework-mcp/tsconfig.json +2 -1
- package/package.json +12 -11
- package/src/cli/adapters/types.ts +16 -0
- package/src/cli/adapters.ts +130 -156
- package/src/cli/commands/check.ts +61 -77
- package/src/cli/commands/init.ts +163 -312
- package/src/cli/commands/log.ts +1 -1
- package/src/cli/commands/memory.ts +3 -80
- package/src/cli/commands/orchestrate.ts +76 -90
- package/src/cli/index.ts +121 -29
- package/src/cli/utils/app.ts +3 -3
- package/src/cli/utils/config-schema.ts +48 -0
- package/src/cli/utils/fs.ts +10 -27
- package/src/cli/utils/memory.ts +143 -112
- package/src/cli/utils/pkg.ts +4 -4
- package/src/cli/utils/ui.ts +63 -0
- package/src/modules/adapters/antigravity-cli.ts +25 -0
- package/src/modules/adapters/claude.ts +36 -0
- package/src/modules/adapters/codex.ts +22 -0
- package/src/modules/adapters/cursor.ts +22 -0
- package/src/modules/adapters/gemini.ts +27 -0
- package/src/modules/adapters/grok.ts +20 -0
- package/src/modules/adapters/shared.ts +90 -0
- package/src/modules/adapters/types.ts +16 -0
- package/src/modules/agents/definitions.ts +182 -0
- package/src/modules/skills/definitions.ts +32 -0
- package/src/shared/fs.ts +25 -0
- package/.enderun/BRAIN_DASHBOARD.md +0 -46
- package/.enderun/STATUS.md +0 -61
- package/.enderun/agents/agent_army_schema.json +0 -101
- package/.enderun/agents/analyst.json +0 -32
- package/.enderun/agents/backend.json +0 -32
- package/.enderun/agents/database.json +0 -32
- package/.enderun/agents/devops.json +0 -32
- package/.enderun/agents/explorer.json +0 -32
- package/.enderun/agents/frontend.json +0 -32
- package/.enderun/agents/git.json +0 -32
- package/.enderun/agents/manager.json +0 -32
- package/.enderun/agents/mobile.json +0 -32
- package/.enderun/agents/native.json +0 -32
- package/.enderun/agents/quality.json +0 -32
- package/.enderun/agents/schema/agent-lifecycle-schema.json +0 -41
- package/.enderun/agents/security.json +0 -32
- package/.enderun/benchmarks/.gitkeep +0 -0
- package/.enderun/cli-commands.json +0 -76
- package/.enderun/config.json +0 -13
- package/.enderun/knowledge/ARCHITECTURE.md +0 -1
- package/.enderun/knowledge/SECURITY.md +0 -1
- package/.enderun/knowledge/SHIM_TEMPLATE.md +0 -36
- package/.enderun/knowledge/analyst_reference_guide.md +0 -31
- package/.enderun/knowledge/async_error_handling.md +0 -27
- package/.enderun/knowledge/backend_reference_guide.md +0 -165
- package/.enderun/knowledge/blueprint_driven_construction.md +0 -22
- package/.enderun/knowledge/context_boundary_rules.md +0 -57
- package/.enderun/knowledge/corporate-governance/analyst-contract-integrity-guide.md +0 -92
- package/.enderun/knowledge/corporate-governance/audit-logging-standard.md +0 -59
- package/.enderun/knowledge/corporate-governance/backend-high-risk-endpoint-guide.md +0 -125
- package/.enderun/knowledge/corporate-governance/branded-types-law.md +0 -77
- package/.enderun/knowledge/corporate-governance/contract-drift-detection-simulation.md +0 -92
- package/.enderun/knowledge/corporate-governance/corporate-governance-playbook.md +0 -89
- package/.enderun/knowledge/corporate-governance/corporate-project-kickoff-checklist.md +0 -56
- package/.enderun/knowledge/corporate-governance/corporate-project-kickoff-simulation.md +0 -144
- package/.enderun/knowledge/corporate-governance/corporate-project-scaffolding-sop.md +0 -103
- package/.enderun/knowledge/corporate-governance/domain-error-handling-standard.md +0 -75
- package/.enderun/knowledge/corporate-governance/frontend-high-risk-modal-guide.md +0 -211
- package/.enderun/knowledge/corporate-governance/governance-baseline-briefing-template.md +0 -54
- package/.enderun/knowledge/corporate-governance/high-risk-action-approval-flow-simulation.md +0 -167
- package/.enderun/knowledge/corporate-governance/high-risk-action-approval-flow.md +0 -29
- package/.enderun/knowledge/corporate-governance/high-risk-actions-managerapproval.md +0 -76
- package/.enderun/knowledge/corporate-governance/high-risk-security-modal-hermes-flow.md +0 -49
- package/.enderun/knowledge/corporate-governance/manager-first-30-days-guide.md +0 -112
- package/.enderun/knowledge/corporate-governance/manager-first-three-briefings.md +0 -79
- package/.enderun/knowledge/database_reference_guide.md +0 -38
- package/.enderun/knowledge/devops_reference_guide.md +0 -43
- package/.enderun/knowledge/documentation_ownership.md +0 -53
- package/.enderun/knowledge/eslint-standards.md +0 -63
- package/.enderun/knowledge/evaluation_engine.md +0 -26
- package/.enderun/knowledge/explorer_reference_guide.md +0 -34
- package/.enderun/knowledge/framework_vs_user_project_boundary.md +0 -52
- package/.enderun/knowledge/frontend_professionalization_guidelines.md +0 -108
- package/.enderun/knowledge/frontend_reference_guide.md +0 -64
- package/.enderun/knowledge/git_reference_guide.md +0 -51
- package/.enderun/knowledge/hermes_live_test_guidelines.md +0 -90
- package/.enderun/knowledge/hermes_protocol.md +0 -59
- package/.enderun/knowledge/legacy_onboarding.md +0 -18
- package/.enderun/knowledge/lessons-learned.md +0 -14
- package/.enderun/knowledge/manager_authority_audit_enforcement.md +0 -104
- package/.enderun/knowledge/manager_reference_guide.md +0 -55
- package/.enderun/knowledge/mobile_reference_guide.md +0 -35
- package/.enderun/knowledge/native_reference_guide.md +0 -34
- package/.enderun/knowledge/project_scaffold_guidelines.md +0 -110
- package/.enderun/knowledge/quality_reference_guide.md +0 -42
- package/.enderun/knowledge/reference_application_guidelines.md +0 -101
- package/.enderun/knowledge/responsive_design_standards.md +0 -27
- package/.enderun/knowledge/router_logic.md +0 -29
- package/.enderun/knowledge/security_reference_guide.md +0 -35
- package/.enderun/knowledge/token_economy_and_memory.md +0 -129
- package/.enderun/knowledge/zero_ui_library_policy.md +0 -13
- package/.enderun/logs/manager.json +0 -52
- package/.enderun/memory/BUSINESS_CONTEXT.md +0 -17
- package/.enderun/memory/DECISIONS.md +0 -24
- package/.enderun/memory/LESSONS_LEARNED.md +0 -12
- package/.enderun/memory/PATTERNS.md +0 -17
- package/.enderun/memory/PROJECT_MEMORY.md +0 -69
- package/.enderun/memory-graph/agent-contexts/analyst.json +0 -1
- package/.enderun/memory-graph/agent-contexts/backend.json +0 -1
- package/.enderun/memory-graph/agent-contexts/devops.json +0 -1
- package/.enderun/memory-graph/agent-contexts/explorer.json +0 -1
- package/.enderun/memory-graph/agent-contexts/frontend.json +0 -1
- package/.enderun/memory-graph/agent-contexts/git.json +0 -1
- package/.enderun/memory-graph/agent-contexts/manager.json +0 -1
- package/.enderun/memory-graph/agent-contexts/mobile.json +0 -1
- package/.enderun/memory-graph/agent-contexts/native.json +0 -1
- package/.enderun/memory-graph/agent-contexts/quality.json +0 -1
- package/.enderun/memory-graph/agent-contexts/security.json +0 -1
- package/.enderun/memory-graph/graph.json +0 -133
- package/.enderun/memory-graph/shared-facts.json +0 -46
- package/.enderun/monitoring/.gitkeep +0 -0
- package/.enderun/observability/AUDIT_LOG.md +0 -9
- package/.enderun/observability/METRICS.md +0 -10
- package/.enderun/observability/README.md +0 -19
- package/.enderun/observability/TRACE_LOG.md +0 -10
- package/.enderun/queue/README.md +0 -36
- package/.enderun/registry/agents.yaml +0 -69
- package/.enderun/skills/agent_handshake.md +0 -37
- package/.enderun/skills/multi_agent_coordination.md +0 -64
- package/.enderun/skills/subagent_lifecycle.md +0 -48
- package/CLAUDE.md +0 -21
- package/GEMINI.md +0 -24
- package/GROK.md +0 -20
- package/agent.md +0 -25
- package/dist/.keep +0 -1
- package/dist/tests/adapter.test.d.ts +0 -1
- package/dist/tests/adapter.test.js +0 -82
- package/dist/tests/adapter.test.js.map +0 -1
- package/dist/tests/gemini.test.d.ts +0 -1
- package/dist/tests/gemini.test.js +0 -39
- package/dist/tests/gemini.test.js.map +0 -1
- package/dist/tests/initial.test.d.ts +0 -1
- package/dist/tests/initial.test.js +0 -7
- package/dist/tests/initial.test.js.map +0 -1
- package/docs/project_analysis_report.md +0 -69
- package/framework-mcp/dist/index.js +0 -70
- package/framework-mcp/dist/tests/tools/file_system/replace_text.test.js +0 -68
- package/framework-mcp/dist/tools/definitions.js +0 -110
- package/framework-mcp/dist/tools/file_system/patch_file.js +0 -18
- package/framework-mcp/dist/tools/file_system/read_file.js +0 -7
- package/framework-mcp/dist/tools/file_system/replace_text.js +0 -31
- package/framework-mcp/dist/tools/file_system/write_file.js +0 -9
- package/framework-mcp/dist/tools/framework/get_status.js +0 -5
- package/framework-mcp/dist/tools/framework/orchestrate.js +0 -5
- package/framework-mcp/dist/tools/framework/update_contract_hash.js +0 -5
- package/framework-mcp/dist/tools/framework/update_memory.js +0 -8
- package/framework-mcp/dist/tools/index.js +0 -25
- package/framework-mcp/dist/tools/messaging/log_action.js +0 -22
- package/framework-mcp/dist/tools/messaging/send_message.js +0 -23
- package/framework-mcp/dist/tools/types.js +0 -1
- package/framework-mcp/dist/utils/cli.js +0 -20
- package/framework-mcp/dist/utils/security.js +0 -53
- package/framework-mcp/node_modules/@types/node/LICENSE +0 -21
- package/framework-mcp/node_modules/@types/node/README.md +0 -15
- package/framework-mcp/node_modules/@types/node/assert/strict.d.ts +0 -111
- package/framework-mcp/node_modules/@types/node/assert.d.ts +0 -1078
- package/framework-mcp/node_modules/@types/node/async_hooks.d.ts +0 -603
- package/framework-mcp/node_modules/@types/node/buffer.buffer.d.ts +0 -472
- package/framework-mcp/node_modules/@types/node/buffer.d.ts +0 -1934
- package/framework-mcp/node_modules/@types/node/child_process.d.ts +0 -1476
- package/framework-mcp/node_modules/@types/node/cluster.d.ts +0 -578
- package/framework-mcp/node_modules/@types/node/compatibility/disposable.d.ts +0 -14
- package/framework-mcp/node_modules/@types/node/compatibility/index.d.ts +0 -9
- package/framework-mcp/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
- package/framework-mcp/node_modules/@types/node/compatibility/iterators.d.ts +0 -20
- package/framework-mcp/node_modules/@types/node/console.d.ts +0 -452
- package/framework-mcp/node_modules/@types/node/constants.d.ts +0 -21
- package/framework-mcp/node_modules/@types/node/crypto.d.ts +0 -4545
- package/framework-mcp/node_modules/@types/node/dgram.d.ts +0 -600
- package/framework-mcp/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
- package/framework-mcp/node_modules/@types/node/dns/promises.d.ts +0 -503
- package/framework-mcp/node_modules/@types/node/dns.d.ts +0 -923
- package/framework-mcp/node_modules/@types/node/domain.d.ts +0 -170
- package/framework-mcp/node_modules/@types/node/events.d.ts +0 -976
- package/framework-mcp/node_modules/@types/node/fs/promises.d.ts +0 -1295
- package/framework-mcp/node_modules/@types/node/fs.d.ts +0 -4461
- package/framework-mcp/node_modules/@types/node/globals.d.ts +0 -172
- package/framework-mcp/node_modules/@types/node/globals.typedarray.d.ts +0 -38
- package/framework-mcp/node_modules/@types/node/http.d.ts +0 -2089
- package/framework-mcp/node_modules/@types/node/http2.d.ts +0 -2721
- package/framework-mcp/node_modules/@types/node/https.d.ts +0 -579
- package/framework-mcp/node_modules/@types/node/index.d.ts +0 -97
- package/framework-mcp/node_modules/@types/node/inspector.d.ts +0 -253
- package/framework-mcp/node_modules/@types/node/inspector.generated.d.ts +0 -4052
- package/framework-mcp/node_modules/@types/node/module.d.ts +0 -891
- package/framework-mcp/node_modules/@types/node/net.d.ts +0 -1076
- package/framework-mcp/node_modules/@types/node/os.d.ts +0 -506
- package/framework-mcp/node_modules/@types/node/package.json +0 -145
- package/framework-mcp/node_modules/@types/node/path.d.ts +0 -200
- package/framework-mcp/node_modules/@types/node/perf_hooks.d.ts +0 -968
- package/framework-mcp/node_modules/@types/node/process.d.ts +0 -2084
- package/framework-mcp/node_modules/@types/node/punycode.d.ts +0 -117
- package/framework-mcp/node_modules/@types/node/querystring.d.ts +0 -152
- package/framework-mcp/node_modules/@types/node/readline/promises.d.ts +0 -161
- package/framework-mcp/node_modules/@types/node/readline.d.ts +0 -594
- package/framework-mcp/node_modules/@types/node/repl.d.ts +0 -428
- package/framework-mcp/node_modules/@types/node/sea.d.ts +0 -153
- package/framework-mcp/node_modules/@types/node/sqlite.d.ts +0 -721
- package/framework-mcp/node_modules/@types/node/stream/consumers.d.ts +0 -38
- package/framework-mcp/node_modules/@types/node/stream/promises.d.ts +0 -90
- package/framework-mcp/node_modules/@types/node/stream/web.d.ts +0 -622
- package/framework-mcp/node_modules/@types/node/stream.d.ts +0 -1687
- package/framework-mcp/node_modules/@types/node/string_decoder.d.ts +0 -67
- package/framework-mcp/node_modules/@types/node/test.d.ts +0 -2163
- package/framework-mcp/node_modules/@types/node/timers/promises.d.ts +0 -108
- package/framework-mcp/node_modules/@types/node/timers.d.ts +0 -287
- package/framework-mcp/node_modules/@types/node/tls.d.ts +0 -1319
- package/framework-mcp/node_modules/@types/node/trace_events.d.ts +0 -197
- package/framework-mcp/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -468
- package/framework-mcp/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -34
- package/framework-mcp/node_modules/@types/node/ts5.6/index.d.ts +0 -97
- package/framework-mcp/node_modules/@types/node/tty.d.ts +0 -208
- package/framework-mcp/node_modules/@types/node/url.d.ts +0 -984
- package/framework-mcp/node_modules/@types/node/util.d.ts +0 -2606
- package/framework-mcp/node_modules/@types/node/v8.d.ts +0 -920
- package/framework-mcp/node_modules/@types/node/vm.d.ts +0 -1000
- package/framework-mcp/node_modules/@types/node/wasi.d.ts +0 -181
- package/framework-mcp/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
- package/framework-mcp/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
- package/framework-mcp/node_modules/@types/node/web-globals/events.d.ts +0 -97
- package/framework-mcp/node_modules/@types/node/web-globals/fetch.d.ts +0 -55
- package/framework-mcp/node_modules/@types/node/web-globals/navigator.d.ts +0 -22
- package/framework-mcp/node_modules/@types/node/web-globals/storage.d.ts +0 -24
- package/framework-mcp/node_modules/@types/node/worker_threads.d.ts +0 -784
- package/framework-mcp/node_modules/@types/node/zlib.d.ts +0 -747
- package/framework-mcp/node_modules/typescript/LICENSE.txt +0 -55
- package/framework-mcp/node_modules/typescript/README.md +0 -50
- package/framework-mcp/node_modules/typescript/SECURITY.md +0 -41
- package/framework-mcp/node_modules/typescript/ThirdPartyNoticeText.txt +0 -193
- package/framework-mcp/node_modules/typescript/bin/tsc +0 -2
- package/framework-mcp/node_modules/typescript/bin/tsserver +0 -2
- package/framework-mcp/node_modules/typescript/lib/_tsc.js +0 -133818
- package/framework-mcp/node_modules/typescript/lib/_tsserver.js +0 -659
- package/framework-mcp/node_modules/typescript/lib/_typingsInstaller.js +0 -222
- package/framework-mcp/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/lib.d.ts +0 -22
- package/framework-mcp/node_modules/typescript/lib/lib.decorators.d.ts +0 -384
- package/framework-mcp/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -22
- package/framework-mcp/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -41
- package/framework-mcp/node_modules/typescript/lib/lib.dom.d.ts +0 -39429
- package/framework-mcp/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -571
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -147
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -597
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.d.ts +0 -28
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -77
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -605
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -81
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -128
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -144
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -46
- package/framework-mcp/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -326
- package/framework-mcp/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -116
- package/framework-mcp/node_modules/typescript/lib/lib.es2016.d.ts +0 -21
- package/framework-mcp/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -31
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -21
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.d.ts +0 -26
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -31
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -44
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -49
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -135
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -45
- package/framework-mcp/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -53
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -77
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -53
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -83
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -30
- package/framework-mcp/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -37
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -79
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -33
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -37
- package/framework-mcp/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -765
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.d.ts +0 -27
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -42
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -474
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -28
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -47
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -99
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -44
- package/framework-mcp/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -41
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -166
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -48
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -33
- package/framework-mcp/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -78
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -121
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.d.ts +0 -25
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -75
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -145
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -26
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -39
- package/framework-mcp/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -25
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -924
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -21
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.d.ts +0 -22
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -56
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -65
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -29
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.d.ts +0 -26
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -29
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -35
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -25
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -68
- package/framework-mcp/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -29
- package/framework-mcp/node_modules/typescript/lib/lib.es5.d.ts +0 -4601
- package/framework-mcp/node_modules/typescript/lib/lib.es6.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -35
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -96
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.d.ts +0 -29
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -28
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -193
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -445
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -24
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -21
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -148
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -34
- package/framework-mcp/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -25
- package/framework-mcp/node_modules/typescript/lib/lib.scripthost.d.ts +0 -322
- package/framework-mcp/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -41
- package/framework-mcp/node_modules/typescript/lib/lib.webworker.d.ts +0 -13150
- package/framework-mcp/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -23
- package/framework-mcp/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -340
- package/framework-mcp/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/tsc.js +0 -8
- package/framework-mcp/node_modules/typescript/lib/tsserver.js +0 -8
- package/framework-mcp/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -17
- package/framework-mcp/node_modules/typescript/lib/tsserverlibrary.js +0 -21
- package/framework-mcp/node_modules/typescript/lib/typesMap.json +0 -497
- package/framework-mcp/node_modules/typescript/lib/typescript.d.ts +0 -11437
- package/framework-mcp/node_modules/typescript/lib/typescript.js +0 -200276
- package/framework-mcp/node_modules/typescript/lib/typingsInstaller.js +0 -8
- package/framework-mcp/node_modules/typescript/lib/watchGuard.js +0 -53
- package/framework-mcp/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -2122
- package/framework-mcp/node_modules/typescript/package.json +0 -120
- package/framework-mcp/node_modules/undici-types/LICENSE +0 -21
- package/framework-mcp/node_modules/undici-types/README.md +0 -6
- package/framework-mcp/node_modules/undici-types/agent.d.ts +0 -31
- package/framework-mcp/node_modules/undici-types/api.d.ts +0 -43
- package/framework-mcp/node_modules/undici-types/balanced-pool.d.ts +0 -29
- package/framework-mcp/node_modules/undici-types/cache.d.ts +0 -36
- package/framework-mcp/node_modules/undici-types/client.d.ts +0 -108
- package/framework-mcp/node_modules/undici-types/connector.d.ts +0 -34
- package/framework-mcp/node_modules/undici-types/content-type.d.ts +0 -21
- package/framework-mcp/node_modules/undici-types/cookies.d.ts +0 -28
- package/framework-mcp/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
- package/framework-mcp/node_modules/undici-types/dispatcher.d.ts +0 -256
- package/framework-mcp/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
- package/framework-mcp/node_modules/undici-types/errors.d.ts +0 -149
- package/framework-mcp/node_modules/undici-types/eventsource.d.ts +0 -61
- package/framework-mcp/node_modules/undici-types/fetch.d.ts +0 -209
- package/framework-mcp/node_modules/undici-types/file.d.ts +0 -39
- package/framework-mcp/node_modules/undici-types/filereader.d.ts +0 -54
- package/framework-mcp/node_modules/undici-types/formdata.d.ts +0 -108
- package/framework-mcp/node_modules/undici-types/global-dispatcher.d.ts +0 -9
- package/framework-mcp/node_modules/undici-types/global-origin.d.ts +0 -7
- package/framework-mcp/node_modules/undici-types/handlers.d.ts +0 -15
- package/framework-mcp/node_modules/undici-types/header.d.ts +0 -4
- package/framework-mcp/node_modules/undici-types/index.d.ts +0 -71
- package/framework-mcp/node_modules/undici-types/interceptors.d.ts +0 -17
- package/framework-mcp/node_modules/undici-types/mock-agent.d.ts +0 -50
- package/framework-mcp/node_modules/undici-types/mock-client.d.ts +0 -25
- package/framework-mcp/node_modules/undici-types/mock-errors.d.ts +0 -12
- package/framework-mcp/node_modules/undici-types/mock-interceptor.d.ts +0 -93
- package/framework-mcp/node_modules/undici-types/mock-pool.d.ts +0 -25
- package/framework-mcp/node_modules/undici-types/package.json +0 -55
- package/framework-mcp/node_modules/undici-types/patch.d.ts +0 -33
- package/framework-mcp/node_modules/undici-types/pool-stats.d.ts +0 -19
- package/framework-mcp/node_modules/undici-types/pool.d.ts +0 -39
- package/framework-mcp/node_modules/undici-types/proxy-agent.d.ts +0 -28
- package/framework-mcp/node_modules/undici-types/readable.d.ts +0 -65
- package/framework-mcp/node_modules/undici-types/retry-agent.d.ts +0 -8
- package/framework-mcp/node_modules/undici-types/retry-handler.d.ts +0 -116
- package/framework-mcp/node_modules/undici-types/util.d.ts +0 -18
- package/framework-mcp/node_modules/undici-types/webidl.d.ts +0 -228
- package/framework-mcp/node_modules/undici-types/websocket.d.ts +0 -150
- package/framework-mcp/tests/tools/file_system/replace_text.test.js +0 -68
- package/framework-mcp/tests/tools/file_system/replace_text.test.ts +0 -77
- package/panda.config.ts +0 -100
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
# Context Boundaries & Constitution Caching Standard
|
|
2
|
-
|
|
3
|
-
> **Trace ID:** 01HGT8J5E2N0W0W0W0W0W0W0W4
|
|
4
|
-
> **Status:** ACTIVE
|
|
5
|
-
> **Applicability:** All Agent Enderun Framework Components and Subagents
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 🏛️ 1. Overview & Core Philosophy
|
|
10
|
-
|
|
11
|
-
In large-scale enterprise projects, keeping the AI's context window clean and lightweight is critical. Overloading the context with unnecessary files (like bulk package lockfiles, build artifacts, or duplicated rule documents) wastes tokens, slows down execution, and dilutes the AI's attention.
|
|
12
|
-
|
|
13
|
-
This standard establishes:
|
|
14
|
-
1. **The Constitution Caching Rule:** Reading `.enderun/ENDERUN.md` is strictly optimized.
|
|
15
|
-
2. **File & Folder Read Boundaries:** Defines allowed vs. ignored paths to protect context integrity.
|
|
16
|
-
3. **Search-Before-Reading Discipline:** Mandatory search heuristics.
|
|
17
|
-
|
|
18
|
-
---
|
|
19
|
-
|
|
20
|
-
## 🔒 2. The Constitution Caching Rule (Initial Read Only)
|
|
21
|
-
|
|
22
|
-
To prevent severe token-bloat and redundant file I/O operations, the supreme constitution (`.enderun/ENDERUN.md`) must be loaded efficiently:
|
|
23
|
-
|
|
24
|
-
- **The Initial Read Mandate:** The AI agent must read `{{FRAMEWORK_DIR}}/ENDERUN.md` **exactly once** at the very beginning of the session (during initial bootstrap/startup). This loads all rules into the active system/warm context.
|
|
25
|
-
- **The Read Prohibition:** For all subsequent turns, tasks, and file modifications in that session, the AI agent **is strictly prohibited from calling `read_file` on `ENDERUN.md` again**.
|
|
26
|
-
- **Memory Graph Cache:** The CLI/MCP runtime maintains a session flag (`CONSTITUTION_LOADED: true`) in `{{FRAMEWORK_DIR}}/memory-graph/` to signal that the rules are already active in the warm prompt, rendering repeated reads unnecessary.
|
|
27
|
-
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
## 🚫 3. Path-Based Read Boundaries
|
|
31
|
-
|
|
32
|
-
To prevent token waste, agents must strictly ignore the following directories and files during read/analysis operations. Here, `{{FRAMEWORK_DIR}}` is dynamically resolved at runtime to whichever folder the framework is initialized in (e.g., `.enderun`, `.gemini`, `.claude`, or `.agent`).
|
|
33
|
-
|
|
34
|
-
### ❌ Ignored Paths (Strictly Prohibited for AI Read)
|
|
35
|
-
* **`node_modules/`** — Massive dependency tree. Absolutely out of bounds.
|
|
36
|
-
* **`dist/`, `build/`, `out/`** — Transpiled/compiled production bundles.
|
|
37
|
-
* **`.git/`** — Version control internal database files.
|
|
38
|
-
* **`package-lock.json`** — Extremely large lockfile (can easily exceed 150KB+). Reading this is forbidden unless explicitly diagnosing a deep dependency lock drift.
|
|
39
|
-
* **`.DS_Store`, `.vscode/`, `.idea/`** — OS and IDE-specific metadata.
|
|
40
|
-
* **`{{FRAMEWORK_DIR}}/logs/`** — Historical execution logs (except the active agent's own log file during write-updates).
|
|
41
|
-
|
|
42
|
-
### 🟢 Allowed Paths (Active Context Space)
|
|
43
|
-
* **`{{BACKEND_DIR}}/src/`** and **`{{FRONTEND_DIR}}/src/`** — Active user code.
|
|
44
|
-
* **`{{DOCS_DIR}}/`** — Project architecture, guides, and requirements.
|
|
45
|
-
* **`package.json`** — Workspace configurations and script references.
|
|
46
|
-
* **`panda.config.ts`, `tsconfig.json`, `eslint.config.js`** — Design and compiler options.
|
|
47
|
-
* **`{{FRAMEWORK_DIR}}/STATUS.md` & `{{FRAMEWORK_DIR}}/PROJECT_MEMORY.md`** — Live status and SSOT.
|
|
48
|
-
* **`{{FRAMEWORK_DIR}}/agents/{active_agent}.md`** — The active agent instruction prompt.
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
## 🕵️ 4. Search-Before-Reading Protocol
|
|
53
|
-
|
|
54
|
-
To ensure minimal and clean context usage:
|
|
55
|
-
- **Rule:** Never open or read a file blindly.
|
|
56
|
-
- **Heuristic:** Use `search_codebase` or `grep_search` to identify exact matches, line numbers, or specific functions first.
|
|
57
|
-
- **Action:** Read *only* the specific lines or narrow ranges of target files instead of reading large, full-length files by default.
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
# Contract Integrity & Governance Compliance Verification Guide (@analyst)
|
|
2
|
-
|
|
3
|
-
**Role**: @analyst is the independent verifier of governance and contract health in corporate projects.
|
|
4
|
-
|
|
5
|
-
**Goal**: Provide clear, actionable rules and processes for maintaining contract integrity and enforcing corporate governance standards.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 1. Core Responsibilities
|
|
10
|
-
|
|
11
|
-
- Detect contract drift between `apps/backend/src/types` and frontend copies.
|
|
12
|
-
- Verify that high-risk endpoints properly implement `managerApproval` validation.
|
|
13
|
-
- Ensure audit logging is present for all privileged operations.
|
|
14
|
-
- Confirm that typed Domain Errors are used instead of generic errors.
|
|
15
|
-
- Validate that Branded Types are correctly applied in public APIs and services.
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## 2. Mandatory Checks on Every Relevant Change
|
|
20
|
-
|
|
21
|
-
### Contract Changes
|
|
22
|
-
- Run diff between backend types and all frontend copies.
|
|
23
|
-
- Verify `contract.version.json` was updated (MINOR for additive, MAJOR for breaking).
|
|
24
|
-
- Confirm that @backend sent a Hermes notification before implementation.
|
|
25
|
-
|
|
26
|
-
### High-Risk Endpoints
|
|
27
|
-
- Every new or modified privileged endpoint must:
|
|
28
|
-
- Require `isHighRiskAdminAction: true`
|
|
29
|
-
- Require valid `managerApproval` structure
|
|
30
|
-
- Throw `HighRiskActionRequiresApprovalError` on failure
|
|
31
|
-
- Create an audit log entry
|
|
32
|
-
|
|
33
|
-
### Error Handling
|
|
34
|
-
- No raw `throw new Error(...)` in business logic.
|
|
35
|
-
- All domain errors must extend `DomainError`.
|
|
36
|
-
- Error responses must not leak internal details.
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## 3. Automated & Manual Verification Process
|
|
41
|
-
|
|
42
|
-
**Automated (recommended)**:
|
|
43
|
-
- Static analysis for branded type usage.
|
|
44
|
-
- Contract hash comparison script between backend and frontend.
|
|
45
|
-
|
|
46
|
-
**Manual (every sprint or major feature)**:
|
|
47
|
-
- Review all new high-risk endpoints.
|
|
48
|
-
- Sample audit logs for privileged actions.
|
|
49
|
-
- Check that governance decisions are documented in `docs/architecture/decisions/`.
|
|
50
|
-
|
|
51
|
-
---
|
|
52
|
-
|
|
53
|
-
## 4. Escalation Rules
|
|
54
|
-
|
|
55
|
-
When violations are found:
|
|
56
|
-
1. Immediately notify @manager via Hermes.
|
|
57
|
-
2. Provide clear evidence (file paths, code snippets, missing fields).
|
|
58
|
-
3. Recommend specific corrective actions.
|
|
59
|
-
4. Do not approve feature completion until issues are resolved.
|
|
60
|
-
|
|
61
|
-
**@analyst has authority to block merge** on governance or contract violations in corporate projects.
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
## 5. Reference Knowledge Files (Must Read)
|
|
66
|
-
|
|
67
|
-
- `branded-types-law.md`
|
|
68
|
-
- `high-risk-actions-managerapproval.md`
|
|
69
|
-
- `domain-error-handling-standard.md`
|
|
70
|
-
- `audit-logging-standard.md`
|
|
71
|
-
- `corporate-project-scaffolding-sop.md`
|
|
72
|
-
- `contract-drift-detection-simulation.md`
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## 6. Reporting Template
|
|
77
|
-
|
|
78
|
-
When reporting an issue to @manager, use this structure:
|
|
79
|
-
|
|
80
|
-
```
|
|
81
|
-
Contract/Governance Issue Report
|
|
82
|
-
|
|
83
|
-
Trace ID: ...
|
|
84
|
-
Severity: High / Medium / Low
|
|
85
|
-
Affected Area: ...
|
|
86
|
-
Violation: ...
|
|
87
|
-
Evidence: ...
|
|
88
|
-
Recommended Fix: ...
|
|
89
|
-
Impact if not fixed: ...
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
This ensures consistent, professional communication.
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
# Audit Logging Standard
|
|
2
|
-
|
|
3
|
-
**Applies to**: All privileged, high-risk, or compliance-relevant operations in enterprise projects using Agent Enderun.
|
|
4
|
-
|
|
5
|
-
## Purpose
|
|
6
|
-
Every significant administrative or security-relevant action must leave a tamper-evident, queryable audit trail. This is a non-negotiable requirement for corporate and regulated environments.
|
|
7
|
-
|
|
8
|
-
## Core Requirements
|
|
9
|
-
|
|
10
|
-
1. **What Must Be Logged**
|
|
11
|
-
- All high-risk administrative actions (role changes, configuration modifications, bulk operations, data exports).
|
|
12
|
-
- Authentication and authorization events (login, token issuance, permission checks).
|
|
13
|
-
- Any action performed using a `managerApproval` token.
|
|
14
|
-
- Failed attempts to perform privileged operations.
|
|
15
|
-
|
|
16
|
-
2. **Minimum Information per Log Entry**
|
|
17
|
-
- Timestamp (ISO-8601, UTC)
|
|
18
|
-
- Trace ID (linked to the originating Hermes trace when applicable)
|
|
19
|
-
- Actor (UserID of the person or system performing the action)
|
|
20
|
-
- Action type (e.g., `USER_ROLE_ELEVATED`, `SYSTEM_CONFIG_UPDATED`)
|
|
21
|
-
- Target resource (e.g., affected UserID or configuration key)
|
|
22
|
-
- Before and after state (when relevant and not containing secrets)
|
|
23
|
-
- `managerApproval` details (approvalId, reason, approver) if the action was high-risk
|
|
24
|
-
- Outcome (success / failure + error code if applicable)
|
|
25
|
-
|
|
26
|
-
3. **Storage and Integrity**
|
|
27
|
-
- Audit logs must be stored separately from operational data when possible.
|
|
28
|
-
- Logs must be append-only. Updates or deletions of existing log entries are forbidden.
|
|
29
|
-
- In production systems, logs should be shipped to a tamper-resistant store (e.g., dedicated database table with row-level security, or external logging service).
|
|
30
|
-
|
|
31
|
-
4. **Access Control**
|
|
32
|
-
- Reading full audit logs is itself a high-risk operation and must follow the `managerApproval` process.
|
|
33
|
-
- Regular users should never have direct access to raw audit logs.
|
|
34
|
-
|
|
35
|
-
## Implementation Guidelines for @backend
|
|
36
|
-
|
|
37
|
-
- Create a dedicated `AuditLog` domain entity and repository.
|
|
38
|
-
- Use a structured logging approach (never unstructured strings for critical fields).
|
|
39
|
-
- Every high-risk service method must create an audit entry as part of the same transaction (or as a guaranteed side effect).
|
|
40
|
-
- Never log sensitive data (passwords, tokens, PII) in plaintext.
|
|
41
|
-
|
|
42
|
-
## Implementation Guidelines for @frontend
|
|
43
|
-
|
|
44
|
-
- Administrative UIs that trigger high-risk actions must clearly indicate that the action will be audited.
|
|
45
|
-
- Audit log viewing interfaces (when built) must themselves be protected by the high-risk approval flow.
|
|
46
|
-
|
|
47
|
-
## Relationship to Other Standards
|
|
48
|
-
|
|
49
|
-
- Works together with the `ManagerApproval` pattern: every approved high-risk action must produce a corresponding audit entry that references the `approvalId`.
|
|
50
|
-
- Supports the Branded Types Law: `ActorID`, `TargetID`, and `ApprovalID` in audit records must be properly branded types.
|
|
51
|
-
|
|
52
|
-
## Anti-Patterns
|
|
53
|
-
|
|
54
|
-
- Logging only to console or ephemeral files in production.
|
|
55
|
-
- Making audit logs mutable.
|
|
56
|
-
- Skipping audit entries for “internal” or “trusted” admin users.
|
|
57
|
-
- Storing audit data in the same tables as operational data without clear separation.
|
|
58
|
-
|
|
59
|
-
This standard is mandatory for any project that claims enterprise or regulated status under Agent Enderun.
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
# High-Risk Endpoint Implementation Guide (@backend)
|
|
2
|
-
|
|
3
|
-
**Applies to**: Any backend endpoint that performs privileged or high-risk administrative actions.
|
|
4
|
-
|
|
5
|
-
**Goal**: Provide @backend with a concrete, production-grade implementation pattern that strictly enforces corporate governance.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 1. Required Imports and Types
|
|
10
|
-
|
|
11
|
-
```ts
|
|
12
|
-
import {
|
|
13
|
-
UserID,
|
|
14
|
-
RoleID,
|
|
15
|
-
ManagerApproval,
|
|
16
|
-
HighRiskActionPayload
|
|
17
|
-
} from '../types';
|
|
18
|
-
import { HighRiskActionRequiresApprovalError } from '../types/errors';
|
|
19
|
-
import { auditLogRepository } from '../repositories/audit-log.repository';
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## 2. High-Risk Endpoint Pattern (Recommended Structure)
|
|
25
|
-
|
|
26
|
-
```ts
|
|
27
|
-
// apps/backend/src/routes/users/promote-to-superadmin.route.ts
|
|
28
|
-
|
|
29
|
-
interface PromoteToSuperAdminBody extends HighRiskActionPayload {
|
|
30
|
-
userId: UserID;
|
|
31
|
-
newRole: 'SuperAdmin';
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
fastify.post('/api/v1/users/:id/promote-to-superadmin', async (request, reply) => {
|
|
35
|
-
const { id } = request.params;
|
|
36
|
-
const body = request.body as PromoteToSuperAdminBody;
|
|
37
|
-
|
|
38
|
-
// === MANDATORY HIGH-RISK GOVERNANCE CHECK ===
|
|
39
|
-
if (!body.isHighRiskAdminAction || !body.managerApproval) {
|
|
40
|
-
throw new HighRiskActionRequiresApprovalError(
|
|
41
|
-
'Promotion to SuperAdmin is a high-risk action',
|
|
42
|
-
{ requiredFields: ['isHighRiskAdminAction', 'managerApproval'] }
|
|
43
|
-
);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
// Validate managerApproval structure
|
|
47
|
-
const approval = body.managerApproval;
|
|
48
|
-
if (approval.approvedBy !== 'manager') {
|
|
49
|
-
throw new HighRiskActionRequiresApprovalError('Approval must be issued by @manager');
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// Optional: Add time-based or policy-based validation here
|
|
53
|
-
// (e.g., approval must be less than 15 minutes old)
|
|
54
|
-
|
|
55
|
-
const targetUserId = id as UserID;
|
|
56
|
-
|
|
57
|
-
// === EXECUTE THE PRIVILEGED ACTION ===
|
|
58
|
-
const updatedUser = await userService.promoteToSuperAdmin(targetUserId);
|
|
59
|
-
|
|
60
|
-
// === AUDIT LOGGING (MANDATORY) ===
|
|
61
|
-
await auditLogRepository.create({
|
|
62
|
-
traceId: approval.traceId,
|
|
63
|
-
actorId: request.user.id as UserID, // the person who triggered the action
|
|
64
|
-
action: 'USER_PROMOTED_TO_SUPERADMIN',
|
|
65
|
-
targetId: targetUserId,
|
|
66
|
-
beforeState: { role: updatedUser.previousRole },
|
|
67
|
-
afterState: { role: 'SuperAdmin' },
|
|
68
|
-
managerApprovalId: approval.approvalId,
|
|
69
|
-
reason: approval.reason,
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
return {
|
|
73
|
-
success: true,
|
|
74
|
-
user: updatedUser,
|
|
75
|
-
approvalUsed: approval.approvalId,
|
|
76
|
-
};
|
|
77
|
-
});
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
## 3. Error Handling
|
|
83
|
-
|
|
84
|
-
Always throw typed domain errors:
|
|
85
|
-
|
|
86
|
-
- Use `HighRiskActionRequiresApprovalError` when governance requirements are not met.
|
|
87
|
-
- Never return generic 403 or 400 with vague messages.
|
|
88
|
-
|
|
89
|
-
---
|
|
90
|
-
|
|
91
|
-
## 4. Testing Requirements (Testable Rules)
|
|
92
|
-
|
|
93
|
-
Every high-risk endpoint **must** have the following test cases:
|
|
94
|
-
|
|
95
|
-
- [ ] Request without `isHighRiskAdminAction` → `HighRiskActionRequiresApprovalError`
|
|
96
|
-
- [ ] Request without `managerApproval` → `HighRiskActionRequiresApprovalError`
|
|
97
|
-
- [ ] `managerApproval.approvedBy !== 'manager'` → `HighRiskActionRequiresApprovalError`
|
|
98
|
-
- [ ] Valid approval token → Action succeeds + audit log is created
|
|
99
|
-
- [ ] Valid approval but action fails later → Audit log still created with failure status (if possible)
|
|
100
|
-
|
|
101
|
-
---
|
|
102
|
-
|
|
103
|
-
## 5. Anti-Patterns (Strictly Forbidden)
|
|
104
|
-
|
|
105
|
-
- Bypassing validation “because the frontend already checked”
|
|
106
|
-
- Logging the full `managerApproval.signature` in normal logs
|
|
107
|
-
- Skipping audit logging for “internal admin users”
|
|
108
|
-
- Using plain `string` for `userId` or `approvalId` inside the endpoint
|
|
109
|
-
- Returning raw error objects to the client
|
|
110
|
-
|
|
111
|
-
---
|
|
112
|
-
|
|
113
|
-
## 6. Integration Points
|
|
114
|
-
|
|
115
|
-
This pattern must be combined with:
|
|
116
|
-
- `domain-error-handling-standard.md`
|
|
117
|
-
- `audit-logging-standard.md`
|
|
118
|
-
- `branded-types-law.md`
|
|
119
|
-
|
|
120
|
-
@backend is responsible for refusing to implement any high-risk feature until the above three standards are satisfied in the design.
|
|
121
|
-
|
|
122
|
-
**Reference files** (must be read before implementation):
|
|
123
|
-
- `high-risk-actions-managerapproval.md`
|
|
124
|
-
- `high-risk-action-approval-flow-simulation.md`
|
|
125
|
-
- `corporate-project-scaffolding-sop.md`
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
# Branded Types Law
|
|
2
|
-
|
|
3
|
-
**Status:** Mandatory — Zero Tolerance
|
|
4
|
-
|
|
5
|
-
## Why This Exists
|
|
6
|
-
Plain `string` or `number` for identifiers (user IDs, role IDs, approval tokens, etc.) is a major source of bugs and security issues in large systems. Agent Enderun enforces **Branded Types** to make domain identifiers type-safe at compile time.
|
|
7
|
-
|
|
8
|
-
## Definition
|
|
9
|
-
```ts
|
|
10
|
-
type Brand<T, BrandName extends string> = T & { readonly __brand: BrandName };
|
|
11
|
-
|
|
12
|
-
type UserID = Brand<string, 'UserID'>;
|
|
13
|
-
type RoleID = Brand<string, 'RoleID'>;
|
|
14
|
-
type ApprovalID = Brand<string, 'ApprovalID'>;
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Rules
|
|
18
|
-
1. Every identifier that represents a domain entity **must** be a branded type.
|
|
19
|
-
2. Backend is the source of truth (`apps/backend/src/types`).
|
|
20
|
-
3. Frontend must maintain an exact local copy and update it when notified via Hermes.
|
|
21
|
-
4. Never cast `as any` or use `string` directly when a branded type is available.
|
|
22
|
-
5. Database columns can remain as strings, but the TypeScript layer must brand them immediately after reading.
|
|
23
|
-
|
|
24
|
-
## Enforcement
|
|
25
|
-
- @backend must refuse to implement any feature that introduces non-branded IDs.
|
|
26
|
-
- @analyst will run static analysis to detect violations.
|
|
27
|
-
- Any PR that introduces plain strings for IDs must be rejected.
|
|
28
|
-
|
|
29
|
-
## Example Correct Usage
|
|
30
|
-
```ts
|
|
31
|
-
const promoteUser = async (userId: UserID, newRole: SystemRole, approval: ManagerApproval) => { ... }
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
## Recommended Folder Structure
|
|
35
|
-
|
|
36
|
-
```
|
|
37
|
-
apps/backend/src/types/
|
|
38
|
-
├── brand.ts # Generic Brand utility
|
|
39
|
-
├── identifiers.ts # UserID, RoleID, ApprovalID, TraceID...
|
|
40
|
-
├── approval.ts # ManagerApproval + HighRiskActionPayload
|
|
41
|
-
├── errors.ts # DomainError hierarchy
|
|
42
|
-
├── user.ts
|
|
43
|
-
├── role.ts
|
|
44
|
-
└── index.ts # Re-exports
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## Concrete Implementation Examples
|
|
48
|
-
|
|
49
|
-
**brand.ts**
|
|
50
|
-
```ts
|
|
51
|
-
export type Brand<T, BrandName extends string> = T & { readonly __brand: BrandName };
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
**identifiers.ts**
|
|
55
|
-
```ts
|
|
56
|
-
import { Brand } from './brand';
|
|
57
|
-
|
|
58
|
-
export type UserID = Brand<string, 'UserID'>;
|
|
59
|
-
export type RoleID = Brand<string, 'RoleID'>;
|
|
60
|
-
export type ApprovalID = Brand<string, 'ApprovalID'>;
|
|
61
|
-
export type TraceID = Brand<string, 'TraceID'>;
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
## Common Anti-Patterns (Forbidden)
|
|
65
|
-
- `userId: string`
|
|
66
|
-
- `roleId: number`
|
|
67
|
-
- Passing raw database rows directly to the frontend without branding
|
|
68
|
-
- Using `as any` to bypass branded type checks
|
|
69
|
-
- Casting database IDs directly without branding at the repository layer
|
|
70
|
-
|
|
71
|
-
## Testable Rules (for @analyst)
|
|
72
|
-
|
|
73
|
-
- Static analysis must fail on any non-branded identifier used in public APIs or service methods.
|
|
74
|
-
- All identifiers in `apps/backend/src/types` must extend the `Brand` utility.
|
|
75
|
-
- Frontend type copies must match backend branded types exactly (contract drift detection).
|
|
76
|
-
|
|
77
|
-
This law is non-negotiable for any project using Agent Enderun at enterprise scale.
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
# Contract Drift Detection & Resolution Simulation
|
|
2
|
-
|
|
3
|
-
**Purpose**: This simulation shows how @analyst, @backend, @frontend, and @manager should handle a contract drift situation in a corporate project according to Agent Enderun standards.
|
|
4
|
-
|
|
5
|
-
**Scenario**: During development of the User Management module, @backend adds a new required field `lastLoginAt` to the `User` type without notifying the team.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Step 1 – Drift is Detected
|
|
10
|
-
|
|
11
|
-
**@analyst** runs the contract integrity check (as per its responsibilities in the Corporate Project Scaffolding SOP).
|
|
12
|
-
|
|
13
|
-
**Detection**:
|
|
14
|
-
- `apps/backend/src/types/user.ts` has changed.
|
|
15
|
-
- `apps/web/src/types/api-contracts.ts` (frontend copy) does not contain the new field.
|
|
16
|
-
- Hash in `contract.version.json` has not been updated.
|
|
17
|
-
|
|
18
|
-
**@analyst** sends a Hermes message to @manager and @frontend:
|
|
19
|
-
|
|
20
|
-
```json
|
|
21
|
-
{
|
|
22
|
-
"type": "contract_drift_detected",
|
|
23
|
-
"traceId": "TRACE-20260525-CONTRACT-DRIFT-007",
|
|
24
|
-
"payload": {
|
|
25
|
-
"changedFile": "apps/backend/src/types/user.ts",
|
|
26
|
-
"newField": "lastLoginAt: string",
|
|
27
|
-
"frontendCopyStatus": "outdated",
|
|
28
|
-
"severity": "high"
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## Step 2 – @manager Assessment
|
|
36
|
-
|
|
37
|
-
**@manager** receives the notification and loads:
|
|
38
|
-
- `branded-types-law.md`
|
|
39
|
-
- `corporate-project-scaffolding-sop.md`
|
|
40
|
-
|
|
41
|
-
**@manager response**:
|
|
42
|
-
|
|
43
|
-
This is a contract drift. Per our governance rules, no one may continue implementation on the affected feature until the drift is resolved.
|
|
44
|
-
|
|
45
|
-
**Immediate actions**:
|
|
46
|
-
1. @backend must pause any work depending on the new field.
|
|
47
|
-
2. @frontend must be briefed to update the local type copy.
|
|
48
|
-
3. @analyst will verify the fix and update the contract version.
|
|
49
|
-
|
|
50
|
-
I am now issuing a formal pause on the User detail feature until resolution.
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## Step 3 – Resolution Process
|
|
55
|
-
|
|
56
|
-
**@backend** (after receiving the briefing):
|
|
57
|
-
|
|
58
|
-
Understood. I will not merge or continue work using the new field until the contract is synchronized.
|
|
59
|
-
|
|
60
|
-
**@frontend**:
|
|
61
|
-
|
|
62
|
-
I have updated `apps/web/src/types/api-contracts.ts` to include `lastLoginAt`.
|
|
63
|
-
|
|
64
|
-
**@analyst**:
|
|
65
|
-
|
|
66
|
-
- Verified that both backend and frontend types now match.
|
|
67
|
-
- Updated `contract.version.json` (MINOR version bump).
|
|
68
|
-
- Confirmed no other files are affected.
|
|
69
|
-
|
|
70
|
-
**@manager** (final resolution message):
|
|
71
|
-
|
|
72
|
-
Contract drift resolved.
|
|
73
|
-
|
|
74
|
-
- Backend and frontend types are now in sync.
|
|
75
|
-
- Contract version updated.
|
|
76
|
-
- Feature development on the affected area may resume.
|
|
77
|
-
|
|
78
|
-
All future type changes must follow the Hermes notification process defined in the Scaffolding SOP.
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
## Lessons from This Simulation
|
|
83
|
-
|
|
84
|
-
- Contract drift is treated as a serious governance issue.
|
|
85
|
-
- @analyst has real authority to pause work.
|
|
86
|
-
- @manager uses the standards to protect the project from technical debt.
|
|
87
|
-
- Resolution must be documented (even if small) in PROJECT_MEMORY.md.
|
|
88
|
-
|
|
89
|
-
**Reference files**:
|
|
90
|
-
- `branded-types-law.md`
|
|
91
|
-
- `corporate-project-scaffolding-sop.md`
|
|
92
|
-
- `corporate-project-kickoff-checklist.md`
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
# Corporate Governance Playbook
|
|
2
|
-
|
|
3
|
-
**Version**: 1.0
|
|
4
|
-
**Purpose**: This is the single master reference that ties together all corporate governance standards for Agent Enderun. It provides navigation, summaries, and the recommended order of study for agents and teams.
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Core Philosophy
|
|
9
|
-
|
|
10
|
-
We do not ship pre-built applications.
|
|
11
|
-
We internalize strong governance patterns into the agents so they can guide any corporate project correctly from the first day.
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## Document Hierarchy
|
|
16
|
-
|
|
17
|
-
### Foundational Laws & Standards
|
|
18
|
-
| Document | Focus | Must Read By |
|
|
19
|
-
|----------|-------|--------------|
|
|
20
|
-
| `branded-types-law.md` | Compile-time safety for identifiers | All agents |
|
|
21
|
-
| `high-risk-actions-managerapproval.md` | Protection of privileged operations | All agents |
|
|
22
|
-
| `domain-error-handling-standard.md` | Typed, safe error system | @backend, @analyst |
|
|
23
|
-
| `audit-logging-standard.md` | Tamper-evident privileged action records | @backend, @analyst, @manager |
|
|
24
|
-
|
|
25
|
-
### UI & Coordination Patterns
|
|
26
|
-
| Document | Focus | Must Read By |
|
|
27
|
-
|----------|-------|--------------|
|
|
28
|
-
| `high-risk-security-modal-hermes-flow.md` | Frontend high-risk action handling | @frontend, @manager |
|
|
29
|
-
| `frontend-high-risk-modal-guide.md` | Concrete component + hook implementation | @frontend |
|
|
30
|
-
|
|
31
|
-
### Backend Implementation
|
|
32
|
-
| Document | Focus | Must Read By |
|
|
33
|
-
|----------|-------|--------------|
|
|
34
|
-
| `backend-high-risk-endpoint-guide.md` | Production-grade high-risk endpoint pattern | @backend |
|
|
35
|
-
|
|
36
|
-
### Process & Scaffolding
|
|
37
|
-
| Document | Focus | Must Read By |
|
|
38
|
-
|----------|-------|--------------|
|
|
39
|
-
| `corporate-project-scaffolding-sop.md` | Step-by-step process for new corporate projects | @manager (primary) |
|
|
40
|
-
| `corporate-project-kickoff-checklist.md` | Mandatory checklist at project start | @manager + team |
|
|
41
|
-
| `governance-baseline-briefing-template.md` | First-day briefing text | @manager |
|
|
42
|
-
| `manager-first-three-briefings.md` | Ready templates for early project phases | @manager |
|
|
43
|
-
|
|
44
|
-
### Simulations (Learning & Reference)
|
|
45
|
-
| Document | Focus |
|
|
46
|
-
|----------|-------|
|
|
47
|
-
| `corporate-project-kickoff-simulation.md` | Full multi-session project start example |
|
|
48
|
-
| `high-risk-action-approval-flow-simulation.md` | End-to-end high-risk action cycle |
|
|
49
|
-
| `contract-drift-detection-simulation.md` | How to detect and resolve contract drift |
|
|
50
|
-
|
|
51
|
-
### Analyst & Compliance
|
|
52
|
-
| Document | Focus |
|
|
53
|
-
|----------|-------|
|
|
54
|
-
| `analyst-contract-integrity-guide.md` | @analyst’s verification responsibilities and processes |
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
## Recommended Reading Order (for New Projects)
|
|
59
|
-
|
|
60
|
-
1. **@manager** (before anything else)
|
|
61
|
-
- `corporate-project-scaffolding-sop.md`
|
|
62
|
-
- `corporate-project-kickoff-checklist.md`
|
|
63
|
-
- `governance-baseline-briefing-template.md`
|
|
64
|
-
|
|
65
|
-
2. **All Agents**
|
|
66
|
-
- `branded-types-law.md`
|
|
67
|
-
- `high-risk-actions-managerapproval.md`
|
|
68
|
-
|
|
69
|
-
3. **Specialist Agents**
|
|
70
|
-
- @backend → `backend-high-risk-endpoint-guide.md` + `domain-error-handling-standard.md`
|
|
71
|
-
- @frontend → `frontend-high-risk-modal-guide.md`
|
|
72
|
-
- @analyst → `analyst-contract-integrity-guide.md`
|
|
73
|
-
|
|
74
|
-
4. **Simulations** (for deeper understanding)
|
|
75
|
-
- Start with `corporate-project-kickoff-simulation.md`
|
|
76
|
-
|
|
77
|
-
---
|
|
78
|
-
|
|
79
|
-
## When to Reference This Playbook
|
|
80
|
-
|
|
81
|
-
- At the start of every new corporate project
|
|
82
|
-
- When any high-risk feature is being planned
|
|
83
|
-
- During contract changes
|
|
84
|
-
- When @analyst detects governance or contract issues
|
|
85
|
-
- During project retrospectives
|
|
86
|
-
|
|
87
|
-
---
|
|
88
|
-
|
|
89
|
-
**This playbook is the single source of truth for corporate governance in Agent Enderun.**
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
# Corporate Project Kickoff Checklist
|
|
2
|
-
|
|
3
|
-
**Owner:** @manager
|
|
4
|
-
**Audience:** Human user + all specialist agents
|
|
5
|
-
|
|
6
|
-
This checklist must be completed (and documented in `PROJECT_MEMORY.md`) at the very beginning of any corporate or enterprise-grade project.
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## Phase 0 – Governance Alignment
|
|
11
|
-
|
|
12
|
-
- [ ] @manager has read all files in `.enderun/knowledge/corporate-governance/`
|
|
13
|
-
- [ ] User has been given the Governance Baseline Briefing
|
|
14
|
-
- [ ] User has explicitly acknowledged the corporate standards
|
|
15
|
-
- [ ] Decision recorded in `PROJECT_MEMORY.md` under "Critical Decisions"
|
|
16
|
-
|
|
17
|
-
## Phase 1 – Project Structure & Contracts
|
|
18
|
-
|
|
19
|
-
- [ ] `apps/backend/src/types` folder structure created
|
|
20
|
-
- [ ] Branded Types utility + core identifiers defined
|
|
21
|
-
- [ ] `ManagerApproval` and `HighRiskActionPayload` interfaces defined
|
|
22
|
-
- [ ] `contract.version.json` initialized
|
|
23
|
-
- [ ] @frontend has created matching type copies in `apps/web/src/types`
|
|
24
|
-
- [ ] @analyst has been briefed on contract integrity responsibility
|
|
25
|
-
|
|
26
|
-
## Phase 2 – High-Risk Governance Infrastructure (if privileged operations expected)
|
|
27
|
-
|
|
28
|
-
- [ ] High-risk validation logic designed for @backend
|
|
29
|
-
- [ ] Security Modal + Hermes briefing flow designed for @frontend
|
|
30
|
-
- [ ] Audit logging strategy defined (see audit-logging-standard.md)
|
|
31
|
-
- [ ] Domain Error hierarchy created (including `HighRiskActionRequiresApprovalError`)
|
|
32
|
-
- [ ] Both @backend and @frontend agents have received explicit briefings referencing the knowledge files
|
|
33
|
-
|
|
34
|
-
## Phase 3 – Tooling & Process
|
|
35
|
-
|
|
36
|
-
- [ ] @analyst has confirmed contract drift detection process
|
|
37
|
-
- [ ] Documentation ownership rule explained (all architecture decisions go to `docs/architecture/decisions/`)
|
|
38
|
-
- [ ] First ADR (Architecture Decision Record) created for governance baseline
|
|
39
|
-
- [ ] @manager has updated `PROJECT_MEMORY.md` with initial trace and active tasks
|
|
40
|
-
|
|
41
|
-
## Phase 4 – Team Alignment
|
|
42
|
-
|
|
43
|
-
- [ ] All active agents have loaded the latest versions of:
|
|
44
|
-
- `branded-types-law.md`
|
|
45
|
-
- `high-risk-actions-managerapproval.md`
|
|
46
|
-
- `high-risk-security-modal-hermes-flow.md`
|
|
47
|
-
- `audit-logging-standard.md`
|
|
48
|
-
- `domain-error-handling-standard.md`
|
|
49
|
-
- [ ] @manager has confirmed that no specialist agent may begin implementation work until the above items are complete
|
|
50
|
-
|
|
51
|
-
---
|
|
52
|
-
|
|
53
|
-
**@manager Note**:
|
|
54
|
-
Do not proceed to feature development until this checklist is fully completed and acknowledged by the user. Shortcuts at this stage create expensive technical debt later.
|
|
55
|
-
|
|
56
|
-
Mark items as done in `PROJECT_MEMORY.md` under a dedicated "Kickoff Checklist" section.
|