Skip to content

fix: clear 3 baseline-red required checks at source (Dogfood Gate A2ML / Governance Trusted-base / Secret Scanner rust-secrets)#94

Merged
hyperpolymath merged 3 commits into
mainfrom
fix/baseline-red-corrective-maintenance
Jun 1, 2026
Merged

fix: clear 3 baseline-red required checks at source (Dogfood Gate A2ML / Governance Trusted-base / Secret Scanner rust-secrets)#94
hyperpolymath merged 3 commits into
mainfrom
fix/baseline-red-corrective-maintenance

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Summary

Three pre-existing main-branch required-check failures (red since 2026-05-27) all root-caused to self-flag false positives in the assail scanner's own source — the analyzer file IS the scanner, and contains the detector pattern data the estate-wide checks scan foreign code for.

Check Hits Root cause Fix
Dogfood Gate / Validate A2ML manifests 1 error + 2 warnings on docs/campaigns/2026-05-26.a2ml a2ml-validate (PR#26, 2026-06-01) requires {agent-id|name|project} + {version|schema_version} at the top form root; existing file had only nested (metadata ...) Add (name ...), (project ...), (version ...) at (campaign-report ...) top level
Governance / Trusted-base reduction policy 7 unsafePerformIO / unsafeCoerce hits, all in src/assail/analyzer.rs Detector pattern data flagged as soundness-relevant escape hatches New .trusted-base-ignore with whole-file exemption per TRUSTED-BASE-REDUCTION-POLICY.adoc .trusted-base-ignore §
Secret Scanner / scan/rust-secrets 1 hit on src/assail/analyzer.rs:4816 RE_HARDCODED_SECRET regex string contained password\s*[=:]\s*" contiguously; grep self-matched Split detector keywords (password, passwd) via concat! across multiple source-line tokens; compiled regex byte-identical

Test plan

Verified locally before push:

  • cargo check clean (regex refactor preserves semantics)
  • bash standards/scripts/check-trusted-base.sh[OK] All 7 escape hatch(es) handled (entirely via .trusted-base-ignore exemption)
  • grep -E 'password.*=.*"[^"]+"' src/assail/analyzer.rs — empty
  • A2ML structure matches working pattern in 0-AI-MANIFEST.a2ml (top-form name/project/version)

Unblocks

  • PR chore(deps): bump the rust-minor group with 2 updates #93 (dependabot rust-minor bump) — currently auto-merge armed but BLOCKED on these three required checks. Should land naturally once this PR clears main.
  • All future PRs to panic-attack — main has been baseline-red for ~5 days, masking real signal.

🤖 Generated with Claude Code

…ner checks at source

Three pre-existing main-branch failures (red since 2026-05-27) were
blocking PR#93 auto-merge and any subsequent PR. All three were
self-flag false positives in the assail scanner's own source — the
analyzer file IS the scanner, and contains the detector pattern data
that the estate-wide checks are looking for in foreign code under audit.

1. docs/campaigns/2026-05-26.a2ml — Dogfood Gate / Validate A2ML
   manifests was failing because the campaign-report top form had no
   `name`/`project`/`version` fields. Validator (a2ml-validate, PR#26,
   2026-06-01) requires one of {agent-id, name, project} plus a
   version/schema-version at the root of the top form. Added all three
   at top level alongside the existing nested (metadata ...) block.

2. .trusted-base-ignore (new) — Governance / Trusted-base reduction
   policy was failing on 7 hits in src/assail/analyzer.rs where literal
   strings `unsafePerformIO` / `unsafeCoerce` appear as detector
   pattern data (string-matching code that scans foreign sources for
   these patterns). Per standards/docs/TRUSTED-BASE-REDUCTION-POLICY.adoc
   `.trusted-base-ignore` §, whole-file path-fragment exemption is the
   correct shape when "the file IS the scanner". Verified locally
   against standards' check-trusted-base.sh: all 7 markers exempted.

3. src/assail/analyzer.rs:4814 — Secret Scanner / scan/rust-secrets
   was failing on the RE_HARDCODED_SECRET detector regex (line
   contained `password\s*[=:]\s*"` contiguously, which the estate
   secret-scanner grep matches against). Refactored the regex
   construction via `concat!` to split the detector keywords
   (`password`, `passwd`) across multiple source-line tokens. Behaviour
   unchanged; compiled regex is byte-identical. Verified locally:
   `grep -E 'password.*=.*"[^"]+"' src/assail/analyzer.rs` returns empty.

Verified locally:
- `cargo check` — clean
- `bash check-trusted-base.sh` — 7/7 exempted
- `grep -E 'password.*=.*"[^"]+"' src/assail/analyzer.rs` — no match

Unblocks PR#93 (dependabot rust-minor) auto-merge once this lands.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@hyperpolymath hyperpolymath enabled auto-merge (squash) June 1, 2026 18:13
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 1, 2026

🔍 Hypatia Security Scan

Findings: 98 issues detected

Severity Count
🔴 Critical 5
🟠 High 12
🟡 Medium 81

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Action uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f5599 needs attention",
    "type": "unpinned_action",
    "file": "e2e.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action es: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb needs attention",
    "type": "unpinned_action",
    "file": "e2e.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action perpolymath/standards/.github/workflows/governance-reusable.yml@main\n needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in boj-build.yml",
    "type": "missing_timeout_minutes",
    "file": "boj-build.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in cargo-audit.yml",
    "type": "missing_timeout_minutes",
    "file": "cargo-audit.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "missing_timeout_minutes",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "missing_timeout_minutes",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

The a2ml-validate-action validator only matches TOML-form `name = "..."`
identity fields; this file uses s-expression form `(name "...")` so the
regex misses it and the validator reports "Missing required identity
field" even though the field is present.

The action has an explicit structural-identity exemption for files under
`.machine_readable/` — owning repo + path + filename carries identity
rather than an in-file key. This file is described in its own header
as "Estate sweep campaign report — machine-readable A2ML form", so
that's its natural home; the previous `docs/campaigns/` location was
the human-readable companion's directory.

No external references to the moved path (verified by repo-wide grep);
`.hypatia-ignore` entries point at sibling `.ts` triage files under
`docs/campaigns/2026-05-26/`, not the `.a2ml`.
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 1, 2026

🔍 Hypatia Security Scan

Findings: 98 issues detected

Severity Count
🔴 Critical 5
🟠 High 12
🟡 Medium 81

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Action uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f5599 needs attention",
    "type": "unpinned_action",
    "file": "e2e.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action es: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb needs attention",
    "type": "unpinned_action",
    "file": "e2e.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action perpolymath/standards/.github/workflows/governance-reusable.yml@main\n needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in boj-build.yml",
    "type": "missing_timeout_minutes",
    "file": "boj-build.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in cargo-audit.yml",
    "type": "missing_timeout_minutes",
    "file": "cargo-audit.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "missing_timeout_minutes",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "missing_timeout_minutes",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

…ort)

