Skip to content

ci: add task schema validation workflow for pull requests#694

Open
okwn wants to merge 2 commits into
base:mainfrom
okwn:contrib/contract-deployments/schema-validate-ci
Open

ci: add task schema validation workflow for pull requests#694
okwn wants to merge 2 commits into
base:mainfrom
okwn:contrib/contract-deployments/schema-validate-ci

Conversation

@okwn
Copy link
Copy Markdown

@okwn okwn commented May 21, 2026

Summary

  • Add .github/workflows/validate-task-schema.yml that validates task directory structure on PRs touching task directories
  • Checks: README.md exists with Status field, Makefile with standard includes, foundry.toml, script/ with .sol files, FACILITATOR.md, .env, validations/, records/

Problem

There is no automated check that new task directories follow the conventions documented in AGENTS.md. Tasks can be submitted with missing files (e.g., no FACILITATOR.md, no Makefile includes, no Status field in README).

Solution

A lightweight GitHub Actions workflow that runs on PRs touching any task directory (mainnet/, sepolia/, sepolia-alpha/, zeronet/). It validates the schema without modifying any artifacts.

Tests

  • Validated against existing tasks locally — checks README Status field, Makefile includes, foundry.toml, script/ .sol count, FACILITATOR.md existence, .env, validations/, records/
  • Uses git diff to detect only changed tasks — no false positives on unrelated changes

Risk / Compatibility

  • Risk: VERY LOW
  • Affects: CI configuration only; no production artifact changes
  • Read-only validation of directory structure
  • Does not block merged tasks (Status: EXECUTED) — only checks conventions are followed

@cb-heimdall
Copy link
Copy Markdown
Collaborator

cb-heimdall commented May 21, 2026

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/2
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 2
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 2
2
1 if commit is unverified 1
Sum 3

- Add validate-addresses.yml workflow (workflow_dispatch + weekly schedule)
  - Verifies chain ID matches expected for each network
  - Checks all *_ADDR and *_PROXY variables have contract code
  - Skips placeholder values

- Add pragma check step to validate-templates.yml
  - Rejects range pragmas (^) in script/ Solidity files
  - Enforces exact pragma versions per AGENTS.md convention
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.

2 participants