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.
- package/README.md +5 -6
- package/agents/ms-designer.md +5 -2
- package/agents/ms-mockup-designer.md +1 -1
- package/agents/ms-plan-writer.md +8 -1
- package/agents/ms-product-researcher.md +69 -0
- package/agents/ms-research-synthesizer.md +1 -1
- package/agents/ms-researcher.md +8 -8
- package/agents/ms-roadmapper.md +9 -13
- package/bin/install.js +68 -5
- package/commands/ms/add-phase.md +30 -18
- package/commands/ms/adhoc.md +1 -1
- package/commands/ms/audit-milestone.md +12 -12
- package/commands/ms/complete-milestone.md +25 -22
- package/commands/ms/config.md +202 -0
- package/commands/ms/design-phase.md +34 -29
- package/commands/ms/discuss-phase.md +26 -22
- package/commands/ms/doctor.md +22 -202
- package/commands/ms/execute-phase.md +18 -7
- package/commands/ms/help.md +46 -39
- package/commands/ms/insert-phase.md +29 -17
- package/commands/ms/new-milestone.md +42 -19
- package/commands/ms/new-project.md +88 -103
- package/commands/ms/plan-milestone-gaps.md +4 -5
- package/commands/ms/plan-phase.md +5 -3
- package/commands/ms/progress.md +2 -4
- package/commands/ms/research-phase.md +7 -12
- package/commands/ms/research-project.md +12 -12
- package/mindsystem/references/continuation-format.md +3 -3
- package/mindsystem/references/plan-format.md +11 -1
- package/mindsystem/references/principles.md +1 -1
- package/mindsystem/references/questioning.md +50 -8
- package/mindsystem/references/routing/audit-result-routing.md +12 -11
- package/mindsystem/references/routing/between-milestones-routing.md +2 -2
- package/mindsystem/references/routing/milestone-complete-routing.md +1 -1
- package/mindsystem/references/routing/next-phase-routing.md +4 -2
- package/mindsystem/templates/context.md +7 -6
- package/mindsystem/templates/milestone-archive.md +5 -5
- package/mindsystem/templates/milestone-context.md +1 -1
- package/mindsystem/templates/milestone.md +9 -9
- package/mindsystem/templates/project.md +70 -64
- package/mindsystem/templates/research-subagent-prompt.md +3 -3
- package/mindsystem/templates/roadmap-milestone.md +14 -14
- package/mindsystem/templates/roadmap.md +9 -7
- package/mindsystem/workflows/adhoc.md +1 -1
- package/mindsystem/workflows/complete-milestone.md +66 -107
- package/mindsystem/workflows/discuss-phase.md +137 -65
- package/mindsystem/workflows/doctor-fixes.md +273 -0
- package/mindsystem/workflows/execute-phase.md +7 -3
- package/mindsystem/workflows/execute-plan.md +6 -5
- package/mindsystem/workflows/map-codebase.md +2 -2
- package/mindsystem/workflows/mockup-generation.md +1 -1
- package/mindsystem/workflows/plan-phase.md +28 -3
- package/mindsystem/workflows/transition.md +20 -25
- package/mindsystem/workflows/verify-work.md +1 -1
- package/package.json +1 -1
- package/scripts/__pycache__/ms-tools.cpython-314.pyc +0 -0
- package/scripts/__pycache__/test_ms_tools.cpython-314-pytest-9.0.2.pyc +0 -0
- package/scripts/fixtures/scan-context/.planning/ROADMAP.md +16 -0
- package/scripts/fixtures/scan-context/.planning/adhoc/20260220-fix-token-SUMMARY.md +12 -0
- package/scripts/fixtures/scan-context/.planning/config.json +3 -0
- package/scripts/fixtures/scan-context/.planning/debug/resolved/token-bug.md +11 -0
- package/scripts/fixtures/scan-context/.planning/knowledge/auth.md +11 -0
- package/scripts/fixtures/scan-context/.planning/phases/02-infra/02-1-SUMMARY.md +20 -0
- package/scripts/fixtures/scan-context/.planning/phases/04-setup/04-1-SUMMARY.md +21 -0
- package/scripts/fixtures/scan-context/.planning/phases/05-auth/05-1-SUMMARY.md +28 -0
- package/scripts/fixtures/scan-context/.planning/todos/done/setup-db.md +10 -0
- package/scripts/fixtures/scan-context/.planning/todos/pending/add-logout.md +10 -0
- package/scripts/fixtures/scan-context/expected-output.json +257 -0
- package/scripts/ms-tools.py +2139 -0
- package/scripts/test_ms_tools.py +836 -0
- package/commands/ms/list-phase-assumptions.md +0 -56
- package/mindsystem/workflows/list-phase-assumptions.md +0 -178
- package/scripts/__pycache__/compare_mockups.cpython-314.pyc +0 -0
- package/scripts/archive-milestone-files.sh +0 -68
- package/scripts/archive-milestone-phases.sh +0 -138
- package/scripts/doctor-scan.sh +0 -379
- package/scripts/gather-milestone-stats.sh +0 -179
- package/scripts/generate-adhoc-patch.sh +0 -79
- package/scripts/generate-phase-patch.sh +0 -169
- package/scripts/scan-artifact-subsystems.sh +0 -55
- package/scripts/scan-planning-context.py +0 -839
- package/scripts/update-state.sh +0 -59
- package/scripts/validate-execution-order.sh +0 -104
package/scripts/update-state.sh
DELETED
|
@@ -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
|