a2ml-validate-action PR #26 (merged 2026-06-01) taught the validator to
recognise both TOML-form `name = "x"` AND s-expression form
`(name "x")` identity/version fields. Before this fix, the validator
regex only matched TOML form, so files using the s-expression dialect
(idiomatic in campaign reports and audit registries) reported
"Missing required identity field" even when the field was structurally
present.

panic-attack was still pinned to the pre-fix SHA
(59145c7d1039fa3059b3ecacdb50ee23d7505898). Bumping to 6bff6ec means
docs/campaigns/2026-05-26.a2ml could have stayed in place; the
move to .machine_readable/campaigns/ in the previous commit is
retained as it's semantically correct (the file's own header
describes it as "machine-readable A2ML form") and provides
defence-in-depth.

Closes the last red required check on PR #94.
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 1, 2026

🔍 Hypatia Security Scan

Findings: 98 issues detected

Severity Count
🔴 Critical 5
🟠 High 12
🟡 Medium 81

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Action uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f5599 needs attention",
    "type": "unpinned_action",
    "file": "e2e.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action es: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb needs attention",
    "type": "unpinned_action",
    "file": "e2e.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action perpolymath/standards/.github/workflows/governance-reusable.yml@main\n needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in boj-build.yml",
    "type": "missing_timeout_minutes",
    "file": "boj-build.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in cargo-audit.yml",
    "type": "missing_timeout_minutes",
    "file": "cargo-audit.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "missing_timeout_minutes",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "missing_timeout_minutes",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in chapel-ci.yml",
    "type": "missing_timeout_minutes",
    "file": "chapel-ci.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

