mindsystem-cc 3.19.0 → 3.21.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.
Files changed (83) hide show
  1. package/README.md +5 -6
  2. package/agents/ms-designer.md +5 -2
  3. package/agents/ms-mockup-designer.md +1 -1
  4. package/agents/ms-plan-writer.md +8 -1
  5. package/agents/ms-product-researcher.md +69 -0
  6. package/agents/ms-research-synthesizer.md +1 -1
  7. package/agents/ms-researcher.md +8 -8
  8. package/agents/ms-roadmapper.md +9 -13
  9. package/bin/install.js +68 -5
  10. package/commands/ms/add-phase.md +30 -18
  11. package/commands/ms/adhoc.md +1 -1
  12. package/commands/ms/audit-milestone.md +12 -12
  13. package/commands/ms/complete-milestone.md +25 -22
  14. package/commands/ms/config.md +202 -0
  15. package/commands/ms/design-phase.md +34 -29
  16. package/commands/ms/discuss-phase.md +26 -22
  17. package/commands/ms/doctor.md +22 -202
  18. package/commands/ms/execute-phase.md +18 -7
  19. package/commands/ms/help.md +46 -39
  20. package/commands/ms/insert-phase.md +29 -17
  21. package/commands/ms/new-milestone.md +42 -19
  22. package/commands/ms/new-project.md +88 -103
  23. package/commands/ms/plan-milestone-gaps.md +4 -5
  24. package/commands/ms/plan-phase.md +5 -3
  25. package/commands/ms/progress.md +2 -4
  26. package/commands/ms/research-phase.md +7 -12
  27. package/commands/ms/research-project.md +12 -12
  28. package/mindsystem/references/continuation-format.md +3 -3
  29. package/mindsystem/references/plan-format.md +11 -1
  30. package/mindsystem/references/principles.md +1 -1
  31. package/mindsystem/references/questioning.md +50 -8
  32. package/mindsystem/references/routing/audit-result-routing.md +12 -11
  33. package/mindsystem/references/routing/between-milestones-routing.md +2 -2
  34. package/mindsystem/references/routing/milestone-complete-routing.md +1 -1
  35. package/mindsystem/references/routing/next-phase-routing.md +4 -2
  36. package/mindsystem/templates/context.md +7 -6
  37. package/mindsystem/templates/milestone-archive.md +5 -5
  38. package/mindsystem/templates/milestone-context.md +1 -1
  39. package/mindsystem/templates/milestone.md +9 -9
  40. package/mindsystem/templates/project.md +70 -64
  41. package/mindsystem/templates/research-subagent-prompt.md +3 -3
  42. package/mindsystem/templates/roadmap-milestone.md +14 -14
  43. package/mindsystem/templates/roadmap.md +9 -7
  44. package/mindsystem/workflows/adhoc.md +1 -1
  45. package/mindsystem/workflows/complete-milestone.md +66 -107
  46. package/mindsystem/workflows/discuss-phase.md +137 -65
  47. package/mindsystem/workflows/doctor-fixes.md +273 -0
  48. package/mindsystem/workflows/execute-phase.md +7 -3
  49. package/mindsystem/workflows/execute-plan.md +6 -5
  50. package/mindsystem/workflows/map-codebase.md +2 -2
  51. package/mindsystem/workflows/mockup-generation.md +1 -1
  52. package/mindsystem/workflows/plan-phase.md +28 -3
  53. package/mindsystem/workflows/transition.md +20 -25
  54. package/mindsystem/workflows/verify-work.md +1 -1
  55. package/package.json +1 -1
  56. package/scripts/__pycache__/ms-tools.cpython-314.pyc +0 -0
  57. package/scripts/__pycache__/test_ms_tools.cpython-314-pytest-9.0.2.pyc +0 -0
  58. package/scripts/fixtures/scan-context/.planning/ROADMAP.md +16 -0
  59. package/scripts/fixtures/scan-context/.planning/adhoc/20260220-fix-token-SUMMARY.md +12 -0
  60. package/scripts/fixtures/scan-context/.planning/config.json +3 -0
  61. package/scripts/fixtures/scan-context/.planning/debug/resolved/token-bug.md +11 -0
  62. package/scripts/fixtures/scan-context/.planning/knowledge/auth.md +11 -0
  63. package/scripts/fixtures/scan-context/.planning/phases/02-infra/02-1-SUMMARY.md +20 -0
  64. package/scripts/fixtures/scan-context/.planning/phases/04-setup/04-1-SUMMARY.md +21 -0
  65. package/scripts/fixtures/scan-context/.planning/phases/05-auth/05-1-SUMMARY.md +28 -0
  66. package/scripts/fixtures/scan-context/.planning/todos/done/setup-db.md +10 -0
  67. package/scripts/fixtures/scan-context/.planning/todos/pending/add-logout.md +10 -0
  68. package/scripts/fixtures/scan-context/expected-output.json +257 -0
  69. package/scripts/ms-tools.py +2139 -0
  70. package/scripts/test_ms_tools.py +836 -0
  71. package/commands/ms/list-phase-assumptions.md +0 -56
  72. package/mindsystem/workflows/list-phase-assumptions.md +0 -178
  73. package/scripts/__pycache__/compare_mockups.cpython-314.pyc +0 -0
  74. package/scripts/archive-milestone-files.sh +0 -68
  75. package/scripts/archive-milestone-phases.sh +0 -138
  76. package/scripts/doctor-scan.sh +0 -379
  77. package/scripts/gather-milestone-stats.sh +0 -179
  78. package/scripts/generate-adhoc-patch.sh +0 -79
  79. package/scripts/generate-phase-patch.sh +0 -169
  80. package/scripts/scan-artifact-subsystems.sh +0 -55
  81. package/scripts/scan-planning-context.py +0 -839
  82. package/scripts/update-state.sh +0 -59
  83. package/scripts/validate-execution-order.sh +0 -104
