View as:

Contributing to MaQI

Shared infrastructure repo for the Master program at École Polytechnique (lead: Charles-Albert Lehalle). Hosts the provider catalog, Wasabi S3 layout, Colab notebooks, and architecture decisions. No data lives in the repo — everything is on Wasabi S3 (eu-central-1).

Truth pointers

ConcernSource of truth
Repo layout & onboardingREADME.md
Provider catalogdocs/providers/catalog.yaml
Compute vendor landscapedocs/compute/vendors.yaml
Compute cost model + egress policydocs/compute/cost-model.md
Wasabi S3 state (sizes, freshness)docs/wasabi/state.md
Data anomaliesdocs/wasabi/anomalies.md
CAL reference docs (read-only mirror)docs/cal/
Architecture decisionsdocs/adr/INDEX.md
Operational workflowsdocs/workflows.md
Bilingual convention (EN/FR)docs/language-convention.md
Colab access guidedocs/colab-setup.md
Issues & anomaly trackerGitHub Issues

Commit protocol

Conventional Commits, strict. Allowed types: feat, fix, docs, chore, refactor, test. Allowed scopes: cal, providers, compute, wasabi, adr, notebooks, scripts, colab, gitignore.

Subject style. Imperative present, no period, \(\leq72\) chars. Example: docs(providers): add Babbl fiche with sales contact.

Branch protocol

Slugs are human-readable. Branch names describe the work, not a workflow:

Squash-merge by default for feature branches into main.

Pull request protocol

main is the shared branch read by every contributor. For non-trivial work, use a feature branch and open a PR so CAL / Wissal / Emmanuel can review before merge.

Hooks

Run once after cloning:

./scripts/install-hooks.sh

Installs a pre-push hook that rejects commits with internal-only vocabulary in subjects, bodies, or diffs. Keeps the public surface clean across contributors.

Issue protocol

File anomalies, missing data, and tasks as GitHub Issues. Scope the title (e.g. gdelt:, ravenpack:, infra:) and link the relevant provider fiche or Wasabi bucket state.

What NOT to do

Contributors

Team roster and roles are in README.md. For contribution context see docs/workflows.md and docs/adr/INDEX.md.