Skip to content

feat: add CI validation, index auto-builder, and contributor guides#7

Merged
ningzimu merged 2 commits intoMLT-OSS:mainfrom
ningzimu:main
Feb 25, 2026
Merged

feat: add CI validation, index auto-builder, and contributor guides#7
ningzimu merged 2 commits intoMLT-OSS:mainfrom
ningzimu:main

Conversation

@ningzimu
Copy link
Copy Markdown
Collaborator

Summary

  • Add GitHub Actions workflows for automated PR validation and index auto-update on merge
  • Add scripts/build_indexes.py to programmatically generate all index and badge JSON files
  • Add pyproject.toml with uv project config and check-jsonschema dependency
  • Add AGENTS.md as an AI-agent-oriented contributor guide
  • Add dynamic shields.io badge files (firstdata/badges/) for live source count and progress display
  • Remove duplicate bis-statistics.json (consolidated into international/economics/bis.json)
  • Update .gitignore to exclude .claude/ and CLAUDE.md
  • Update README badges to use dynamic endpoint URLs
  • Update firstdata/sources/README.md to reference statistics.json instead of hardcoded numbers

CI Workflows

validate-sources.yml (triggered on PR):

  1. Block any modification to datasource-schema.json
  2. Validate all source JSON files against the schema
  3. Check for duplicate id fields across all source files

update-indexes.yml (triggered on merge to main):

  1. Re-validate all source files (schema + duplicate IDs)
  2. Rebuild all 5 index files and badge JSONs
  3. Auto-commit the updated files as firstdata[bot]

Test plan

  • uv run check-jsonschema passes on all 131 source files
  • scripts/build_indexes.py runs successfully and generates correct output
  • Duplicate ID check correctly detected and removed bis-statistics.json
  • CI auto-ran update-indexes after merge and committed updated indexes

ningzimu and others added 2 commits February 25, 2026 17:18
- add GitHub Actions workflows for PR validation and auto index update
- add scripts/build_indexes.py to generate all index and badge files
- add pyproject.toml with uv project config and check-jsonschema dependency
- add AGENTS.md as AI-oriented contributor guide
- add dynamic shields.io badge JSON files for sources count and progress
- remove duplicate bis-statistics.json (kept international/economics/bis.json)
- update .gitignore to exclude .claude/ and CLAUDE.md
- update README.md badge URLs to use dynamic endpoint
- update firstdata/sources/README.md to reference statistics.json instead of hardcoded numbers
@ningzimu ningzimu merged commit bafdaa3 into MLT-OSS:main Feb 25, 2026
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