From 5be7babcf1bc5e1b6cbb4584d1ac7a6910001097 Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Mon, 21 Sep 2026 12:19:45 +0100 Subject: [PATCH] fix(dogfood-gate): validate DEED via deed-ecosystem, not a2ml-era naming --- .github/workflows/dogfood-gate.yml | 40 +++++++++++++++--------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/.github/workflows/dogfood-gate.yml b/.github/workflows/dogfood-gate.yml index 06e4978..f322446 100644 --- a/.github/workflows/dogfood-gate.yml +++ b/.github/workflows/dogfood-gate.yml @@ -17,47 +17,47 @@ permissions: jobs: # --------------------------------------------------------------------------- - # Job 1: A2ML manifest validation + # Job 1: DEED manifest validation # --------------------------------------------------------------------------- - a2ml-validate: - name: Validate A2ML manifests + deed-validate: + name: Validate DEED manifests runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v4 - - name: Check for A2ML files + - name: Check for manifest files (.a2ml/.deed) id: detect run: | - COUNT=$(find . -name '*.a2ml' -not -path './.git/*' | wc -l) + COUNT=$(find . \( -name '*.a2ml' -o -name '*.deed' \) -not -path './.git/*' | wc -l) 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 (_chora.deed); legacy 0-AI-MANIFEST.a2ml accepted mid-migration — a2ml retired: standards #837" fi - - name: Validate A2ML manifests + - name: Validate DEED manifests if: steps.detect.outputs.count > 0 - uses: hyperpolymath/a2ml-ecosystem/validate-action@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79 # main + uses: hyperpolymath/deed-ecosystem/validate-action@aa4b836bd969df2bc58128cb8e3d20bbc88d5e79 # main with: path: '.' strict: 'false' - name: Write summary run: | - A2ML_COUNT="${{ steps.detect.outputs.count }}" - if [ "$A2ML_COUNT" -eq 0 ]; then + MANIFEST_COUNT="${{ steps.detect.outputs.count }}" + if [ "$MANIFEST_COUNT" -eq 0 ]; then cat <<'EOF' >> "$GITHUB_STEP_SUMMARY" - ## A2ML Validation + ## DEED Manifest Validation :warning: **No .a2ml files found.** Every RSR-compliant repo should have at least `0-AI-MANIFEST.a2ml`. - 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). Manifests are validated against the DEED grammar (standards `1-formats/deed/`); the `.a2ml` → `.deed` extension migration is tracked in standards #837 — the deed validator scans both. EOF else - echo "## A2ML Validation" >> "$GITHUB_STEP_SUMMARY" + echo "## DEED Manifest 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 **${MANIFEST_COUNT}** .a2ml/.deed manifest(s). See step output for details." >> "$GITHUB_STEP_SUMMARY" fi # --------------------------------------------------------------------------- @@ -300,7 +300,7 @@ jobs: dogfood-summary: name: Dogfooding compliance summary runs-on: ubuntu-latest - needs: [a2ml-validate, k9-validate, empty-lint, groove-check, eclexiaiser-validate] + needs: [deed-validate, k9-validate, empty-lint, groove-check, eclexiaiser-validate] if: always() steps: @@ -312,12 +312,12 @@ jobs: SCORE=0 MAX=6 - # A2ML manifest present? - if find . -name '*.a2ml' -not -path './.git/*' | head -1 | grep -q .; then + # DEED manifest present? + if find . \( -name '*.a2ml' -o -name '*.deed' \) -not -path './.git/*' | head -1 | grep -q .; then SCORE=$((SCORE + 1)) - A2ML_STATUS=":white_check_mark:" + DEED_STATUS=":white_check_mark:" else - A2ML_STATUS=":x:" + DEED_STATUS=":x:" fi # K9 contracts present? @@ -367,7 +367,7 @@ jobs: | Tool/Format | Status | Notes | |-------------|--------|-------| - | A2ML manifest (0-AI-MANIFEST.a2ml) | ${A2ML_STATUS} | Required for all RSR repos | + | DEED manifest (_chora.deed, or legacy .a2ml) | ${DEED_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 |