From f00f724d306dbec2fb1f32f4baf64924f500033f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 4 Mar 2026 09:45:40 +0000 Subject: [PATCH 1/2] Initial plan From aa3ac62bc44622463a3300784fb7f0e034d73c67 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 4 Mar 2026 09:51:58 +0000 Subject: [PATCH 2/2] Add dead asset guardrail in tests/integration.sh (section 24) Co-authored-by: ProjectAI00 <174952601+ProjectAI00@users.noreply.github.com> --- tests/integration.sh | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/tests/integration.sh b/tests/integration.sh index 74ff09a..969484c 100755 --- a/tests/integration.sh +++ b/tests/integration.sh @@ -643,7 +643,7 @@ pass "4 sequential commands baseline: ${SEQ_MS}ms (parallel ran 8 in ${PERF_MS}m echo "" echo "── 23. Skill install paths ─────────────────────────────" -SKILL_SRC="$(dirname "$0")/../skills/imi/SKILL.md" +SKILL_SRC="$(dirname "$0")/../npm/skills/imi/SKILL.md" SKILL_SCRIPT_SRC="$(dirname "$0")/../skills/imi/scripts/session-start.sh" if [[ -f "$SKILL_SRC" ]]; then @@ -688,6 +688,24 @@ fi run status assert_exit "binary works standalone (old install path)" 0 +# ═════════════════════════════════════════════════════════════ +# 24. DEAD ASSET GUARDRAILS +# Verify runtime-critical npm skill files are all present. +# If any file is missing, it means it was accidentally deleted +# or moved without updating the distribution package. +# ═════════════════════════════════════════════════════════════ +echo "" +echo "── 24. Dead asset guardrails ───────────────────────────" + +NPM_SKILL_DIR="$(dirname "$0")/../npm/skills/imi" +for skill_file in SKILL.md ai-voice.md execute-mode.md ops-mode.md plan-mode.md imi.agent.md; do + if [[ -f "$NPM_SKILL_DIR/$skill_file" ]]; then + pass "npm skill file present: $skill_file" + else + fail "npm skill file MISSING: $skill_file" "$NPM_SKILL_DIR/$skill_file" + fi +done + # ═════════════════════════════════════════════════════════════ # SUMMARY