@@ -1,59 +0,0 @@
1
- #!/bin/bash
2
- #
3
- # update-state.sh
4
- # Updates .planning/STATE.md Plan and Status lines based on plan progress.
5
- # Idempotent — same arguments produce the same result.
6
- #
7
- # Usage: ./scripts/update-state.sh <completed_plan_count> <total_plans>
8
- # Example: ./scripts/update-state.sh 2 4
9
- # (2 of 4 plans complete)
10
- #
11
-
12
- set -e
13
-
14
- # --- Validation ---
15
- if [ -z "$1" ] || [ -z "$2" ]; then
16
- echo "Error: Two arguments required"
17
- echo "Usage: $0 <completed_plan_count> <total_plans>"
18
- exit 1
19
- fi
20
-
21
- COMPLETED="$1"
22
- TOTAL="$2"
23
-
24
- if ! [[ "$COMPLETED" =~ ^[0-9]+$ ]] || ! [[ "$TOTAL" =~ ^[0-9]+$ ]]; then
25
- echo "Error: Both arguments must be numeric"
26
- echo "Usage: $0 <completed_plan_count> <total_plans>"
27
- exit 1
28
- fi
29
-
30
- if [ "$COMPLETED" -gt "$TOTAL" ]; then
31
- echo "Error: Completed ($COMPLETED) cannot exceed total ($TOTAL)"
32
- exit 1
33
- fi
34
-
35
- # --- Find STATE.md from git root ---
36
- GIT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null)
37
- if [ -z "$GIT_ROOT" ]; then
38
- echo "Error: Not in a git repository"
39
- exit 1
40
- fi
41
-
42
- STATE_FILE="$GIT_ROOT/.planning/STATE.md"
43
- if [ ! -f "$STATE_FILE" ]; then
44
- echo "Error: STATE.md not found at $STATE_FILE"
45
- exit 1
46
- fi
47
-
48
- # --- Update Plan line ---
49
- sed -i '' "s/^Plan:.*/Plan: $COMPLETED of $TOTAL complete in current phase/" "$STATE_FILE"
50
-
51
- # --- Update Status line ---
52
- if [ "$COMPLETED" -eq "$TOTAL" ]; then
53
- sed -i '' "s/^Status:.*/Status: All plans executed, pending verification/" "$STATE_FILE"
54
- else
55
- sed -i '' "s/^Status:.*/Status: In progress — plan $COMPLETED of $TOTAL complete/" "$STATE_FILE"
56
- fi
57
-
58
- echo "STATE.md updated: $COMPLETED of $TOTAL plans complete"
59
- exit 0
@@ -1,104 +0,0 @@
1
- #!/bin/bash
2
- #
3
- # validate-execution-order.sh
4
- # Validates EXECUTION-ORDER.md against plan files in a phase directory.
5
- # Checks bidirectional consistency and warns about file conflicts within waves.
6
- #
7
- # Usage: ./scripts/validate-execution-order.sh <phase_directory>
8
- # Example: ./scripts/validate-execution-order.sh .planning/phases/03-auth
9
- #
10
-
11
- set -e
12
-
13
- # --- Validation ---
14
- if [ -z "$1" ]; then
15
- echo "Error: Phase directory required"
16
- echo "Usage: $0 <phase_directory>"
17
- exit 1
18
- fi
19
-
20
- PHASE_DIR="$1"
21
-
22
- if [ ! -d "$PHASE_DIR" ]; then
23
- echo "FAIL: Directory does not exist: $PHASE_DIR"
24
- exit 1
25
- fi
26
-
27
- EXEC_ORDER="$PHASE_DIR/EXECUTION-ORDER.md"
28
- if [ ! -f "$EXEC_ORDER" ]; then
29
- echo "FAIL: EXECUTION-ORDER.md not found in $PHASE_DIR"
30
- exit 1
31
- fi
32
-
33
- # --- Collect plan files on disk ---
34
- DISK_PLANS=$(ls -1 "$PHASE_DIR"/*-PLAN.md 2>/dev/null | xargs -I{} basename {} | sort)
35
- DISK_COUNT=$(echo "$DISK_PLANS" | grep -c . 2>/dev/null || echo 0)
36
-
37
- if [ "$DISK_COUNT" -eq 0 ]; then
38
- echo "FAIL: No *-PLAN.md files found in $PHASE_DIR"
39
- exit 1
40
- fi
41
-
42
- # --- Parse EXECUTION-ORDER.md for plan filenames ---
43
- # Pattern matches phase-prefixed names like 03-01-PLAN.md, 16-01-PLAN.md, 72.1-01-PLAN.md
44
- ORDER_PLANS=$(grep -oE '[0-9][0-9.]*-[0-9]+-PLAN\.md' "$EXEC_ORDER" | sort -u)
45
- ORDER_COUNT=$(echo "$ORDER_PLANS" | grep -c . 2>/dev/null || echo 0)
46
-
47
- # --- Check 1: Every disk plan is listed in EXECUTION-ORDER.md ---
48
- ERRORS=""
49
- while IFS= read -r plan; do
50
- [ -z "$plan" ] && continue
51
- if ! echo "$ORDER_PLANS" | grep -qx "$plan"; then
52
- ERRORS="${ERRORS} Missing from EXECUTION-ORDER.md: $plan\n"
53
- fi
54
- done <<< "$DISK_PLANS"
55
-
56
- # --- Check 2: Every plan in EXECUTION-ORDER.md exists on disk ---
57
- while IFS= read -r plan; do
58
- [ -z "$plan" ] && continue
59
- if ! echo "$DISK_PLANS" | grep -qx "$plan"; then
60
- ERRORS="${ERRORS} Listed in EXECUTION-ORDER.md but file missing: $plan\n"
61
- fi
62
- done <<< "$ORDER_PLANS"
63
-
64
- if [ -n "$ERRORS" ]; then
65
- echo "FAIL: Plan/execution-order mismatch"
66
- printf "%b" "$ERRORS"
67
- exit 1
68
- fi
69
-
70
- # --- Check 3 (warning): File conflicts within waves ---
71
- CURRENT_WAVE=""
72
- WAVE_COUNT=0
73
- CURRENT_WAVE_FILES=""
74
-
75
- while IFS= read -r line; do
76
- if echo "$line" | grep -qE '^## Wave [0-9]+'; then
77
- CURRENT_WAVE=$(echo "$line" | grep -oE '[0-9]+')
78
- WAVE_COUNT=$((WAVE_COUNT + 1))
79
- CURRENT_WAVE_FILES=""
80
- elif [ -n "$CURRENT_WAVE" ]; then
81
- PLAN_FILE=$(echo "$line" | grep -oE '[0-9][0-9.]*-[0-9]+-PLAN\.md' || true)
82
- if [ -n "$PLAN_FILE" ] && [ -f "$PHASE_DIR/$PLAN_FILE" ]; then
83
- # Extract **Files:** lines from plan
84
- FILE_PATHS=$(grep -E '^\*\*Files:\*\*' "$PHASE_DIR/$PLAN_FILE" | sed 's/\*\*Files:\*\*//g' | tr ',' '\n' | sed 's/`//g; s/^[[:space:]]*//; s/[[:space:]]*$//' | grep -v '^$' || true)
85
- while IFS= read -r fpath; do
86
- [ -z "$fpath" ] && continue
87
- if echo "$CURRENT_WAVE_FILES" | grep -qF "|$fpath|"; then
88
- echo "WARNING: File '$fpath' appears in multiple plans within Wave $CURRENT_WAVE"
89
- else
90
- CURRENT_WAVE_FILES="${CURRENT_WAVE_FILES}|$fpath|"
91
- fi
92
- done <<< "$FILE_PATHS"
93
- fi
94
- fi
95
- done < "$EXEC_ORDER"
96
-
97
- # --- Handle edge case: no waves parsed ---
98
- if [ "$WAVE_COUNT" -eq 0 ]; then
99
- echo "FAIL: No '## Wave N' headers found in EXECUTION-ORDER.md"
100
- exit 1
101
- fi
102
-
103
- echo "PASS: $DISK_COUNT plans across $WAVE_COUNT waves"
104
- exit 0