chore: replace AI skill library with 16 verified mvp-* skills
Deploy to Staging / Build Images (push) Successful in 5m32s
Deploy to Staging / Deploy to Staging (push) Successful in 44s
Deploy to Staging / Verify Staging (push) Successful in 5s
Deploy to Staging / Notify Staging Ready (push) Successful in 4s
Deploy to Staging / Notify Staging Failure (push) Has been skipped
Deploy to Staging / Build Images (push) Successful in 5m32s
Deploy to Staging / Deploy to Staging (push) Successful in 44s
Deploy to Staging / Verify Staging (push) Successful in 5s
Deploy to Staging / Notify Staging Ready (push) Successful in 4s
Deploy to Staging / Notify Staging Failure (push) Has been skipped
Removes the old planner/decision-critic/role-agents/domain-agents system (step-injector scripts, stale scopes, sprint-era workflow) and replaces it with 16 ground-truth-verified skills under .claude/skills/: change control, debugging playbook, failure archaeology, architecture contract, domain reference, OCR/Gemini pipeline, config and secrets, build and env, run and operate, diagnostics (with tested scripts), validation and QA, docs and writing, launch readiness, deploy-safety campaign, proof and analysis toolkit, and research frontier. RULE 0/1/2, the temporal-contamination rule, and the decision stress-test protocol are carried forward into the new skills; the retired content remains in git history. Co-Authored-By: Claude Fable 5 <[email protected]>
This commit is contained in:
co-authored by
Claude Fable 5
parent
e729d425fd
commit
c239bb9347
@@ -0,0 +1,65 @@
|
||||
#!/bin/bash
|
||||
# local-gate.sh - Run every quality check that works on a dev machine and
|
||||
# print a PASS/FAIL table.
|
||||
#
|
||||
# Why: CI runs ZERO tests and ZERO lint (the only PR gate is that images
|
||||
# build and staging boots healthy). This script IS the pre-push gate.
|
||||
#
|
||||
# Scope (deliberate):
|
||||
# - backend lint, type-check, UNIT tests only (--forceExit; open pg/redis
|
||||
# handles otherwise hang jest). Integration tests are EXCLUDED: they
|
||||
# need a live database and some DROP TABLE CASCADE (owner non-negotiable:
|
||||
# never without a fresh backup). audit-log __tests__ also need a DB and
|
||||
# are excluded via path pattern.
|
||||
# - frontend lint, type-check. Frontend jest is broken outside the
|
||||
# container (2026-07-07), so no frontend tests here.
|
||||
#
|
||||
# Usage: ./local-gate.sh (needs node_modules in backend/ and frontend/:
|
||||
# run "npm install" in each first)
|
||||
# Exit: 0 = all pass, 1 = at least one failure
|
||||
set -u
|
||||
|
||||
ROOT="$(git rev-parse --show-toplevel 2>/dev/null)"
|
||||
[ -z "$ROOT" ] && { echo "ERROR: not inside a git repo" >&2; exit 2; }
|
||||
LOGDIR="${TMPDIR:-/tmp}/mvp-local-gate.$$"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
RESULTS=""
|
||||
OVERALL=0
|
||||
|
||||
run_step() { # run_step <label> <dir> <command...>
|
||||
label="$1"; dir="$2"; shift 2
|
||||
log="$LOGDIR/$(echo "$label" | tr ' /' '__').log"
|
||||
printf '%-28s ' "$label..."
|
||||
if (cd "$ROOT/$dir" && "$@") >"$log" 2>&1; then
|
||||
echo "PASS"
|
||||
RESULTS="$RESULTS$label|PASS
|
||||
"
|
||||
else
|
||||
echo "FAIL (log: $log)"
|
||||
tail -15 "$log" | sed 's/^/ /'
|
||||
RESULTS="$RESULTS$label|FAIL
|
||||
"
|
||||
OVERALL=1
|
||||
fi
|
||||
}
|
||||
|
||||
run_step "backend lint" backend npm run --silent lint
|
||||
run_step "backend type-check" backend npm run --silent type-check
|
||||
run_step "backend unit tests" backend npm test --silent -- \
|
||||
--testPathPattern='(tests/unit|src/core)' \
|
||||
--testPathIgnorePatterns='integration' --forceExit
|
||||
run_step "frontend lint" frontend npm run --silent lint
|
||||
run_step "frontend type-check" frontend npm run --silent type-check
|
||||
|
||||
echo
|
||||
echo "==================== LOCAL GATE ===================="
|
||||
printf '%-28s %s\n' "CHECK" "RESULT"
|
||||
echo "$RESULTS" | awk -F'|' 'NF { printf "%-28s %s\n", $1, $2 }'
|
||||
echo "====================================================="
|
||||
if [ "$OVERALL" -eq 0 ]; then
|
||||
echo "PASS: safe to push. (Integration tests NOT run - container-only.)"
|
||||
else
|
||||
echo "FAIL: fix before pushing. CI will NOT catch these."
|
||||
fi
|
||||
exit "$OVERALL"
|
||||
Reference in New Issue
Block a user