Merge pull request 'Autonomie : le dépôt public devient la source de vérité du contrat' (#1) from autonomie into master
gardes du contrat / conformite (push) Successful in 17s

Reviewed-on: #1
Reviewed-by: oat_gitadmin <admin@openathle.com>
This commit was merged in pull request #1.
This commit is contained in:
2026-09-11 07:37:16 +00:00
4 changed files with 155 additions and 2 deletions
+28
View File
@@ -0,0 +1,28 @@
name: gardes du contrat
# Le dépôt public est la SOURCE DE VÉRITÉ du contrat depuis le 2026-09-11
# (temoin/DEC-014) : le développement se fait ici, par pull request endossée —
# le subtree depuis le corpus hôte est mort. Deux gardes, normatives toutes
# deux : la suite de conformité (SPEC §9 — qui la rate ne se conforme pas) et
# l'auto-épreuve de l'instrument (dix-huit vérifications sur une juridiction
# d'essai jetable).
on:
pull_request:
push:
branches: [master]
jobs:
conformite:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Dépendances (ajv pour le schéma, yaml pour l'instrument)
run: npm install --no-audit --no-fund
- name: Suite de conformité — normative
run: npm run conformance
- name: Auto-épreuve de l'instrument
run: npm run instrument:selftest
+1
View File
@@ -0,0 +1 @@
node_modules/
+15 -2
View File
@@ -12,5 +12,18 @@ A1.2). Deux artefacts, un seul numéro de version :
| [`grammar/`](grammar/) | Domicile réservé de la grammaire source (ADR-066 §2.2) | | [`grammar/`](grammar/) | Domicile réservé de la grammaire source (ADR-066 §2.2) |
| [`OPENING.md`](OPENING.md) | Déclencheur et butoir de l'extraction publique | | [`OPENING.md`](OPENING.md) | Déclencheur et butoir de l'extraction publique |
Le nom du paquet est celui qu'ADR-066 §2.2 lui a donné. `pnpm conformance` Le nom du paquet est celui qu'ADR-066 §2.2 lui a donné.
exécute le jeu d'épreuves.
## Gouvernance (depuis le 2026-09-11 — temoin/DEC-014)
Ce dépôt est la **source de vérité** du contrat. Le développement se fait
ici, par pull request endossée — une approbation humaine par fusion, aucune
poussée directe sur `master`. L'ancien rite (sources au corpus hôte,
re-publication par subtree) est mort : il coûtait trois rites par évolution.
Chaque consommateur **épingle** l'édition qu'il adopte (un commit de ce
dépôt) et mesure sa dérive contre la tête ; déplacer une épingle est une
pull request relue chez le consommateur, jamais un événement subi.
`npm run conformance` joue la suite normative ; `npm run instrument:selftest`
l'auto-épreuve de l'instrument. La CI exige les deux.
+111
View File
@@ -0,0 +1,111 @@
{
"name": "published-language",
"version": "0.1.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "published-language",
"version": "0.1.0",
"license": "Apache-2.0",
"dependencies": {
"yaml": "2.9.0"
},
"devDependencies": {
"ajv": "^8.17.0",
"ajv-formats": "^3.0.0"
}
},
"node_modules/ajv": {
"version": "8.20.0",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz",
"integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==",
"dev": true,
"license": "MIT",
"dependencies": {
"fast-deep-equal": "^3.1.3",
"fast-uri": "^3.0.1",
"json-schema-traverse": "^1.0.0",
"require-from-string": "^2.0.2"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/epoberezkin"
}
},
"node_modules/ajv-formats": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz",
"integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"ajv": "^8.0.0"
},
"peerDependencies": {
"ajv": "^8.0.0"
},
"peerDependenciesMeta": {
"ajv": {
"optional": true
}
}
},
"node_modules/fast-deep-equal": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
"dev": true,
"license": "MIT"
},
"node_modules/fast-uri": {
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.7.tgz",
"integrity": "sha512-dOvZVzjdZdz7phd9v6jCbwxrBW3fK6n8Rc0CtdmM4bumzMnxywBYhuph6J819RRw/ku+rLbelwfMunktuzVVHg==",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/fastify"
},
{
"type": "opencollective",
"url": "https://opencollective.com/fastify"
}
],
"license": "BSD-3-Clause"
},
"node_modules/json-schema-traverse": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
"dev": true,
"license": "MIT"
},
"node_modules/require-from-string": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
"integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/yaml": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz",
"integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==",
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
"node": ">= 14.6"
},
"funding": {
"url": "https://github.com/sponsors/eemeli"
}
}
}
}