Conform to the vendor-neutral github-discipline canon: the commit-msg and pre-commit hooks and check-style.sh now reject AI attribution for every assistant (Codex, Copilot, Gemini, ChatGPT, OpenAI, Anthropic), not just Claude and Cursor. The no-cursor-attribution workflow is excluded from the file-content scan since it legitimately quotes the tokens to detect them. Also wire scripts/check-roadmap.sh into check-style.sh (and grant the CI gates step issues:read + a token for the epic-coverage query), per the rule that the roadmap gate runs in the style check.
25 lines
825 B
Bash
Executable File
25 lines
825 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Full local verification gate for PureXML.
|
|
#
|
|
# Runs the checks required before completion. The Linux and WASM gates are
|
|
# available as separate scripts (scripts/check-linux.sh, scripts/check-wasm.sh)
|
|
# and run in hosted CI; they are not chained here so this gate stays runnable on
|
|
# any machine without remote infrastructure or a Wasm SDK.
|
|
|
|
set -euo pipefail
|
|
|
|
run_gate() {
|
|
name="$1"
|
|
shift
|
|
printf '\n==> %s\n' "$name"
|
|
"$@"
|
|
}
|
|
|
|
run_gate "style" bash scripts/check-style.sh
|
|
run_gate "namespacing" bash scripts/check-namespacing.sh
|
|
run_gate "forbidden patterns" bash scripts/check-forbidden-patterns.sh
|
|
run_gate "swiftformat" swiftformat . --config .swiftformat --lint
|
|
run_gate "swiftlint" swiftlint --config .swiftlint.yml --strict
|
|
run_gate "swift build" swift build
|
|
run_gate "swift test" swift test
|