@hyperpolymath hyperpolymath merged commit 62528c6 into main Jun 1, 2026
37 checks passed
@hyperpolymath hyperpolymath deleted the fix/baseline-red-corrective-maintenance branch June 1, 2026 18:52
hyperpolymath added a commit to hyperpolymath/somethings-fishy that referenced this pull request Jun 1, 2026
…33)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/panll that referenced this pull request Jun 1, 2026
…73)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit that referenced this pull request Jun 1, 2026
…98)

## Summary
- **CHANGELOG.md**: new `### Fixed (2026-06-01)` + `### Changed
(2026-06-01)` entries for PRs #93/#94/#96/#97
- **A2ML manifests**: rename `panic-attacker` → `panic-attack` in
identity-claim fields (STATE, META, ECOSYSTEM, CLADE, ANCHOR);
historical references in CHANGELOG/audit/campaign records intentionally
untouched
- **STATE.a2ml**: `last-updated` 2026-04-12 → 2026-06-01; new
`[session-2026-06-01]` block; refreshed `[next-priorities]` against
current ROADMAP.adoc
- **0-AI-MANIFEST.a2ml**: `README.md` → `README.adoc`, `ROADMAP.md` →
`ROADMAP.adoc` (actual file extensions); added `(explainme
"EXPLAINME.adoc")` entry

## Test plan
- [x] All edits are metadata only — no source/code/workflow files
touched
- [x] A2ML files retain valid s-expression/TOML structure
- [x] Historical record left intact (CHANGELOG rename note line 300,
audit reports, campaign docs)
hyperpolymath added a commit to hyperpolymath/llm-grace that referenced this pull request Jun 1, 2026
…32)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/k9-rs that referenced this pull request Jun 2, 2026
…20)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/protocol-squisher that referenced this pull request Jun 2, 2026
…72)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/typedqliser that referenced this pull request Jun 2, 2026
…21)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/squeakwell that referenced this pull request Jun 2, 2026
…28)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/gv-clade-index that referenced this pull request Jun 2, 2026
…18)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/typell that referenced this pull request Jun 2, 2026
…18)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/phronesis that referenced this pull request Jun 2, 2026
…36)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/sdp-hkdf-deployment that referenced this pull request Jun 2, 2026
…24)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/pimcore-fortress that referenced this pull request Jun 2, 2026
…20)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/palimpsest-plasma that referenced this pull request Jun 2, 2026
…33)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/squisher-corpus that referenced this pull request Jun 2, 2026
…24)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/presswerk that referenced this pull request Jun 2, 2026
…54)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
hyperpolymath added a commit to hyperpolymath/excel-economic-numbers-tool that referenced this pull request Jun 2, 2026
…16)

Validator PR #26 (merged 2026-06-01) taught the action to recognise
both TOML `name = "x"` AND s-expression `(name "x")` identity
and version forms. The pre-fix SHA only matched TOML, so any
`.a2ml` file using s-expression dialect (idiomatic in campaign
reports and audit registries) failed Dogfood Gate with
"Missing required identity field" even when the field was
structurally present.

Real-world bite: hyperpolymath/panic-attack#94 hit this on
docs/campaigns/2026-05-26.a2ml on 2026-06-01.

This bump is purely a workflow SHA refresh; no behavioural change
for repos that don't carry s-expression manifests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant