|
| 1 | +# Auto-generated by: contractile gen-just |
| 2 | +# Source directory: contractiles |
| 3 | +# Re-generate with: contractile gen-just --dir contractiles |
| 4 | +# |
| 5 | +# SPDX-License-Identifier: PMPL-1.0-or-later |
| 6 | + |
| 7 | +# === DUST (Recovery & Rollback) === |
| 8 | +# Source: Dustfile.a2ml |
| 9 | + |
| 10 | +# List available dust recovery actions |
| 11 | +dust-status: |
| 12 | + @echo ' dust-source-rollback: Revert all source changes to last commit [rollback]' |
| 13 | + |
| 14 | +# Revert all source changes to last commit |
| 15 | +dust-source-rollback: |
| 16 | + @echo 'Executing rollback for source-rollback' |
| 17 | + git checkout HEAD -- . |
| 18 | + |
| 19 | + |
| 20 | +# === INTEND (Declared Future Intent) === |
| 21 | +# Source: Intentfile.a2ml |
| 22 | + |
| 23 | +# Display declared future intents |
| 24 | +intend-list: |
| 25 | + @echo '=== Declared Intent ===' |
| 26 | + @echo '' |
| 27 | + @echo 'Features:' |
| 28 | + @echo '' |
| 29 | + @echo 'Integrations:' |
| 30 | + @echo '' |
| 31 | + @echo 'Quality:' |
| 32 | + |
| 33 | + |
| 34 | +# === MUST (Physical State Checks) === |
| 35 | +# Source: Mustfile.a2ml |
| 36 | + |
| 37 | +# Run all must checks |
| 38 | +must-check: must-license-present must-readme-present must-security-md-present must-justfile-present must-package-json-present must-no-banned-files must-no-env-files must-spdx-headers must-mcp-bridge-exists |
| 39 | + @echo 'All must checks passed' |
| 40 | + |
| 41 | +# LICENSE file must exist |
| 42 | +must-license-present: |
| 43 | + test -f LICENSE |
| 44 | + |
| 45 | +# README must exist |
| 46 | +must-readme-present: |
| 47 | + test -f README.adoc || test -f README.md |
| 48 | + |
| 49 | +# SECURITY.md must exist |
| 50 | +must-security-md-present: |
| 51 | + test -f SECURITY.md |
| 52 | + |
| 53 | +# Justfile must exist |
| 54 | +must-justfile-present: |
| 55 | + test -f Justfile |
| 56 | + |
| 57 | +# package.json must exist (MCP server entry point) |
| 58 | +must-package-json-present: |
| 59 | + test -f package.json |
| 60 | + |
| 61 | +# No Dockerfiles or Makefiles |
| 62 | +must-no-banned-files: |
| 63 | + test ! -f Dockerfile && test ! -f Makefile |
| 64 | + |
| 65 | +# No .env files committed |
| 66 | +must-no-env-files: |
| 67 | + test ! -f .env && test ! -f .env.local |
| 68 | + |
| 69 | +# JS source files should have SPDX headers |
| 70 | +must-spdx-headers: |
| 71 | + find . -name '*.js' -not -path '*/node_modules/*' | head -20 | xargs -r grep -L 'SPDX-License-Identifier' | wc -l | grep -q '^0$' |
| 72 | + |
| 73 | +# MCP bridge entry point must exist |
| 74 | +must-mcp-bridge-exists: |
| 75 | + test -f mcp-bridge/main.js |
| 76 | + |
| 77 | + |
| 78 | +# === TRUST (Integrity & Provenance Verification) === |
| 79 | +# Source: Trustfile.a2ml |
| 80 | + |
| 81 | +# Run all trust verifications |
| 82 | +trust-verify: trust-license-content trust-no-secrets-committed trust-container-images-pinned |
| 83 | + @echo 'All trust verifications passed' |
| 84 | + |
| 85 | +# LICENSE contains expected SPDX identifier |
| 86 | +trust-license-content: |
| 87 | + grep -q 'SPDX\|License\|MIT\|Apache\|PMPL\|MPL' LICENSE |
| 88 | + |
| 89 | +# No .env or credential files in repo |
| 90 | +trust-no-secrets-committed: |
| 91 | + test ! -f .env && test ! -f credentials.json && test ! -f .env.local |
| 92 | + |
| 93 | +# Containerfile base images use pinned digests |
| 94 | +trust-container-images-pinned: |
| 95 | + test ! -f Containerfile || grep -q '@sha256:' Containerfile |
| 96 | + |
| 97 | + |
0 commit comments