mindforge-cc 9.0.0 → 10.0.0
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/.mindforge/config.json +1 -1
- package/CHANGELOG.md +15 -0
- package/LICENSE +1 -1
- package/MINDFORGE.md +13 -0
- package/README.md +7 -1
- package/bin/autonomous/audit-writer.js +90 -0
- package/bin/autonomous/auto-runner.js +209 -431
- package/bin/autonomous/state-manager.js +116 -0
- package/bin/autonomous/task-dispatcher.js +114 -0
- package/bin/autonomous/wave-executor.js +169 -0
- package/bin/browser/browser-daemon.js +31 -1
- package/bin/change-classifier.js +3 -3
- package/bin/dashboard/api-router.js +21 -22
- package/bin/dashboard/metrics-aggregator.js +44 -3
- package/bin/dashboard/server.js +54 -10
- package/bin/dashboard/sse-bridge.js +51 -5
- package/bin/engine/learning-manager.js +1 -1
- package/bin/engine/mesh-syncer.js +26 -22
- package/bin/engine/nexus-tracer.js +6 -5
- package/bin/engine/orbital-guardian.js +13 -10
- package/bin/engine/skill-evolver.js +12 -14
- package/bin/engine/temporal-hub.js +25 -1
- package/bin/governance/policy-engine.js +5 -5
- package/bin/governance/policy-gate-hardened.js +2 -2
- package/bin/governance/quantum-crypto.js +10 -2
- package/bin/memory/identity-synthesizer.js +9 -11
- package/bin/memory/knowledge-store.js +62 -6
- package/bin/memory/semantic-hub.js +26 -30
- package/bin/memory/vector-hub.js +377 -193
- package/bin/migrations/v8-sqlite-migration.js +22 -21
- package/bin/migrations/v9-unified-memory.js +1 -1
- package/bin/mindforge-cli.js +47 -11
- package/bin/models/model-broker.js +2 -0
- package/bin/revops/remediation-queue.js +16 -55
- package/bin/utils/errors.js +40 -0
- package/bin/utils/file-io.js +102 -0
- package/bin/utils/index.js +6 -0
- package/bin/utils/paths.js +33 -0
- package/docs/sdk-reference.md +374 -24
- package/docs/troubleshooting.md +4 -4
- package/examples/sdk-integration/README.md +24 -0
- package/examples/sdk-integration/index.js +24 -0
- package/examples/starter-project/MINDFORGE.md +8 -8
- package/package.json +25 -14
- package/.agent/bin/lib/commands.cjs +0 -959
- package/.agent/bin/lib/config.cjs +0 -421
- package/.agent/bin/lib/core.cjs +0 -1166
- package/.agent/bin/lib/frontmatter.cjs +0 -307
- package/.agent/bin/lib/init.cjs +0 -1336
- package/.agent/bin/lib/milestone.cjs +0 -252
- package/.agent/bin/lib/model-profiles.cjs +0 -68
- package/.agent/bin/lib/phase.cjs +0 -888
- package/.agent/bin/lib/profile-output.cjs +0 -952
- package/.agent/bin/lib/profile-pipeline.cjs +0 -539
- package/.agent/bin/lib/roadmap.cjs +0 -329
- package/.agent/bin/lib/security.cjs +0 -356
- package/.agent/bin/lib/state.cjs +0 -969
- package/.agent/bin/lib/template.cjs +0 -222
- package/.agent/bin/lib/uat.cjs +0 -189
- package/.agent/bin/lib/verify.cjs +0 -851
- package/.agent/bin/lib/workstream.cjs +0 -491
- package/.agent/bin/mindforge-tools.cjs +0 -897
- package/.agent/file-manifest.json +0 -219
- package/.agent/forge/help.md +0 -11
- package/.agent/forge/init-project.md +0 -36
- package/.agent/forge/plan-phase.md +0 -34
- package/.agent/mindforge/add-backlog.md +0 -32
- package/.agent/mindforge/agent.md +0 -31
- package/.agent/mindforge/approve.md +0 -22
- package/.agent/mindforge/audit.md +0 -34
- package/.agent/mindforge/auto.md +0 -26
- package/.agent/mindforge/benchmark.md +0 -37
- package/.agent/mindforge/browse.md +0 -30
- package/.agent/mindforge/complete-milestone.md +0 -22
- package/.agent/mindforge/costs.md +0 -15
- package/.agent/mindforge/cross-review.md +0 -21
- package/.agent/mindforge/dashboard.md +0 -102
- package/.agent/mindforge/debug.md +0 -133
- package/.agent/mindforge/discuss-phase.md +0 -142
- package/.agent/mindforge/do.md +0 -31
- package/.agent/mindforge/execute-phase.md +0 -200
- package/.agent/mindforge/health.md +0 -31
- package/.agent/mindforge/help.md +0 -33
- package/.agent/mindforge/init-org.md +0 -135
- package/.agent/mindforge/init-project.md +0 -170
- package/.agent/mindforge/install-skill.md +0 -28
- package/.agent/mindforge/learn.md +0 -147
- package/.agent/mindforge/learning.md +0 -20
- package/.agent/mindforge/map-codebase.md +0 -302
- package/.agent/mindforge/marketplace.md +0 -124
- package/.agent/mindforge/metrics.md +0 -26
- package/.agent/mindforge/migrate.md +0 -44
- package/.agent/mindforge/milestone.md +0 -16
- package/.agent/mindforge/new-runtime.md +0 -23
- package/.agent/mindforge/next.md +0 -109
- package/.agent/mindforge/note.md +0 -35
- package/.agent/mindforge/plan-phase.md +0 -131
- package/.agent/mindforge/plant-seed.md +0 -31
- package/.agent/mindforge/plugins.md +0 -44
- package/.agent/mindforge/pr-review.md +0 -45
- package/.agent/mindforge/profile-team.md +0 -27
- package/.agent/mindforge/publish-skill.md +0 -23
- package/.agent/mindforge/qa.md +0 -20
- package/.agent/mindforge/quick.md +0 -139
- package/.agent/mindforge/record-learning.md +0 -22
- package/.agent/mindforge/release.md +0 -14
- package/.agent/mindforge/remember.md +0 -30
- package/.agent/mindforge/research.md +0 -16
- package/.agent/mindforge/retrospective.md +0 -31
- package/.agent/mindforge/review-backlog.md +0 -34
- package/.agent/mindforge/review.md +0 -161
- package/.agent/mindforge/security-scan.md +0 -242
- package/.agent/mindforge/session-report.md +0 -39
- package/.agent/mindforge/ship.md +0 -111
- package/.agent/mindforge/skills.md +0 -145
- package/.agent/mindforge/status.md +0 -113
- package/.agent/mindforge/steer.md +0 -17
- package/.agent/mindforge/sync-confluence.md +0 -15
- package/.agent/mindforge/sync-jira.md +0 -16
- package/.agent/mindforge/tokens.md +0 -12
- package/.agent/mindforge/ui-phase.md +0 -34
- package/.agent/mindforge/ui-review.md +0 -36
- package/.agent/mindforge/update.md +0 -46
- package/.agent/mindforge/validate-phase.md +0 -31
- package/.agent/mindforge/verify-phase.md +0 -66
- package/.agent/mindforge/workspace.md +0 -33
- package/.agent/mindforge/workstreams.md +0 -35
- package/.agent/settings.json +0 -42
- package/.agent/skills/mindforge-add-backlog/SKILL.md +0 -72
- package/.agent/skills/mindforge-add-phase/SKILL.md +0 -39
- package/.agent/skills/mindforge-add-tests/SKILL.md +0 -28
- package/.agent/skills/mindforge-add-todo/SKILL.md +0 -42
- package/.agent/skills/mindforge-audit-milestone/SKILL.md +0 -29
- package/.agent/skills/mindforge-audit-uat/SKILL.md +0 -20
- package/.agent/skills/mindforge-autonomous/SKILL.md +0 -33
- package/.agent/skills/mindforge-brainstorming/SKILL.md +0 -164
- package/.agent/skills/mindforge-brainstorming/scripts/frame-template.html +0 -214
- package/.agent/skills/mindforge-brainstorming/scripts/helper.js +0 -88
- package/.agent/skills/mindforge-brainstorming/scripts/server.cjs +0 -354
- package/.agent/skills/mindforge-brainstorming/scripts/start-server.sh +0 -148
- package/.agent/skills/mindforge-brainstorming/scripts/stop-server.sh +0 -56
- package/.agent/skills/mindforge-brainstorming/spec-document-reviewer-prompt.md +0 -49
- package/.agent/skills/mindforge-brainstorming/visual-companion.md +0 -287
- package/.agent/skills/mindforge-check-todos/SKILL.md +0 -40
- package/.agent/skills/mindforge-cleanup/SKILL.md +0 -19
- package/.agent/skills/mindforge-complete-milestone/SKILL.md +0 -131
- package/.agent/skills/mindforge-debug/SKILL.md +0 -163
- package/.agent/skills/mindforge-debug_extended/CREATION-LOG.md +0 -119
- package/.agent/skills/mindforge-debug_extended/SKILL.md +0 -296
- package/.agent/skills/mindforge-debug_extended/condition-based-waiting-example.ts +0 -158
- package/.agent/skills/mindforge-debug_extended/condition-based-waiting.md +0 -115
- package/.agent/skills/mindforge-debug_extended/defense-in-depth.md +0 -122
- package/.agent/skills/mindforge-debug_extended/find-polluter.sh +0 -63
- package/.agent/skills/mindforge-debug_extended/root-cause-tracing.md +0 -169
- package/.agent/skills/mindforge-debug_extended/test-academic.md +0 -14
- package/.agent/skills/mindforge-debug_extended/test-pressure-1.md +0 -58
- package/.agent/skills/mindforge-debug_extended/test-pressure-2.md +0 -68
- package/.agent/skills/mindforge-debug_extended/test-pressure-3.md +0 -69
- package/.agent/skills/mindforge-discuss-phase/SKILL.md +0 -54
- package/.agent/skills/mindforge-do/SKILL.md +0 -26
- package/.agent/skills/mindforge-execute-phase/SKILL.md +0 -49
- package/.agent/skills/mindforge-execute-phase_extended/SKILL.md +0 -70
- package/.agent/skills/mindforge-fast/SKILL.md +0 -23
- package/.agent/skills/mindforge-forensics/SKILL.md +0 -49
- package/.agent/skills/mindforge-health/SKILL.md +0 -17
- package/.agent/skills/mindforge-help/SKILL.md +0 -23
- package/.agent/skills/mindforge-insert-phase/SKILL.md +0 -28
- package/.agent/skills/mindforge-join-discord/SKILL.md +0 -19
- package/.agent/skills/mindforge-list-phase-assumptions/SKILL.md +0 -41
- package/.agent/skills/mindforge-list-workspaces/SKILL.md +0 -17
- package/.agent/skills/mindforge-manager/SKILL.md +0 -32
- package/.agent/skills/mindforge-map-codebase/SKILL.md +0 -64
- package/.agent/skills/mindforge-milestone-summary/SKILL.md +0 -44
- package/.agent/skills/mindforge-neural-orchestrator/SKILL.md +0 -115
- package/.agent/skills/mindforge-neural-orchestrator/references/codex-tools.md +0 -100
- package/.agent/skills/mindforge-neural-orchestrator/references/gemini-tools.md +0 -33
- package/.agent/skills/mindforge-new-milestone/SKILL.md +0 -38
- package/.agent/skills/mindforge-new-project/SKILL.md +0 -36
- package/.agent/skills/mindforge-new-workspace/SKILL.md +0 -39
- package/.agent/skills/mindforge-next/SKILL.md +0 -19
- package/.agent/skills/mindforge-note/SKILL.md +0 -29
- package/.agent/skills/mindforge-parallel-mesh_extended/SKILL.md +0 -182
- package/.agent/skills/mindforge-pause-work/SKILL.md +0 -35
- package/.agent/skills/mindforge-plan-milestone-gaps/SKILL.md +0 -28
- package/.agent/skills/mindforge-plan-phase/SKILL.md +0 -38
- package/.agent/skills/mindforge-plan-phase_extended/SKILL.md +0 -152
- package/.agent/skills/mindforge-plan-phase_extended/plan-document-reviewer-prompt.md +0 -49
- package/.agent/skills/mindforge-plant-seed/SKILL.md +0 -22
- package/.agent/skills/mindforge-pr-branch/SKILL.md +0 -21
- package/.agent/skills/mindforge-profile-user/SKILL.md +0 -38
- package/.agent/skills/mindforge-progress/SKILL.md +0 -19
- package/.agent/skills/mindforge-quick/SKILL.md +0 -38
- package/.agent/skills/mindforge-reapply-patches/SKILL.md +0 -124
- package/.agent/skills/mindforge-remove-phase/SKILL.md +0 -26
- package/.agent/skills/mindforge-remove-workspace/SKILL.md +0 -22
- package/.agent/skills/mindforge-research-phase/SKILL.md +0 -186
- package/.agent/skills/mindforge-resume-work/SKILL.md +0 -35
- package/.agent/skills/mindforge-review/SKILL.md +0 -31
- package/.agent/skills/mindforge-review-backlog/SKILL.md +0 -58
- package/.agent/skills/mindforge-review-inbound/SKILL.md +0 -213
- package/.agent/skills/mindforge-review-request/SKILL.md +0 -105
- package/.agent/skills/mindforge-review-request/code-reviewer.md +0 -146
- package/.agent/skills/mindforge-session-report/SKILL.md +0 -16
- package/.agent/skills/mindforge-set-profile/SKILL.md +0 -9
- package/.agent/skills/mindforge-settings/SKILL.md +0 -32
- package/.agent/skills/mindforge-ship/SKILL.md +0 -16
- package/.agent/skills/mindforge-ship_extended/SKILL.md +0 -200
- package/.agent/skills/mindforge-skill-creation/SKILL.md +0 -655
- package/.agent/skills/mindforge-skill-creation/anthropic-best-practices.md +0 -1150
- package/.agent/skills/mindforge-skill-creation/examples/CLAUDE_MD_TESTING.md +0 -189
- package/.agent/skills/mindforge-skill-creation/graphviz-conventions.dot +0 -172
- package/.agent/skills/mindforge-skill-creation/persuasion-principles.md +0 -187
- package/.agent/skills/mindforge-skill-creation/render-graphs.js +0 -168
- package/.agent/skills/mindforge-skill-creation/testing-skills-with-subagents.md +0 -384
- package/.agent/skills/mindforge-stats/SKILL.md +0 -16
- package/.agent/skills/mindforge-swarm-execution/SKILL.md +0 -277
- package/.agent/skills/mindforge-swarm-execution/code-quality-reviewer-prompt.md +0 -26
- package/.agent/skills/mindforge-swarm-execution/implementer-prompt.md +0 -113
- package/.agent/skills/mindforge-swarm-execution/spec-reviewer-prompt.md +0 -61
- package/.agent/skills/mindforge-system-architecture/SKILL.md +0 -136
- package/.agent/skills/mindforge-system-architecture/examples.md +0 -120
- package/.agent/skills/mindforge-system-architecture/scaling-checklist.md +0 -76
- package/.agent/skills/mindforge-tdd/SKILL.md +0 -112
- package/.agent/skills/mindforge-tdd/deep-modules.md +0 -21
- package/.agent/skills/mindforge-tdd/interface-design.md +0 -22
- package/.agent/skills/mindforge-tdd/mocking.md +0 -24
- package/.agent/skills/mindforge-tdd/refactoring.md +0 -21
- package/.agent/skills/mindforge-tdd/tests.md +0 -28
- package/.agent/skills/mindforge-tdd_extended/SKILL.md +0 -371
- package/.agent/skills/mindforge-tdd_extended/testing-anti-patterns.md +0 -299
- package/.agent/skills/mindforge-thread/SKILL.md +0 -123
- package/.agent/skills/mindforge-ui-phase/SKILL.md +0 -24
- package/.agent/skills/mindforge-ui-review/SKILL.md +0 -24
- package/.agent/skills/mindforge-update/SKILL.md +0 -35
- package/.agent/skills/mindforge-validate-phase/SKILL.md +0 -26
- package/.agent/skills/mindforge-verify-work/SKILL.md +0 -30
- package/.agent/skills/mindforge-verify-work_extended/SKILL.md +0 -139
- package/.agent/skills/mindforge-workspace-isolated/SKILL.md +0 -218
- package/.agent/skills/mindforge-workstreams/SKILL.md +0 -65
- package/.agent/workflows/forge:help.md +0 -10
- package/.agent/workflows/forge:init-project.md +0 -35
- package/.agent/workflows/forge:plan-phase.md +0 -33
- package/.agent/workflows/mindforge-add-phase.md +0 -112
- package/.agent/workflows/mindforge-add-tests.md +0 -351
- package/.agent/workflows/mindforge-add-todo.md +0 -158
- package/.agent/workflows/mindforge-audit-milestone.md +0 -332
- package/.agent/workflows/mindforge-audit-uat.md +0 -109
- package/.agent/workflows/mindforge-autonomous.md +0 -815
- package/.agent/workflows/mindforge-check-todos.md +0 -177
- package/.agent/workflows/mindforge-cleanup.md +0 -152
- package/.agent/workflows/mindforge-complete-milestone.md +0 -766
- package/.agent/workflows/mindforge-diagnose-issues.md +0 -220
- package/.agent/workflows/mindforge-discovery-phase.md +0 -289
- package/.agent/workflows/mindforge-discuss-phase-assumptions.md +0 -645
- package/.agent/workflows/mindforge-discuss-phase.md +0 -1047
- package/.agent/workflows/mindforge-do.md +0 -104
- package/.agent/workflows/mindforge-execute-phase.md +0 -838
- package/.agent/workflows/mindforge-execute-plan.md +0 -509
- package/.agent/workflows/mindforge-fast.md +0 -105
- package/.agent/workflows/mindforge-forensics.md +0 -265
- package/.agent/workflows/mindforge-health.md +0 -181
- package/.agent/workflows/mindforge-help.md +0 -606
- package/.agent/workflows/mindforge-insert-phase.md +0 -130
- package/.agent/workflows/mindforge-list-phase-assumptions.md +0 -178
- package/.agent/workflows/mindforge-list-workspaces.md +0 -56
- package/.agent/workflows/mindforge-manager.md +0 -360
- package/.agent/workflows/mindforge-map-codebase.md +0 -370
- package/.agent/workflows/mindforge-milestone-summary.md +0 -223
- package/.agent/workflows/mindforge-new-milestone.md +0 -469
- package/.agent/workflows/mindforge-new-project.md +0 -1226
- package/.agent/workflows/mindforge-new-workspace.md +0 -237
- package/.agent/workflows/mindforge-next.md +0 -97
- package/.agent/workflows/mindforge-node-repair.md +0 -92
- package/.agent/workflows/mindforge-note.md +0 -156
- package/.agent/workflows/mindforge-pause-work.md +0 -176
- package/.agent/workflows/mindforge-plan-milestone-gaps.md +0 -273
- package/.agent/workflows/mindforge-plan-phase.md +0 -877
- package/.agent/workflows/mindforge-plant-seed.md +0 -169
- package/.agent/workflows/mindforge-pr-branch.md +0 -129
- package/.agent/workflows/mindforge-profile-user.md +0 -450
- package/.agent/workflows/mindforge-progress.md +0 -507
- package/.agent/workflows/mindforge-quick.md +0 -732
- package/.agent/workflows/mindforge-remove-phase.md +0 -155
- package/.agent/workflows/mindforge-remove-workspace.md +0 -90
- package/.agent/workflows/mindforge-research-phase.md +0 -74
- package/.agent/workflows/mindforge-resume-project.md +0 -325
- package/.agent/workflows/mindforge-review.md +0 -228
- package/.agent/workflows/mindforge-session-report.md +0 -146
- package/.agent/workflows/mindforge-settings.md +0 -283
- package/.agent/workflows/mindforge-ship.md +0 -228
- package/.agent/workflows/mindforge-stats.md +0 -60
- package/.agent/workflows/mindforge-transition.md +0 -671
- package/.agent/workflows/mindforge-ui-phase.md +0 -290
- package/.agent/workflows/mindforge-ui-review.md +0 -157
- package/.agent/workflows/mindforge-update.md +0 -323
- package/.agent/workflows/mindforge-validate-phase.md +0 -167
- package/.agent/workflows/mindforge-verify-phase.md +0 -254
- package/.agent/workflows/mindforge-verify-work.md +0 -628
- package/.agent/workflows/mindforge:add-backlog.md +0 -24
- package/.agent/workflows/mindforge:agent.md +0 -25
- package/.agent/workflows/mindforge:approve.md +0 -21
- package/.agent/workflows/mindforge:architecture.md +0 -40
- package/.agent/workflows/mindforge:audit.md +0 -33
- package/.agent/workflows/mindforge:auto.md +0 -25
- package/.agent/workflows/mindforge:benchmark.md +0 -36
- package/.agent/workflows/mindforge:brainstorming.md +0 -16
- package/.agent/workflows/mindforge:browse.md +0 -29
- package/.agent/workflows/mindforge:complete-milestone.md +0 -21
- package/.agent/workflows/mindforge:costs.md +0 -14
- package/.agent/workflows/mindforge:cross-review.md +0 -20
- package/.agent/workflows/mindforge:dashboard.md +0 -101
- package/.agent/workflows/mindforge:debug.md +0 -131
- package/.agent/workflows/mindforge:discuss-phase.md +0 -141
- package/.agent/workflows/mindforge:do.md +0 -25
- package/.agent/workflows/mindforge:execute-phase.md +0 -205
- package/.agent/workflows/mindforge:executor.md +0 -18
- package/.agent/workflows/mindforge:health.md +0 -24
- package/.agent/workflows/mindforge:help.md +0 -26
- package/.agent/workflows/mindforge:identity.md +0 -18
- package/.agent/workflows/mindforge:init-org.md +0 -134
- package/.agent/workflows/mindforge:init-project.md +0 -185
- package/.agent/workflows/mindforge:install-skill.md +0 -27
- package/.agent/workflows/mindforge:learn.md +0 -146
- package/.agent/workflows/mindforge:map-codebase.md +0 -301
- package/.agent/workflows/mindforge:marketplace.md +0 -123
- package/.agent/workflows/mindforge:memory.md +0 -18
- package/.agent/workflows/mindforge:metrics.md +0 -25
- package/.agent/workflows/mindforge:migrate.md +0 -43
- package/.agent/workflows/mindforge:milestone.md +0 -15
- package/.agent/workflows/mindforge:new-runtime.md +0 -22
- package/.agent/workflows/mindforge:next.md +0 -108
- package/.agent/workflows/mindforge:note.md +0 -27
- package/.agent/workflows/mindforge:plan-phase.md +0 -139
- package/.agent/workflows/mindforge:planner.md +0 -18
- package/.agent/workflows/mindforge:plant-seed.md +0 -24
- package/.agent/workflows/mindforge:plugins.md +0 -43
- package/.agent/workflows/mindforge:pr-review.md +0 -44
- package/.agent/workflows/mindforge:profile-team.md +0 -26
- package/.agent/workflows/mindforge:publish-skill.md +0 -22
- package/.agent/workflows/mindforge:qa.md +0 -19
- package/.agent/workflows/mindforge:quick.md +0 -138
- package/.agent/workflows/mindforge:release.md +0 -13
- package/.agent/workflows/mindforge:remember.md +0 -29
- package/.agent/workflows/mindforge:research.md +0 -15
- package/.agent/workflows/mindforge:researcher.md +0 -18
- package/.agent/workflows/mindforge:retrospective.md +0 -29
- package/.agent/workflows/mindforge:review-backlog.md +0 -26
- package/.agent/workflows/mindforge:review.md +0 -160
- package/.agent/workflows/mindforge:reviewer.md +0 -18
- package/.agent/workflows/mindforge:security-scan.md +0 -236
- package/.agent/workflows/mindforge:session-report.md +0 -31
- package/.agent/workflows/mindforge:ship.md +0 -108
- package/.agent/workflows/mindforge:skills.md +0 -144
- package/.agent/workflows/mindforge:soul.md +0 -54
- package/.agent/workflows/mindforge:status.md +0 -107
- package/.agent/workflows/mindforge:steer.md +0 -16
- package/.agent/workflows/mindforge:sync-confluence.md +0 -14
- package/.agent/workflows/mindforge:sync-jira.md +0 -15
- package/.agent/workflows/mindforge:tdd.md +0 -46
- package/.agent/workflows/mindforge:tokens.md +0 -11
- package/.agent/workflows/mindforge:tool.md +0 -18
- package/.agent/workflows/mindforge:ui-phase.md +0 -27
- package/.agent/workflows/mindforge:ui-review.md +0 -28
- package/.agent/workflows/mindforge:update.md +0 -45
- package/.agent/workflows/mindforge:validate-phase.md +0 -25
- package/.agent/workflows/mindforge:verify-phase.md +0 -65
- package/.agent/workflows/mindforge:workspace.md +0 -32
- package/.agent/workflows/mindforge:workstreams.md +0 -27
- package/.agent/workflows/publish-release.md +0 -36
- package/.claude/CLAUDE.md +0 -102
- package/.claude/commands/forge/help.md +0 -7
- package/.claude/commands/forge/init-project.md +0 -32
- package/.claude/commands/forge/plan-phase.md +0 -30
- package/.claude/commands/mindforge/add-backlog.md +0 -32
- package/.claude/commands/mindforge/agent.md +0 -31
- package/.claude/commands/mindforge/approve.md +0 -22
- package/.claude/commands/mindforge/audit.md +0 -34
- package/.claude/commands/mindforge/auto.md +0 -26
- package/.claude/commands/mindforge/benchmark.md +0 -37
- package/.claude/commands/mindforge/browse.md +0 -30
- package/.claude/commands/mindforge/complete-milestone.md +0 -22
- package/.claude/commands/mindforge/costs.md +0 -15
- package/.claude/commands/mindforge/cross-review.md +0 -21
- package/.claude/commands/mindforge/dashboard.md +0 -102
- package/.claude/commands/mindforge/debug.md +0 -133
- package/.claude/commands/mindforge/discuss-phase.md +0 -142
- package/.claude/commands/mindforge/do.md +0 -31
- package/.claude/commands/mindforge/execute-phase.md +0 -200
- package/.claude/commands/mindforge/health.md +0 -31
- package/.claude/commands/mindforge/help.md +0 -33
- package/.claude/commands/mindforge/init-org.md +0 -135
- package/.claude/commands/mindforge/init-project.md +0 -170
- package/.claude/commands/mindforge/install-skill.md +0 -28
- package/.claude/commands/mindforge/learn.md +0 -147
- package/.claude/commands/mindforge/learning.md +0 -20
- package/.claude/commands/mindforge/map-codebase.md +0 -302
- package/.claude/commands/mindforge/marketplace.md +0 -124
- package/.claude/commands/mindforge/metrics.md +0 -26
- package/.claude/commands/mindforge/migrate.md +0 -44
- package/.claude/commands/mindforge/milestone.md +0 -16
- package/.claude/commands/mindforge/new-runtime.md +0 -23
- package/.claude/commands/mindforge/next.md +0 -109
- package/.claude/commands/mindforge/note.md +0 -35
- package/.claude/commands/mindforge/plan-phase.md +0 -131
- package/.claude/commands/mindforge/plant-seed.md +0 -31
- package/.claude/commands/mindforge/plugins.md +0 -44
- package/.claude/commands/mindforge/pr-review.md +0 -45
- package/.claude/commands/mindforge/profile-team.md +0 -27
- package/.claude/commands/mindforge/publish-skill.md +0 -23
- package/.claude/commands/mindforge/qa.md +0 -20
- package/.claude/commands/mindforge/quick.md +0 -139
- package/.claude/commands/mindforge/record-learning.md +0 -22
- package/.claude/commands/mindforge/release.md +0 -14
- package/.claude/commands/mindforge/remember.md +0 -30
- package/.claude/commands/mindforge/research.md +0 -16
- package/.claude/commands/mindforge/retrospective.md +0 -31
- package/.claude/commands/mindforge/review-backlog.md +0 -34
- package/.claude/commands/mindforge/review.md +0 -161
- package/.claude/commands/mindforge/security-scan.md +0 -242
- package/.claude/commands/mindforge/session-report.md +0 -39
- package/.claude/commands/mindforge/ship.md +0 -111
- package/.claude/commands/mindforge/skills.md +0 -145
- package/.claude/commands/mindforge/status.md +0 -113
- package/.claude/commands/mindforge/steer.md +0 -17
- package/.claude/commands/mindforge/sync-confluence.md +0 -15
- package/.claude/commands/mindforge/sync-jira.md +0 -16
- package/.claude/commands/mindforge/tokens.md +0 -12
- package/.claude/commands/mindforge/ui-phase.md +0 -34
- package/.claude/commands/mindforge/ui-review.md +0 -36
- package/.claude/commands/mindforge/update.md +0 -46
- package/.claude/commands/mindforge/validate-phase.md +0 -31
- package/.claude/commands/mindforge/verify-phase.md +0 -66
- package/.claude/commands/mindforge/workspace.md +0 -33
- package/.claude/commands/mindforge/workstreams.md +0 -35
- package/.claude/settings.local.json +0 -16
- package/.mindforge/audit/AUDIT-SCHEMA.md +0 -470
- package/.mindforge/browser/daemon-protocol.md +0 -24
- package/.mindforge/browser/qa-engine.md +0 -16
- package/.mindforge/browser/session-manager.md +0 -18
- package/.mindforge/browser/visual-verify-spec.md +0 -31
- package/.mindforge/celestial.db +0 -0
- package/.mindforge/ci/ci-config-schema.md +0 -21
- package/.mindforge/ci/ci-mode.md +0 -179
- package/.mindforge/ci/github-actions-adapter.md +0 -224
- package/.mindforge/ci/gitlab-ci-adapter.md +0 -31
- package/.mindforge/ci/jenkins-adapter.md +0 -44
- package/.mindforge/dashboard/api-reference.md +0 -122
- package/.mindforge/dashboard/dashboard-spec.md +0 -96
- package/.mindforge/distribution/marketplace.md +0 -53
- package/.mindforge/distribution/registry-client.md +0 -166
- package/.mindforge/distribution/registry-schema.md +0 -96
- package/.mindforge/distribution/skill-publisher.md +0 -44
- package/.mindforge/distribution/skill-validator.md +0 -74
- package/.mindforge/governance/GOVERNANCE-CONFIG.md +0 -17
- package/.mindforge/governance/approval-workflow.md +0 -37
- package/.mindforge/governance/change-classifier.md +0 -63
- package/.mindforge/governance/compliance-gates.md +0 -31
- package/.mindforge/governance/policies/sovereign-default.json +0 -16
- package/.mindforge/integrations/confluence.md +0 -27
- package/.mindforge/integrations/connection-manager.md +0 -163
- package/.mindforge/integrations/github.md +0 -25
- package/.mindforge/integrations/gitlab.md +0 -13
- package/.mindforge/integrations/jira.md +0 -102
- package/.mindforge/integrations/slack.md +0 -41
- package/.mindforge/intelligence/antipattern-detector.md +0 -75
- package/.mindforge/intelligence/difficulty-scorer.md +0 -55
- package/.mindforge/intelligence/health-engine.md +0 -208
- package/.mindforge/intelligence/skill-gap-analyser.md +0 -40
- package/.mindforge/intelligence/smart-compaction.md +0 -71
- package/.mindforge/memory/MEMORY-SCHEMA.md +0 -155
- package/.mindforge/memory/engine/capture-protocol.md +0 -36
- package/.mindforge/memory/engine/global-sync-spec.md +0 -42
- package/.mindforge/memory/engine/retrieval-spec.md +0 -44
- package/.mindforge/memory/sync-manifest.json +0 -6
- package/.mindforge/metrics/METRICS-SCHEMA.md +0 -42
- package/.mindforge/metrics/quality-tracker.md +0 -32
- package/.mindforge/models/model-registry.md +0 -48
- package/.mindforge/models/model-router.md +0 -30
- package/.mindforge/monorepo/cross-package-planner.md +0 -114
- package/.mindforge/monorepo/dependency-graph-builder.md +0 -32
- package/.mindforge/monorepo/workspace-detector.md +0 -129
- package/.mindforge/org/CONVENTIONS.md +0 -62
- package/.mindforge/org/ORG.md +0 -51
- package/.mindforge/org/SECURITY.md +0 -50
- package/.mindforge/org/TOOLS.md +0 -53
- package/.mindforge/org/integrations/INTEGRATIONS-CONFIG.md +0 -58
- package/.mindforge/org/skills/MANIFEST.md +0 -15
- package/.mindforge/plugins/PLUGINS-MANIFEST.md +0 -23
- package/.mindforge/plugins/plugin-loader.md +0 -93
- package/.mindforge/plugins/plugin-registry.md +0 -44
- package/.mindforge/plugins/plugin-schema.md +0 -68
- package/.mindforge/pr-review/ai-reviewer.md +0 -266
- package/.mindforge/pr-review/finding-formatter.md +0 -46
- package/.mindforge/pr-review/review-prompt-templates.md +0 -44
- package/.mindforge/production/compatibility-layer.md +0 -39
- package/.mindforge/production/migration-engine.md +0 -52
- package/.mindforge/production/production-checklist.md +0 -76
- package/.mindforge/production/token-optimiser.md +0 -68
- package/.mindforge/skills-builder/auto-capture-protocol.md +0 -88
- package/.mindforge/skills-builder/learn-protocol.md +0 -161
- package/.mindforge/skills-builder/quality-scoring.md +0 -120
- package/.mindforge/team/TEAM-PROFILE.md +0 -42
- package/.mindforge/team/multi-handoff.md +0 -23
- package/.mindforge/team/profiles/README.md +0 -13
- package/.mindforge/team/session-merger.md +0 -18
- package/.planning/ARCHITECTURE.md +0 -0
- package/.planning/HANDOFF.json +0 -8
- package/.planning/PROJECT.md +0 -33
- package/.planning/RELEASE-CHECKLIST.md +0 -68
- package/.planning/REQUIREMENTS.md +0 -35
- package/.planning/ROADMAP.md +0 -12
- package/.planning/STATE.md +0 -36
- package/.planning/approvals/.gitkeep +0 -1
- package/.planning/archive/.gitkeep +0 -1
- package/.planning/audit-archive/.gitkeep +0 -1
- package/.planning/decisions/.gitkeep +0 -0
- package/.planning/jira-sync.json +0 -1
- package/.planning/milestones/.gitkeep +0 -1
- package/.planning/phases/.gitkeep +0 -0
- package/.planning/research/.gitkeep +0 -0
- package/.planning/screenshots/.gitkeep +0 -0
- package/.planning/slack-threads.json +0 -1
- package/docs/CAPABILITIES-MANIFEST.md +0 -64
- package/docs/Context/Master-Context.md +0 -731
- package/docs/INTELLIGENCE-MESH.md +0 -37
- package/docs/MIND-FORGE-REFERENCE-V6.md +0 -96
- package/docs/PERSONAS.md +0 -960
- package/docs/References/audit-events.md +0 -59
- package/docs/References/checkpoints.md +0 -778
- package/docs/References/commands.md +0 -107
- package/docs/References/config-reference.md +0 -81
- package/docs/References/continuation-format.md +0 -249
- package/docs/References/decimal-phase-calculation.md +0 -64
- package/docs/References/git-integration.md +0 -295
- package/docs/References/git-planning-commit.md +0 -38
- package/docs/References/model-profile-resolution.md +0 -36
- package/docs/References/model-profiles.md +0 -139
- package/docs/References/phase-argument-parsing.md +0 -61
- package/docs/References/planning-config.md +0 -202
- package/docs/References/questioning.md +0 -162
- package/docs/References/sdk-api.md +0 -53
- package/docs/References/skills-api.md +0 -57
- package/docs/References/tdd.md +0 -263
- package/docs/References/ui-brand.md +0 -160
- package/docs/References/user-profiling.md +0 -681
- package/docs/References/verification-patterns.md +0 -612
- package/docs/References/workstream-flag.md +0 -58
- package/docs/Templates/Agents/CLAUDE-MD.md +0 -122
- package/docs/Templates/Agents/COPILOT-INSTRUCTIONS.md +0 -7
- package/docs/Templates/Agents/DEBUGGER-PROMPT.md +0 -91
- package/docs/Templates/Agents/PLANNER-PROMPT.md +0 -117
- package/docs/Templates/Codebase/architecture.md +0 -255
- package/docs/Templates/Codebase/concerns.md +0 -310
- package/docs/Templates/Codebase/conventions.md +0 -307
- package/docs/Templates/Codebase/integrations.md +0 -280
- package/docs/Templates/Codebase/stack.md +0 -186
- package/docs/Templates/Codebase/structure.md +0 -285
- package/docs/Templates/Codebase/testing.md +0 -480
- package/docs/Templates/Execution/CONTINUE-HERE.md +0 -78
- package/docs/Templates/Execution/DISCUSSION-LOG.md +0 -63
- package/docs/Templates/Execution/PHASE-PROMPT.md +0 -610
- package/docs/Templates/Execution/STATE.md +0 -176
- package/docs/Templates/Execution/SUMMARY-COMPLEX.md +0 -59
- package/docs/Templates/Execution/SUMMARY-MINIMAL.md +0 -41
- package/docs/Templates/Execution/SUMMARY-STANDARD.md +0 -48
- package/docs/Templates/Execution/SUMMARY.md +0 -248
- package/docs/Templates/Profile/DEV-PREFERENCES.md +0 -21
- package/docs/Templates/Profile/USER-PROFILE.md +0 -146
- package/docs/Templates/Profile/USER-SETUP.md +0 -311
- package/docs/Templates/Project/AGENTS_LEARNING.md +0 -88
- package/docs/Templates/Project/DISCOVERY.md +0 -146
- package/docs/Templates/Project/MILESTONE-ARCHIVE.md +0 -123
- package/docs/Templates/Project/MILESTONE.md +0 -115
- package/docs/Templates/Project/PROJECT.md +0 -206
- package/docs/Templates/Project/REQUIREMENTS.md +0 -231
- package/docs/Templates/Project/RETROSPECTIVE.md +0 -54
- package/docs/Templates/Project/ROADMAP.md +0 -202
- package/docs/Templates/Quality/DEBUG.md +0 -164
- package/docs/Templates/Quality/UAT.md +0 -280
- package/docs/Templates/Quality/UI-SPEC.md +0 -100
- package/docs/Templates/Quality/VALIDATION.md +0 -76
- package/docs/Templates/Quality/VERIFICATION-REPORT.md +0 -322
- package/docs/Templates/Research/ARCHITECTURE.md +0 -204
- package/docs/Templates/Research/FEATURES.md +0 -147
- package/docs/Templates/Research/PITFALLS.md +0 -200
- package/docs/Templates/Research/STACK.md +0 -120
- package/docs/Templates/Research/SUMMARY.md +0 -170
- package/docs/Templates/System/CONFIG.json +0 -43
- package/docs/Templates/System/CONTEXT.md +0 -352
- package/docs/adr/ADR-024-browser-localhost-only.md +0 -17
- package/docs/adr/ADR-025-visual-verify-failure-treatment.md +0 -19
- package/docs/adr/ADR-026-session-persistence-security.md +0 -20
- package/docs/adr/ADR-042-ads-protocol.md +0 -30
- package/docs/architecture/NEXUS-DASHBOARD.md +0 -35
- package/docs/architecture/PAR-ZTS-SURVEY.md +0 -43
- package/docs/architecture/README.md +0 -78
- package/docs/architecture/V3-CORE.md +0 -52
- package/docs/architecture/V4-SWARM-MESH.md +0 -77
- package/docs/architecture/V5-ENTERPRISE.md +0 -131
- package/docs/architecture/V6-SOVEREIGN.md +0 -43
- package/docs/architecture/V8-SRE.md +0 -88
- package/docs/architecture/V9-BEDROCK.md +0 -162
- package/docs/architecture/adr-039-multi-runtime-support.md +0 -20
- package/docs/architecture/adr-040-additive-schema-migration.md +0 -21
- package/docs/architecture/adr-041-stable-runtime-interface-contract.md +0 -20
- package/docs/architecture/decision-records-index.md +0 -29
- package/docs/ci-cd-integration.md +0 -30
- package/docs/ci-cd.md +0 -92
- package/docs/ci-quickstart.md +0 -78
- package/docs/commands-skills/DISCOVERED_SKILLS.md +0 -21
- package/docs/contributing/CONTRIBUTING.md +0 -38
- package/docs/contributing/plugin-authoring.md +0 -50
- package/docs/contributing/skill-authoring.md +0 -41
- package/docs/enterprise-setup.md +0 -25
- package/docs/feature-dashboard.md +0 -63
- package/docs/governance-guide.md +0 -134
- package/docs/monorepo-guide.md +0 -26
- package/docs/persona-customisation.md +0 -56
- package/docs/publishing-guide.md +0 -43
- package/docs/quick-verify.md +0 -33
- package/docs/registry/AGENTS.md +0 -37
- package/docs/registry/COMMANDS.md +0 -87
- package/docs/registry/HOOKS.md +0 -38
- package/docs/registry/PERSONAS.md +0 -64
- package/docs/registry/README.md +0 -27
- package/docs/registry/SKILLS.md +0 -142
- package/docs/registry/WORKFLOWS.md +0 -72
- package/docs/release-checklist-guide.md +0 -37
- package/docs/requirements.md +0 -29
- package/docs/security/SECURITY.md +0 -55
- package/docs/security/ZTAI-OVERVIEW.md +0 -37
- package/docs/security/penetration-test-results.md +0 -31
- package/docs/security/threat-model.md +0 -142
- package/docs/skills-authoring-guide.md +0 -176
- package/docs/skills-publishing-guide.md +0 -22
- package/docs/team-setup-guide.md +0 -21
- package/docs/testing-current-version.md +0 -130
- package/docs/tutorial.md +0 -162
- package/docs/upgrade.md +0 -58
- package/docs/usp-features.md +0 -102
- package/docs/workflow-atlas.md +0 -57
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
# MindForge Intelligence — Skill Gap Analyser
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
Identify required/recommended skills for a phase, compare with installed
|
|
5
|
-
skills, and report gaps before planning.
|
|
6
|
-
|
|
7
|
-
## Run points
|
|
8
|
-
1. `/mindforge:plan-phase` start
|
|
9
|
-
2. `/mindforge:discuss-phase`
|
|
10
|
-
3. `/mindforge:health`
|
|
11
|
-
|
|
12
|
-
## Analysis flow
|
|
13
|
-
1. Extract work signals from roadmap/context/requirements/architecture.
|
|
14
|
-
2. Map work categories to required/recommended skills.
|
|
15
|
-
3. Validate skills in manifest + filesystem + status.
|
|
16
|
-
4. Report missing/deprecated required skills and mitigation options.
|
|
17
|
-
|
|
18
|
-
## Category -> skill mapping
|
|
19
|
-
- UI/UX -> accessibility (required), performance (recommended)
|
|
20
|
-
- Database changes -> database-patterns (required), data-privacy (if PII)
|
|
21
|
-
- API endpoints -> api-design (required), security-review (if auth)
|
|
22
|
-
- Auth/payments/PII -> security-review (required), data-privacy (required for PII)
|
|
23
|
-
- Performance work -> performance (required)
|
|
24
|
-
- New feature -> testing-standards (required), documentation (recommended)
|
|
25
|
-
|
|
26
|
-
## Gap definition
|
|
27
|
-
A required skill is a gap if:
|
|
28
|
-
- not present in MANIFEST
|
|
29
|
-
- manifest path missing
|
|
30
|
-
- marked deprecated with no replacement
|
|
31
|
-
|
|
32
|
-
## Output
|
|
33
|
-
Produce `Skill Gap Analysis` section with:
|
|
34
|
-
- required skills table
|
|
35
|
-
- recommended skills table
|
|
36
|
-
- explicit gap count and options
|
|
37
|
-
|
|
38
|
-
## Health mode
|
|
39
|
-
In `/mindforge:health`, include org-level recommendation list using recent
|
|
40
|
-
phase patterns and missing capability frequencies.
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
# MindForge Intelligence — Smart Context Compaction
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
Replace truncation with structured extraction so future sessions preserve reasoning,
|
|
5
|
-
constraints, and in-progress state.
|
|
6
|
-
|
|
7
|
-
## Triggering and level selection
|
|
8
|
-
Day 2 threshold (`70%`) remains valid and now invokes Day 5 Level 1.
|
|
9
|
-
Level selection uses both context usage and session depth.
|
|
10
|
-
|
|
11
|
-
- Light session (`<5` tasks): use Level 1 even when context is high.
|
|
12
|
-
- Moderate session (`5-10` tasks): use Level 2 at `80%+`.
|
|
13
|
-
- Deep session (`10+` tasks): use Level 2 at `75%+`.
|
|
14
|
-
- Level 3 at `90%+` or urgent near-limit state.
|
|
15
|
-
|
|
16
|
-
## Levels
|
|
17
|
-
### Level 1 — Lightweight
|
|
18
|
-
Quick checkpoint: update `STATE.md` and `HANDOFF.json` with next task.
|
|
19
|
-
|
|
20
|
-
### Level 2 — Structured extraction
|
|
21
|
-
Capture:
|
|
22
|
-
- decisions made
|
|
23
|
-
- discoveries
|
|
24
|
-
- implicit knowledge
|
|
25
|
-
- quality signals
|
|
26
|
-
- precise in-progress state
|
|
27
|
-
|
|
28
|
-
### Level 3 — Emergency extraction
|
|
29
|
-
Capture minimum viable continuation context before hard limit.
|
|
30
|
-
|
|
31
|
-
## Level 2 extraction protocol
|
|
32
|
-
### Block A — Decisions made
|
|
33
|
-
For each decision: what, why, alternatives ruled out, impact area, ADR need.
|
|
34
|
-
|
|
35
|
-
### Block B — Discoveries
|
|
36
|
-
For each finding: fact, location, significance, assumption impact.
|
|
37
|
-
|
|
38
|
-
### Block C — Current task state
|
|
39
|
-
Record plan id, completed steps, remaining steps, current file, and inconsistency state.
|
|
40
|
-
|
|
41
|
-
### Block D — Implicit knowledge
|
|
42
|
-
Capture quirks, environment facts, and workarounds.
|
|
43
|
-
|
|
44
|
-
A knowledge item qualifies as a **quirk** if either:
|
|
45
|
-
1. It contradicts documentation or expected tool behavior.
|
|
46
|
-
2. A new agent reading only plans/personas would not infer it.
|
|
47
|
-
|
|
48
|
-
### Block E — Quality signals
|
|
49
|
-
Capture failed assumptions, friction patterns, quality gate root causes, and next-plan suggestions.
|
|
50
|
-
|
|
51
|
-
## Level 2 HANDOFF schema additions
|
|
52
|
-
- `decisions_made[]`
|
|
53
|
-
- `discoveries[]`
|
|
54
|
-
- `implicit_knowledge[]`
|
|
55
|
-
- `quality_signals[]`
|
|
56
|
-
- `in_progress.current_state`
|
|
57
|
-
|
|
58
|
-
## Session restart protocol
|
|
59
|
-
When loading Level 2 handoff:
|
|
60
|
-
1. Print compact summary counts.
|
|
61
|
-
2. Preload `implicit_knowledge` before plan execution.
|
|
62
|
-
3. If `in_progress.current_state` is inconsistent, block execution and ask to resolve first.
|
|
63
|
-
4. If user asks to inspect first, print first 50 lines of the inconsistent file inline.
|
|
64
|
-
|
|
65
|
-
## Compaction quality metric
|
|
66
|
-
Write one entry to `.mindforge/metrics/compaction-quality.jsonl`:
|
|
67
|
-
- `decisions_captured`
|
|
68
|
-
- `discoveries_captured`
|
|
69
|
-
- `implicit_knowledge_items`
|
|
70
|
-
- `quality_signals_captured`
|
|
71
|
-
- `next_session_continuation_success` (auto-inferred from next session, nullable initially)
|
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
# MindForge v2 — Knowledge Graph Schema
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
|
|
5
|
-
The MindForge knowledge graph is built from five JSONL files — all append-only,
|
|
6
|
-
all at `.mindforge/memory/`. Every entry has a consistent base schema plus
|
|
7
|
-
type-specific fields.
|
|
8
|
-
|
|
9
|
-
## Base schema (all entry types)
|
|
10
|
-
|
|
11
|
-
```json
|
|
12
|
-
{
|
|
13
|
-
"id": "kb-uuid-v4",
|
|
14
|
-
"timestamp": "ISO-8601",
|
|
15
|
-
"type": "architectural_decision|code_pattern|bug_pattern|team_preference|domain_knowledge",
|
|
16
|
-
"topic": "Short title (≤ 80 chars)",
|
|
17
|
-
"content": "Full knowledge content (no limit)",
|
|
18
|
-
"source": "Where this was captured: 'Phase 3 retro', 'Debug session 2026-01', 'Manual entry'",
|
|
19
|
-
"project": "project-name from PROJECT.md",
|
|
20
|
-
"confidence": 0.0,
|
|
21
|
-
"tags": ["tag1", "tag2"],
|
|
22
|
-
"linked_adrs": ["ADR-007"],
|
|
23
|
-
"times_referenced": 0,
|
|
24
|
-
"last_referenced": null,
|
|
25
|
-
"deprecated": false,
|
|
26
|
-
"deprecated_by": null
|
|
27
|
-
}
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Type-specific schemas
|
|
31
|
-
|
|
32
|
-
### `architectural_decision`
|
|
33
|
-
|
|
34
|
-
Extended fields:
|
|
35
|
-
|
|
36
|
-
```json
|
|
37
|
-
{
|
|
38
|
-
"decision": "Use argon2id for password hashing",
|
|
39
|
-
"rationale": "bcrypt is showing its age; argon2id is the modern standard",
|
|
40
|
-
"alternatives": ["bcrypt", "scrypt", "pbkdf2"],
|
|
41
|
-
"phase_number": 3,
|
|
42
|
-
"adr_reference": "ADR-007"
|
|
43
|
-
}
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Capture trigger: Phase completion (ADR files extracted), `/mindforge:discuss-phase`
|
|
47
|
-
|
|
48
|
-
### `code_pattern`
|
|
49
|
-
|
|
50
|
-
Extended fields:
|
|
51
|
-
|
|
52
|
-
```json
|
|
53
|
-
{
|
|
54
|
-
"pattern_type": "good|anti-pattern",
|
|
55
|
-
"language": "typescript",
|
|
56
|
-
"example_good": "// Code showing the correct pattern",
|
|
57
|
-
"example_bad": "// Code showing the incorrect pattern (for anti-patterns)",
|
|
58
|
-
"applies_to": ["auth", "database", "api"]
|
|
59
|
-
}
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
Capture trigger: Smart compaction Block D, debug session root cause
|
|
63
|
-
|
|
64
|
-
### `bug_pattern`
|
|
65
|
-
|
|
66
|
-
Extended fields:
|
|
67
|
-
|
|
68
|
-
```json
|
|
69
|
-
{
|
|
70
|
-
"bug_category": "auth|database|api|ui|performance|security",
|
|
71
|
-
"symptom": "Login works in tests but fails in production with cookie errors",
|
|
72
|
-
"root_cause": "httpOnly cookies require HTTPS; dev server was HTTP",
|
|
73
|
-
"fix": "Enable HTTPS in dev or use secure: false in development only",
|
|
74
|
-
"prevention": "Always configure cookie settings per-environment",
|
|
75
|
-
"severity_when_missed": "HIGH",
|
|
76
|
-
"recurrence_count": 1
|
|
77
|
-
}
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
Capture trigger: Debug session completion, security findings, retrospective "what went wrong"
|
|
81
|
-
|
|
82
|
-
### `team_preference`
|
|
83
|
-
|
|
84
|
-
Extended fields:
|
|
85
|
-
|
|
86
|
-
```json
|
|
87
|
-
{
|
|
88
|
-
"preference_type": "style|tool|process|convention|architecture",
|
|
89
|
-
"applies_when": "When implementing auth",
|
|
90
|
-
"preference": "Always use argon2id, never bcrypt. See ADR-007.",
|
|
91
|
-
"strength": "strong|moderate|weak",
|
|
92
|
-
"override_allowed": true
|
|
93
|
-
}
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
Capture trigger: Retrospective "what should we keep doing", steering instructions,
|
|
97
|
-
MINDFORGE.md changes from retrospective
|
|
98
|
-
|
|
99
|
-
### `domain_knowledge`
|
|
100
|
-
|
|
101
|
-
Extended fields:
|
|
102
|
-
|
|
103
|
-
```json
|
|
104
|
-
{
|
|
105
|
-
"domain": "JWT security",
|
|
106
|
-
"tech_stack": ["node.js", "typescript"],
|
|
107
|
-
"knowledge": "JWT access tokens should be short-lived (15 min). Refresh tokens in httpOnly cookies, not localStorage. Never decode JWT without verifying signature.",
|
|
108
|
-
"source_url": "https://auth0.com/docs/secure/tokens/json-web-tokens",
|
|
109
|
-
"verified_at": "2026-01-15"
|
|
110
|
-
}
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
Capture trigger: Research engine output, `/mindforge:remember --add`
|
|
114
|
-
|
|
115
|
-
## Confidence scoring
|
|
116
|
-
|
|
117
|
-
Confidence (0.0–1.0) represents how strongly this knowledge should be applied:
|
|
118
|
-
|
|
119
|
-
| Confidence | Meaning | How set |
|
|
120
|
-
| :--- | :--- | :--- |
|
|
121
|
-
| 0.9–1.0 | Strong team decision — always apply | Manual entry, strong steering, ADR |
|
|
122
|
-
| 0.7–0.9 | Clear pattern — apply unless there's a reason not to | Retrospective, debug session |
|
|
123
|
-
| 0.5–0.7 | Observed pattern — consider but verify | Smart compaction Block D |
|
|
124
|
-
| 0.3–0.5 | Weak signal — informational only | Single observation |
|
|
125
|
-
| < 0.3 | Hypothesis — don't apply proactively | Auto-captured, unverified |
|
|
126
|
-
|
|
127
|
-
## Confidence reinforcement
|
|
128
|
-
|
|
129
|
-
Each time an entry is referenced (retrieved and the advice was followed):
|
|
130
|
-
|
|
131
|
-
```bash
|
|
132
|
-
confidence = min(1.0, confidence + 0.05)
|
|
133
|
-
times_referenced += 1
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
Each time an entry is contradicted (a different decision was made):
|
|
137
|
-
|
|
138
|
-
```bash
|
|
139
|
-
confidence = max(0.0, confidence - 0.10)
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
## Deprecation
|
|
143
|
-
|
|
144
|
-
When a knowledge entry becomes outdated (e.g., team switches from argon2id to Passkeys):
|
|
145
|
-
|
|
146
|
-
```json
|
|
147
|
-
{
|
|
148
|
-
"deprecated": true,
|
|
149
|
-
"deprecated_by": "kb-uuid-of-newer-entry",
|
|
150
|
-
"deprecated_reason": "Superseded by WebAuthn/Passkeys approach (ADR-031)"
|
|
151
|
-
}
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
Deprecated entries are never deleted — they are excluded from active retrieval
|
|
155
|
-
but available for historical queries.
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# MindForge v2 — Knowledge Capture Protocol
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
The Capture Engine automatically extracts valuable engineering knowledge from session artifacts to ensure that project-specific wisdom is preserved beyond a single handoff.
|
|
6
|
-
|
|
7
|
-
## Capture Triggers
|
|
8
|
-
|
|
9
|
-
MindForge monitors the following lifecycle events for knowledge extraction:
|
|
10
|
-
|
|
11
|
-
1. **Phase Completion**: Extracting architectural decisions from `PROJECT.md` and phase retrospectives.
|
|
12
|
-
2. **Hardened Debugging**: Capturing "root cause -> fix" patterns from completed debug reports.
|
|
13
|
-
3. **Manual Command**: Using `/mindforge:remember --add` to explicitly record team preferences or domain knowledge.
|
|
14
|
-
4. **ADR Generation**: Parsing newly created Architecture Decision Records.
|
|
15
|
-
|
|
16
|
-
## Extraction Logic
|
|
17
|
-
|
|
18
|
-
The extraction process (via `knowledge-capture.js`) involves:
|
|
19
|
-
|
|
20
|
-
- **Structural Parsing**: Identifying standardized headings (e.g., "Decision", "Root Cause", "Pattern").
|
|
21
|
-
- **Deduplication**: Checking for existing entries with similar content to prevent knowledge bloat.
|
|
22
|
-
- **Initial Confidence**: Assigning a default confidence score (usually 0.5) to newly captured entries.
|
|
23
|
-
- **Auto-Tagging**: Inferring tags based on the file path and content context (e.g., `#nodejs`, `#security`).
|
|
24
|
-
|
|
25
|
-
## Inhibitors (What NOT to capture)
|
|
26
|
-
|
|
27
|
-
To prevent the knowledge base from becoming "noisy", the system ignores:
|
|
28
|
-
|
|
29
|
-
- Transient session state (e.g., local file counts).
|
|
30
|
-
- Intermediate debugging steps that didn't lead to a fix.
|
|
31
|
-
- Content marked with `#no-capture` or inside blocks labeled "Confidential".
|
|
32
|
-
|
|
33
|
-
## Retention Policy
|
|
34
|
-
|
|
35
|
-
- **Append-only**: Entries are never physically deleted.
|
|
36
|
-
- **Deprecation**: Outdated entries are marked as `deprecated: true` and replaced by newer entries with the same `source_id`.
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
# MindForge v2 — Global Knowledge Sync Specification
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
Allow knowledge to flow between projects via a machine-level global store.
|
|
6
|
-
Team members can promote project-specific insights to their global knowledge base,
|
|
7
|
-
which loads into every future project's session start.
|
|
8
|
-
|
|
9
|
-
## Storage locations
|
|
10
|
-
|
|
11
|
-
- **Project-local:** `.mindforge/memory/knowledge-base.jsonl` (per repo)
|
|
12
|
-
- **Global (machine):** `~/.mindforge/global-knowledge-base.jsonl` (per developer)
|
|
13
|
-
|
|
14
|
-
## Sync rules
|
|
15
|
-
|
|
16
|
-
- Promotion is MANUAL — nothing is auto-promoted to global. Use `/mindforge:remember --promote [ID]`.
|
|
17
|
-
- Loading is AUTOMATIC — global entries load at every session start if relevant.
|
|
18
|
-
- Project entries take precedence over global entries (same ID = local wins).
|
|
19
|
-
- Global entries receive a metadata flag `global: true` but are ranked alongside project entries based on relevance.
|
|
20
|
-
|
|
21
|
-
## What should be promoted to global
|
|
22
|
-
|
|
23
|
-
Good candidates for global promotion:
|
|
24
|
-
|
|
25
|
-
- Language-agnostic security practices ("always validate input before database queries")
|
|
26
|
-
- Technology-specific best practices learned through experience ("argon2id over bcrypt")
|
|
27
|
-
- Universal debugging patterns ("check the timezone mismatch before blaming async code")
|
|
28
|
-
- Cross-project architectural preferences ("Repository pattern over active record")
|
|
29
|
-
|
|
30
|
-
## Global entry metadata
|
|
31
|
-
|
|
32
|
-
When promoted to global, entries gain:
|
|
33
|
-
|
|
34
|
-
```json
|
|
35
|
-
{
|
|
36
|
-
"global": true,
|
|
37
|
-
"promoted_at": "ISO-8601",
|
|
38
|
-
"promoted_from_project": "saas-app",
|
|
39
|
-
"promoted_by": "git-config-user-email",
|
|
40
|
-
"global_applicability": "all|typescript|nodejs|react|[specific]"
|
|
41
|
-
}
|
|
42
|
-
```
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
# MindForge v2 — Knowledge Retrieval Specification
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
The Retrieval Engine is responsible for identifying and loading the most relevant pieces of long-term memory into the current session context to improve agent performance and consistency.
|
|
6
|
-
|
|
7
|
-
## Components
|
|
8
|
-
|
|
9
|
-
- **Indexer (`knowledge-indexer.js`)**: Handles the scoring and ranking of knowledge entries.
|
|
10
|
-
- **Session Loader (`session-memory-loader.js`)**: Orchestrates the loading of relevant memories at the start of a session.
|
|
11
|
-
|
|
12
|
-
## Scoring Logic (TF-IDF + Heuristics)
|
|
13
|
-
|
|
14
|
-
Relevance is calculated using a multi-factor scoring model:
|
|
15
|
-
|
|
16
|
-
1. **Text Search (TF-IDF)**:
|
|
17
|
-
- Tokenizes the query and knowledge text.
|
|
18
|
-
- Calculates Term Frequency (TF) and Inverse Document Frequency (IDF).
|
|
19
|
-
- Entries must have a positive TF-IDF score to be considered relevant if keywords are present.
|
|
20
|
-
|
|
21
|
-
2. **Confidence & Recency**:
|
|
22
|
-
- **Confidence Score**: Boosts entries with higher confidence levels (reinforced over time).
|
|
23
|
-
- **Recency Decay**: Prefer more recent knowledge entries, especially for bug patterns.
|
|
24
|
-
|
|
25
|
-
3. **Tag Overlap**:
|
|
26
|
-
- Queries can include required tags (e.g., `#typescript`).
|
|
27
|
-
- Entries with matching tags receive a significant boost.
|
|
28
|
-
|
|
29
|
-
4. **Inhibitors**:
|
|
30
|
-
- Deprecated entries are never retrieved.
|
|
31
|
-
- Low-confidence "noise" entries are filtered out.
|
|
32
|
-
|
|
33
|
-
## Context Injection
|
|
34
|
-
|
|
35
|
-
During session start, the loader:
|
|
36
|
-
1. Performs a broad search based on the current project's primary technology stack and recent activities.
|
|
37
|
-
2. Selects the top `N` (default 5-10) most relevant entries.
|
|
38
|
-
3. Injects them into the agent's secondary context (e.g., as a dedicated "Memory context" block).
|
|
39
|
-
|
|
40
|
-
## SDK Interface
|
|
41
|
-
|
|
42
|
-
```typescript
|
|
43
|
-
const relevantKnowledge = await memory.query("query string", ["#tag1"], 5);
|
|
44
|
-
```
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
# MindForge Metrics — Schema Reference
|
|
2
|
-
|
|
3
|
-
## Files
|
|
4
|
-
- `session-quality.jsonl`
|
|
5
|
-
- `phase-metrics.jsonl`
|
|
6
|
-
- `skill-usage.jsonl`
|
|
7
|
-
- `compaction-quality.jsonl`
|
|
8
|
-
|
|
9
|
-
All files are append-only JSONL.
|
|
10
|
-
|
|
11
|
-
## session-quality.jsonl fields
|
|
12
|
-
- session_id, date, phase, developer_id
|
|
13
|
-
- tasks_attempted, tasks_completed, tasks_failed
|
|
14
|
-
- verify_pass_rate, quality_gates_failed
|
|
15
|
-
- security_findings, context_compactions
|
|
16
|
-
- skills_loaded_count, antipatterns_detected
|
|
17
|
-
- session_quality_score, session_quality_score_raw
|
|
18
|
-
|
|
19
|
-
Score formula:
|
|
20
|
-
- base 100
|
|
21
|
-
- minus task/gate/security/antipattern penalties
|
|
22
|
-
- bonus for zero gate failures and zero security findings
|
|
23
|
-
- keep both raw and clamped (`0-100`) score for trend analysis
|
|
24
|
-
|
|
25
|
-
## phase-metrics.jsonl fields
|
|
26
|
-
- phase lifecycle and delivery coverage
|
|
27
|
-
- difficulty score
|
|
28
|
-
- security and UAT outcomes
|
|
29
|
-
- phase_quality_score
|
|
30
|
-
|
|
31
|
-
## skill-usage.jsonl fields
|
|
32
|
-
- date, phase, plan
|
|
33
|
-
- skill_name, skill_version
|
|
34
|
-
- trigger_type (`text_match|file_path_match|file_name_match`)
|
|
35
|
-
- trigger_keyword
|
|
36
|
-
- task_outcome, verify_passed_first_try
|
|
37
|
-
|
|
38
|
-
## compaction-quality.jsonl fields
|
|
39
|
-
- date, compaction_level, context_pct_at_compaction
|
|
40
|
-
- decisions_captured, discoveries_captured
|
|
41
|
-
- implicit_knowledge_items, quality_signals_captured
|
|
42
|
-
- next_session_continuation_success (auto-inferred where possible)
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
# MindForge Metrics — Quality Tracker
|
|
2
|
-
|
|
3
|
-
## Trend windows
|
|
4
|
-
- short: last 5 sessions
|
|
5
|
-
- medium: last 20 sessions
|
|
6
|
-
- long: all sessions
|
|
7
|
-
|
|
8
|
-
## Key targets
|
|
9
|
-
- Verify pass rate > 85% (warning < 75%)
|
|
10
|
-
- Task failure rate < 10% (warning > 20%)
|
|
11
|
-
- Compactions < 1 per 8 tasks (warning > 2 per session)
|
|
12
|
-
|
|
13
|
-
## Early warnings
|
|
14
|
-
- quality score drop >= 10 points over 3 sessions
|
|
15
|
-
- any CRITICAL security finding after clean streak
|
|
16
|
-
- compaction overhead > 2/session
|
|
17
|
-
- stale skills not triggered in 10 sessions
|
|
18
|
-
|
|
19
|
-
## Quality metrics -> agent behaviour adjustment
|
|
20
|
-
Automatic adjustments at session start:
|
|
21
|
-
|
|
22
|
-
- If verify pass rate < 75% over last 3 sessions:
|
|
23
|
-
tighten verify-step determinism checks before execution.
|
|
24
|
-
- If last-session task failure rate > 20%:
|
|
25
|
-
halve estimated scope and suggest splitting.
|
|
26
|
-
- If compaction frequency > 2/session:
|
|
27
|
-
proactively summarize every 4 tasks.
|
|
28
|
-
- If security findings trend worsens over 3 phases:
|
|
29
|
-
force-load `security-review` for all tasks in current phase.
|
|
30
|
-
|
|
31
|
-
Always report adjustment to user:
|
|
32
|
-
`Quality signal detected: [signal]. Adjusting behaviour: [adjustment].`
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
# MindForge v2 — Model Registry
|
|
2
|
-
# Version: v2.0.0-alpha.3
|
|
3
|
-
|
|
4
|
-
MindForge v2 uses a tiered multi-model architecture. Models are selected based on the task persona and difficulty tier.
|
|
5
|
-
|
|
6
|
-
## 1. Primary Reasoning Tier (Tier 1)
|
|
7
|
-
Used for complex architecture, planning, and high-stakes reasoning.
|
|
8
|
-
|
|
9
|
-
- **Anthropic Claude 3.5 Opus** (`claude-3-opus-20240229`)
|
|
10
|
-
- Strengths: Deepest reasoning, highly reliable for planning.
|
|
11
|
-
- Persona mapping: `architect`, `planner`.
|
|
12
|
-
- Setting: `PLANNER_MODEL`.
|
|
13
|
-
|
|
14
|
-
- **OpenAI GPT-4o** (`gpt-4o`)
|
|
15
|
-
- Strengths: Fast reasoning, excellent tool use, adversarial insight.
|
|
16
|
-
- Persona mapping: `reviewer`, `security-reviewer`.
|
|
17
|
-
- Setting: `REVIEWER_MODEL`.
|
|
18
|
-
|
|
19
|
-
## 2. Execution Tier (Tier 2)
|
|
20
|
-
Used for the bulk of code implementation and transformation tasks.
|
|
21
|
-
|
|
22
|
-
- **Anthropic Claude 3.5 Sonnet** (`claude-3-5-sonnet-20240620`)
|
|
23
|
-
- Strengths: Balanced speed/quality, best-in-class coding.
|
|
24
|
-
- Persona mapping: `developer`, `qa-engineer`.
|
|
25
|
-
- Setting: `EXECUTOR_MODEL`.
|
|
26
|
-
|
|
27
|
-
- **Google Gemini 1.5 Pro** (`gemini-1.5-pro`)
|
|
28
|
-
- Strengths: 1M context window, deep codebase research.
|
|
29
|
-
- Persona mapping: `research-agent`.
|
|
30
|
-
- Setting: `RESEARCH_MODEL`.
|
|
31
|
-
|
|
32
|
-
## 3. High-Security/Privacy Tier (Tier 3)
|
|
33
|
-
Used for tasks involving authentication, PII, or financial operations.
|
|
34
|
-
|
|
35
|
-
- **Anthropic Claude 3.5 Opus** (`claude-3-opus-20240229`)
|
|
36
|
-
- Setting: `SECURITY_MODEL`.
|
|
37
|
-
|
|
38
|
-
## 4. Utility/Quick Tier (Tier 4)
|
|
39
|
-
Used for low-ambiguity tasks and micro-transformations.
|
|
40
|
-
|
|
41
|
-
- **Anthropic Claude 3.5 Haiku** (`claude-3-5-haiku-20241022`)
|
|
42
|
-
- Setting: `QUICK_MODEL`.
|
|
43
|
-
|
|
44
|
-
## 5. Fallback Chain
|
|
45
|
-
If a primary model is unavailable (API key missing or 429), follow these defaults:
|
|
46
|
-
1. `gpt-4o` → `claude-3-5-sonnet`
|
|
47
|
-
2. `claude-3-opus` → `gpt-4o`
|
|
48
|
-
3. `gemini-1.5-pro` → `claude-3-5-sonnet` (limited context)
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# MindForge v2 — Model Router
|
|
2
|
-
# Version: v2.0.0-alpha.3
|
|
3
|
-
|
|
4
|
-
## Routing Logic
|
|
5
|
-
|
|
6
|
-
The MindForge router resolves which model to use at task dispatch time using this algorithm:
|
|
7
|
-
|
|
8
|
-
1. **Check Persona:** Map the task `<persona>` to a setting key.
|
|
9
|
-
- `developer` → `EXECUTOR_MODEL`
|
|
10
|
-
- `architect` → `PLANNER_MODEL`
|
|
11
|
-
- `security-reviewer` → `SECURITY_MODEL`
|
|
12
|
-
- `qa-engineer` → `QA_MODEL`
|
|
13
|
-
- `research-agent` → `RESEARCH_MODEL`
|
|
14
|
-
- `debug-specialist` → `DEBUG_MODEL`
|
|
15
|
-
- `unknown` → `EXECUTOR_MODEL`
|
|
16
|
-
|
|
17
|
-
2. **Check Tier Override:**
|
|
18
|
-
- If `tier == 3` (Security/Privacy), force `SECURITY_MODEL` regardless of persona.
|
|
19
|
-
|
|
20
|
-
3. **Check Budget Bias:**
|
|
21
|
-
- If `difficulty < 2.0` and `MODEL_PREFER_CHEAP_BELOW_DIFFICULTY` is set:
|
|
22
|
-
- Use `QUICK_MODEL` instead of the resolved model.
|
|
23
|
-
|
|
24
|
-
4. **Resolve Model ID:**
|
|
25
|
-
- Read the setting key from `MINDFORGE.md`.
|
|
26
|
-
- Use baked-in defaults if not present.
|
|
27
|
-
|
|
28
|
-
5. **Verify Availability:**
|
|
29
|
-
- Check if matching `[PROVIDER]_API_KEY` is present in environment.
|
|
30
|
-
- If missing: Apply fallback chain from `model-registry.md`.
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
# MindForge — Cross-Package Planner
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
When a phase spans multiple packages in a monorepo, coordinate execution
|
|
5
|
-
so that shared dependencies are built and tested before packages that
|
|
6
|
-
depend on them.
|
|
7
|
-
|
|
8
|
-
## Execution order algorithm
|
|
9
|
-
|
|
10
|
-
```
|
|
11
|
-
Given: a set of packages involved in the current phase
|
|
12
|
-
and their inter-package dependencies
|
|
13
|
-
|
|
14
|
-
Algorithm: topological sort of package dependency graph
|
|
15
|
-
|
|
16
|
-
Input: WORKSPACE-MANIFEST.json dependency_order
|
|
17
|
-
Output: ordered list of packages to process
|
|
18
|
-
|
|
19
|
-
Example:
|
|
20
|
-
Phase touches: @myapp/api, @myapp/shared, @myapp/web
|
|
21
|
-
Dependencies: api→shared, web→shared, web→api
|
|
22
|
-
Topological order: shared → api → web
|
|
23
|
-
|
|
24
|
-
Execution:
|
|
25
|
-
Wave 1: process @myapp/shared (no dependencies on other changed packages)
|
|
26
|
-
Wave 2: process @myapp/api (depends on Wave 1: shared)
|
|
27
|
-
Wave 3: process @myapp/web (depends on Wave 2: api + Wave 1: shared)
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Per-package PLAN file routing
|
|
31
|
-
|
|
32
|
-
When PLAN files are created for a monorepo phase, each plan specifies its target package:
|
|
33
|
-
|
|
34
|
-
```xml
|
|
35
|
-
<task type="auto">
|
|
36
|
-
<n>Add auth middleware to API</n>
|
|
37
|
-
<package>@myapp/api</package>
|
|
38
|
-
<working-dir>apps/api</working-dir>
|
|
39
|
-
<files>
|
|
40
|
-
apps/api/src/middleware/auth.ts
|
|
41
|
-
apps/api/src/middleware/auth.test.ts
|
|
42
|
-
</files>
|
|
43
|
-
<action>...</action>
|
|
44
|
-
<verify>cd apps/api && npm test -- --testPathPattern=auth.middleware</verify>
|
|
45
|
-
<done>Auth middleware tests passing in apps/api</done>
|
|
46
|
-
</task>
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## Cross-package test execution
|
|
50
|
-
|
|
51
|
-
After all packages in the phase are processed:
|
|
52
|
-
```bash
|
|
53
|
-
# Run tests across all affected packages
|
|
54
|
-
AFFECTED_PACKAGES=$(cat .planning/WORKSPACE-MANIFEST.json | \
|
|
55
|
-
node -e "const m=JSON.parse(require('fs').readFileSync('/dev/stdin','utf8')); \
|
|
56
|
-
console.log(m.packages.map(p=>p.path).join(' '))")
|
|
57
|
-
|
|
58
|
-
for PKG_PATH in ${AFFECTED_PACKAGES}; do
|
|
59
|
-
echo "Testing ${PKG_PATH}..."
|
|
60
|
-
cd "${PKG_PATH}" && npm test && cd -
|
|
61
|
-
done
|
|
62
|
-
|
|
63
|
-
# Run integration tests from root (if configured)
|
|
64
|
-
[ -f "package.json" ] && npm run test:integration 2>/dev/null || true
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
## Affected package detection (revised)
|
|
68
|
-
|
|
69
|
-
```bash
|
|
70
|
-
# CORRECTED: Match against declared package paths, not assume 2-level depth
|
|
71
|
-
detect_affected_packages() {
|
|
72
|
-
local MANIFEST=".planning/WORKSPACE-MANIFEST.json"
|
|
73
|
-
|
|
74
|
-
if [ ! -f "${MANIFEST}" ]; then
|
|
75
|
-
echo "Run /mindforge:workspace detect first"
|
|
76
|
-
return 1
|
|
77
|
-
fi
|
|
78
|
-
|
|
79
|
-
# Get list of changed files
|
|
80
|
-
CHANGED_FILES=$(git diff --name-only HEAD~1 2>/dev/null || git diff --cached --name-only)
|
|
81
|
-
|
|
82
|
-
# For each package in manifest, check if any changed file is within that package
|
|
83
|
-
node -e "
|
|
84
|
-
const fs = require('fs');
|
|
85
|
-
const manifest = JSON.parse(fs.readFileSync('${MANIFEST}', 'utf8'));
|
|
86
|
-
const changedFiles = \`${CHANGED_FILES}\`.split('\n').filter(Boolean);
|
|
87
|
-
|
|
88
|
-
const affected = new Set();
|
|
89
|
-
manifest.packages.forEach(pkg => {
|
|
90
|
-
// Check if any changed file is within this package's path
|
|
91
|
-
const pkgPath = pkg.path.replace(/\/$/, ''); // remove trailing slash
|
|
92
|
-
changedFiles.forEach(file => {
|
|
93
|
-
if (file.startsWith(pkgPath + '/') || file === pkgPath) {
|
|
94
|
-
affected.add(pkg.name);
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
|
|
99
|
-
// Also add packages that depend on affected packages
|
|
100
|
-
manifest.packages.forEach(pkg => {
|
|
101
|
-
if (pkg.dependencies && pkg.dependencies.some(dep => affected.has(dep))) {
|
|
102
|
-
affected.add(pkg.name);
|
|
103
|
-
}
|
|
104
|
-
});
|
|
105
|
-
|
|
106
|
-
console.log([...affected].join('\n'));
|
|
107
|
-
"
|
|
108
|
-
}
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
This correctly handles:
|
|
112
|
-
- Packages at any nesting depth (`libs/shared/utils/` → 3 levels deep)
|
|
113
|
-
- Packages whose path is a prefix of another (avoid false matches)
|
|
114
|
-
- Transitive dependencies (packages that depend on changed packages)
|