-
-
Notifications
You must be signed in to change notification settings - Fork 0
fix(gates): gate on the DEED grammar, per the template and standards#837 #558
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -24,7 +24,7 @@ jobs: | |
| # Job 1: A2ML manifest validation | ||
| # --------------------------------------------------------------------------- | ||
| a2ml-validate: | ||
| name: Validate A2ML manifests | ||
| name: Validate DEED manifests | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 10 | ||
|
|
||
|
|
@@ -39,10 +39,10 @@ jobs: | |
| # registry — an S-expression dialect by that tool's spec (see panic-attack | ||
| # CLAUDE.md), not the TOML-like manifest A2ML this gate validates. Exclude | ||
| # it rather than feeding it to a validator for a different dialect. | ||
| COUNT=$(find . -name '*.a2ml' -not -path './.git/*' -not -name 'assail-classifications.a2ml' | wc -l) | ||
| COUNT=$(find . \( -name '*.a2ml' -o -name '*.deed' \) -not -path './.git/*' -not -name 'assail-classifications.a2ml' | wc -l) | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win 🔎 Supported by static analysis🏁 Script executed: sed -n '1,80p;250,340p' .github/workflows/dogfood-gate.yml; printf '\n--- deed references ---\n'; rg -n --glob '!**/.git/**' -i 'deed|chora' .github README.md docs 2>/dev/null | head -n 160Repository: hyperpolymath/gitbot-fleet Length of output: 8494 🤖 get_repo_knowledge executed:
Length of output: 463 🏁 Script executed: printf '%s\n' '--- workflow ---'; sed -n '1,80p' .github/workflows/dogfood-gate.yml; sed -n '250,340p' .github/workflows/dogfood-gate.yml; printf '%s\n' '--- repository references ---'; rg -n -i --glob '!**/.git/**' 'deed|chora' . | head -n 200Repository: hyperpolymath/gitbot-fleet Length of output: 7271 Restrict DEED detection to the repository deed path. The DEED contract requires a root 🤖 Prompt for AI Agents |
||
| echo "count=$COUNT" >> "$GITHUB_OUTPUT" | ||
| if [ "$COUNT" -eq 0 ]; then | ||
| echo "::warning::No .a2ml manifest files found. Every RSR repo should have 0-AI-MANIFEST.a2ml" | ||
| echo "::warning::No .a2ml/.deed manifest files found. Every RSR repo should have a repo deed (<reponame>_chora.deed); legacy 0-AI-MANIFEST.a2ml accepted mid-migration — standards #837" | ||
| fi | ||
|
|
||
| - name: Validate A2ML manifests | ||
|
|
@@ -72,14 +72,14 @@ jobs: | |
| cat <<'EOF' >> "$GITHUB_STEP_SUMMARY" | ||
| ## A2ML Validation | ||
|
|
||
| :warning: **No .a2ml files found.** Every RSR-compliant repo should have at least `0-AI-MANIFEST.a2ml`. | ||
| :warning: **No .a2ml/.deed manifest files found.** Every RSR-compliant repo should have a repo deed (`<reponame>_chora.deed`) at its root. | ||
|
|
||
| Create one with: `a2mliser init` or copy from [rsr-template-repo](https://github.com/hyperpolymath/rsr-template-repo). | ||
| Copy it from [rsr-template-repo](https://github.com/hyperpolymath/rsr-template-repo). | ||
| EOF | ||
| else | ||
| echo "## A2ML Validation" >> "$GITHUB_STEP_SUMMARY" | ||
| echo "" >> "$GITHUB_STEP_SUMMARY" | ||
| echo "Scanned **${A2ML_COUNT}** .a2ml file(s). See step output for details." >> "$GITHUB_STEP_SUMMARY" | ||
| echo "Scanned **${A2ML_COUNT}** manifest file(s) (.deed, or legacy .a2ml). See step output for details." >> "$GITHUB_STEP_SUMMARY" | ||
| fi | ||
|
|
||
| # --------------------------------------------------------------------------- | ||
|
|
@@ -122,7 +122,7 @@ jobs: | |
| cat <<'EOF' >> "$GITHUB_STEP_SUMMARY" | ||
| ## K9 Contract Validation | ||
|
|
||
| :warning: **No K9 contract files found.** Repos with configuration files should have K9 contracts. | ||
| :warning: **No .a2ml/.deed manifest files found.** Every RSR-compliant repo should have a repo deed (`<reponame>_chora.deed`) at its root. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win Restore the K9 warning in the K9 summary. This branch runs when 🤖 Prompt for AI Agents |
||
|
|
||
| Generate contracts with: `k9iser generate .` | ||
| EOF | ||
|
|
@@ -276,7 +276,7 @@ jobs: | |
| MAX=5 | ||
|
|
||
| # A2ML manifest present? | ||
| if find . -name '*.a2ml' -not -path './.git/*' | head -1 | grep -q .; then | ||
| if find . \( -name '*.a2ml' -o -name '*.deed' \) -not -path './.git/*' | head -1 | grep -q .; then | ||
| SCORE=$((SCORE + 1)) | ||
| A2ML_STATUS=":white_check_mark:" | ||
| else | ||
|
|
@@ -322,7 +322,7 @@ jobs: | |
|
|
||
| | Tool/Format | Status | Notes | | ||
| |-------------|--------|-------| | ||
| | A2ML manifest (0-AI-MANIFEST.a2ml) | ${A2ML_STATUS} | Required for all RSR repos | | ||
| | DEED repo deed (`<reponame>_chora.deed`) | ${A2ML_STATUS} | Required for all RSR repos | | ||
| | K9 contracts | ${K9_STATUS} | Required for repos with config files | | ||
| | .editorconfig | ${EC_STATUS} | Required for all repos | | ||
| | Groove endpoint | ${GROOVE_STATUS} | Required for service repos | | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Align the remaining validation labels with the new job label.
The job is now labelled
Validate DEED manifests, but its steps and summaries still sayA2ML(Check for A2ML files,Validate A2ML manifests, andA2ML Validation). This gives the Checks UI and step summary conflicting terminology. UseDEED and legacy A2MLconsistently, or update all affected labels to the intended wording.🤖 Prompt for AI Agents