TEMPORAIRE : sonde du contexte des workflows appelés #22

Merged
nicolas-fryder merged 6 commits from nicolas-fryder/dev into main 2026-10-15 15:55:58 +00:00 AGit

À fermer sans fusionner. Mesure event_name et la transmission des secrets dans un workflow réutilisable. 🤖 Generated with Claude Code

À fermer sans fusionner. Mesure event_name et la transmission des secrets dans un workflow réutilisable. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
ci: TEMPORAIRE — sonde de ce que voit un workflow appelé
Some checks failed
ci / mutation-1 (pull_request) Has been skipped
ci / security (pull_request) Successful in 0s
ci / mutation (pull_request) Successful in 0s
sonde-contexte / contexte (pull_request) Successful in 1s
sonde-contexte / sonde (pull_request) Successful in 0s
ci / check-1 (pull_request) Successful in 2m33s
ci / check (pull_request) Successful in 0s
ci / vulns (pull_request) Successful in 44s
ci / sast (pull_request) Successful in 38s
ci / workflows (pull_request) Successful in 3s
ci / secrets (pull_request) Successful in 5s
ci / integration (pull_request) Has been cancelled
ci / contract (pull_request) Has been cancelled
ci / audit (pull_request) Has been cancelled
ci / contrat-a-jour (pull_request) Has been cancelled
ci / fuzzing (pull_request) Has been cancelled
ci / audit-1 (pull_request) Has been cancelled
ci / integration-1 (pull_request) Has been cancelled
cafc1329aa
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ci: TEMPORAIRE — la sonde essaie aussi secrets: inherit
Some checks failed
ci / check-1 (pull_request) Successful in 2m8s
ci / check (pull_request) Successful in 0s
ci / secrets (pull_request) Successful in 5s
ci / vulns (pull_request) Successful in 17s
ci / sast (pull_request) Failing after 39s
ci / workflows (pull_request) Successful in 3s
ci / security (pull_request) Failing after 0s
ci / mutation-1 (pull_request) Has been skipped
ci / mutation (pull_request) Successful in 0s
sonde-contexte / contexte (pull_request) Successful in 1s
sonde-contexte / sonde (pull_request) Successful in 0s
sonde-contexte / contexte-1 (pull_request) Successful in 1s
sonde-contexte / sonde-heritee (pull_request) Successful in 0s
ci / integration-1 (pull_request) Successful in 2m10s
ci / integration (pull_request) Successful in 0s
ci / contrat-a-jour (pull_request) Successful in 1m32s
ci / audit-1 (pull_request) Successful in 47s
ci / audit (pull_request) Successful in 0s
ci / fuzzing (pull_request) Successful in 2m6s
ci / contract (pull_request) Successful in 0s
a296c63a5f
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ci: TEMPORAIRE — la sonde tourne aussi sur push, et lit le secret en direct
All checks were successful
sonde-contexte / direct (push) Successful in 1s
sonde-contexte / contexte (push) Successful in 1s
sonde-contexte / sonde (push) Successful in 0s
sonde-contexte / contexte-1 (push) Successful in 1s
sonde-contexte / sonde-heritee (push) Successful in 0s
85230fb347
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
TEMPORAIRE : essai de audit.yml@dev
Some checks failed
sonde-contexte / audit-1 (push) Successful in 48s
sonde-contexte / audit (push) Successful in 0s
ci / check-1 (pull_request) Successful in 2m9s
ci / check (pull_request) Successful in 0s
ci / secrets (pull_request) Successful in 5s
ci / vulns (pull_request) Successful in 17s
ci / sast (pull_request) Successful in 38s
ci / workflows (pull_request) Successful in 4s
ci / mutation-1 (pull_request) Has been skipped
ci / security (pull_request) Successful in 0s
ci / mutation (pull_request) Successful in 0s
sonde-contexte / audit-1 (pull_request) Successful in 48s
sonde-contexte / audit (pull_request) Successful in 0s
ci / integration-1 (pull_request) Successful in 2m9s
ci / integration (pull_request) Successful in 0s
ci / contrat-a-jour (pull_request) Successful in 1m31s
ci / audit-1 (pull_request) Successful in 47s
ci / audit (pull_request) Successful in 0s
ci / contract (pull_request) Has been cancelled
ci / fuzzing (pull_request) Has been cancelled
5a6ce6d998

eqs baseline --diff

15 changement(s) par rapport à la baseline :
  auth.version : "0.12.2" → "0.24.2"
  nonObserve : [{"champ":"api.runtimeValidation","pourquoi":"la validation d’entrée se prouve en frappant une route : `runConformance`"},{"champ":"api.errorFormat","pourquoi":"l’enveloppe se prouve sur une vraie réponse ≥ 400 : `runConformance`"},{"champ":"api.routesSansDecisionAuth","pourquoi":"les décisions du garde s’énumèrent sur l’application montée : `runConformance`"},{"champ":"data.foreignDatabaseAccess","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.declaredCopies","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.undeclaredForeignTables","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"observability.otel","pourquoi":"un span serveur se constate avec un collecteur : `runConformance`"},{"champ":"observability.structuredLogs","pourquoi":"un log corrélé se constate pendant une requête : `runConformance`"},{"champ":"tests.conformance","pourquoi":".eqs/conformance.json absent : `runConformance` n’écrit pas encore son résultat"}] → [{"champ":"api.runtimeValidation","pourquoi":"la validation d’entrée se prouve en frappant une route : `runConformance`"},{"champ":"api.errorFormat","pourquoi":"l’enveloppe se prouve sur une vraie réponse ≥ 400 : `runConformance`"},{"champ":"api.routesSansDecisionAuth","pourquoi":"les décisions du garde s’énumèrent sur l’application montée : `runConformance`"},{"champ":"data.foreignDatabaseAccess","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.declaredCopies","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.undeclaredForeignTables","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"observability.otel","pourquoi":"un span serveur se constate avec un collecteur : `runConformance`"},{"champ":"observability.structuredLogs","pourquoi":"un log corrélé se constate pendant une requête : `runConformance`"},{"champ":"tests.conformance","pourquoi":".eqs/conformance.json absent : `runConformance` ne s’est pas encore joué ici"},{"champ":"tests.checkSeconds","pourquoi":".eqs/check.json absent : `eqs-check` n’a pas encore tourné"}]
  packages.@eqs/auth : "0.12.2" → "0.24.2"
  packages.@eqs/cli : "0.12.2" → "0.24.2"
  packages.@eqs/config : "0.12.2" → "0.24.2"
  packages.@eqs/errors : "0.12.2" → "0.24.2"
  packages.@eqs/http : "0.12.2" → "0.24.2"
  packages.@eqs/platform-nest : "0.12.2" → "0.24.2"
  packages.@eqs/platform-next : "0.12.2" → "0.24.2"
  packages.@eqs/telemetry : "0.12.2" → "0.24.2"
  packages.@eqs/testing : "0.12.2" → "0.24.2"
  packages.@eqs/tooling : "0.12.2" → "0.24.2"
  schemaVersion : "1.0.0" → "1.1.0"
  tests.checkSeconds : 23.4 → null
  tests.eslintSuppressions : undefined → 0
### eqs baseline --diff ``` 15 changement(s) par rapport à la baseline : auth.version : "0.12.2" → "0.24.2" nonObserve : [{"champ":"api.runtimeValidation","pourquoi":"la validation d’entrée se prouve en frappant une route : `runConformance`"},{"champ":"api.errorFormat","pourquoi":"l’enveloppe se prouve sur une vraie réponse ≥ 400 : `runConformance`"},{"champ":"api.routesSansDecisionAuth","pourquoi":"les décisions du garde s’énumèrent sur l’application montée : `runConformance`"},{"champ":"data.foreignDatabaseAccess","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.declaredCopies","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.undeclaredForeignTables","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"observability.otel","pourquoi":"un span serveur se constate avec un collecteur : `runConformance`"},{"champ":"observability.structuredLogs","pourquoi":"un log corrélé se constate pendant une requête : `runConformance`"},{"champ":"tests.conformance","pourquoi":".eqs/conformance.json absent : `runConformance` n’écrit pas encore son résultat"}] → [{"champ":"api.runtimeValidation","pourquoi":"la validation d’entrée se prouve en frappant une route : `runConformance`"},{"champ":"api.errorFormat","pourquoi":"l’enveloppe se prouve sur une vraie réponse ≥ 400 : `runConformance`"},{"champ":"api.routesSansDecisionAuth","pourquoi":"les décisions du garde s’énumèrent sur l’application montée : `runConformance`"},{"champ":"data.foreignDatabaseAccess","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.declaredCopies","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.undeclaredForeignTables","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"observability.otel","pourquoi":"un span serveur se constate avec un collecteur : `runConformance`"},{"champ":"observability.structuredLogs","pourquoi":"un log corrélé se constate pendant une requête : `runConformance`"},{"champ":"tests.conformance","pourquoi":".eqs/conformance.json absent : `runConformance` ne s’est pas encore joué ici"},{"champ":"tests.checkSeconds","pourquoi":".eqs/check.json absent : `eqs-check` n’a pas encore tourné"}] packages.@eqs/auth : "0.12.2" → "0.24.2" packages.@eqs/cli : "0.12.2" → "0.24.2" packages.@eqs/config : "0.12.2" → "0.24.2" packages.@eqs/errors : "0.12.2" → "0.24.2" packages.@eqs/http : "0.12.2" → "0.24.2" packages.@eqs/platform-nest : "0.12.2" → "0.24.2" packages.@eqs/platform-next : "0.12.2" → "0.24.2" packages.@eqs/telemetry : "0.12.2" → "0.24.2" packages.@eqs/testing : "0.12.2" → "0.24.2" packages.@eqs/tooling : "0.12.2" → "0.24.2" schemaVersion : "1.0.0" → "1.1.0" tests.checkSeconds : 23.4 → null tests.eslintSuppressions : undefined → 0 ```
TEMPORAIRE : essai de l'envoi à Topologie par audit.yml@v1
All checks were successful
sonde-contexte / audit-1 (push) Successful in 47s
sonde-contexte / audit (push) Successful in 0s
2016784743
ci: plus de mutation à chaque push (D-083) ; retire la sonde temporaire
All checks were successful
ci / check-1 (pull_request) Successful in 2m7s
ci / check (pull_request) Successful in 0s
ci / secrets (pull_request) Successful in 5s
ci / vulns (pull_request) Successful in 17s
ci / sast (pull_request) Successful in 40s
ci / workflows (pull_request) Successful in 3s
ci / security (pull_request) Successful in 0s
ci / integration-1 (pull_request) Successful in 2m6s
ci / integration (pull_request) Successful in 0s
ci / contrat-a-jour (pull_request) Successful in 1m32s
ci / audit-1 (pull_request) Successful in 47s
ci / audit (pull_request) Successful in 0s
ci / fuzzing (pull_request) Successful in 2m8s
ci / contract (pull_request) Successful in 0s
cf5d426c86
La démo n'a pas Stryker : le job aurait échoué à chaque push sur main.
La mutation est désormais manuelle (eqs-workflows examples/mutation.yml).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

eqs baseline --diff

15 changement(s) par rapport à la baseline :
  auth.version : "0.12.2" → "0.24.2"
  nonObserve : [{"champ":"api.runtimeValidation","pourquoi":"la validation d’entrée se prouve en frappant une route : `runConformance`"},{"champ":"api.errorFormat","pourquoi":"l’enveloppe se prouve sur une vraie réponse ≥ 400 : `runConformance`"},{"champ":"api.routesSansDecisionAuth","pourquoi":"les décisions du garde s’énumèrent sur l’application montée : `runConformance`"},{"champ":"data.foreignDatabaseAccess","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.declaredCopies","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.undeclaredForeignTables","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"observability.otel","pourquoi":"un span serveur se constate avec un collecteur : `runConformance`"},{"champ":"observability.structuredLogs","pourquoi":"un log corrélé se constate pendant une requête : `runConformance`"},{"champ":"tests.conformance","pourquoi":".eqs/conformance.json absent : `runConformance` n’écrit pas encore son résultat"}] → [{"champ":"api.runtimeValidation","pourquoi":"la validation d’entrée se prouve en frappant une route : `runConformance`"},{"champ":"api.errorFormat","pourquoi":"l’enveloppe se prouve sur une vraie réponse ≥ 400 : `runConformance`"},{"champ":"api.routesSansDecisionAuth","pourquoi":"les décisions du garde s’énumèrent sur l’application montée : `runConformance`"},{"champ":"data.foreignDatabaseAccess","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.declaredCopies","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.undeclaredForeignTables","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"observability.otel","pourquoi":"un span serveur se constate avec un collecteur : `runConformance`"},{"champ":"observability.structuredLogs","pourquoi":"un log corrélé se constate pendant une requête : `runConformance`"},{"champ":"tests.conformance","pourquoi":".eqs/conformance.json absent : `runConformance` ne s’est pas encore joué ici"},{"champ":"tests.checkSeconds","pourquoi":".eqs/check.json absent : `eqs-check` n’a pas encore tourné"}]
  packages.@eqs/auth : "0.12.2" → "0.24.2"
  packages.@eqs/cli : "0.12.2" → "0.24.2"
  packages.@eqs/config : "0.12.2" → "0.24.2"
  packages.@eqs/errors : "0.12.2" → "0.24.2"
  packages.@eqs/http : "0.12.2" → "0.24.2"
  packages.@eqs/platform-nest : "0.12.2" → "0.24.2"
  packages.@eqs/platform-next : "0.12.2" → "0.24.2"
  packages.@eqs/telemetry : "0.12.2" → "0.24.2"
  packages.@eqs/testing : "0.12.2" → "0.24.2"
  packages.@eqs/tooling : "0.12.2" → "0.24.2"
  schemaVersion : "1.0.0" → "1.1.0"
  tests.checkSeconds : 23.4 → null
  tests.eslintSuppressions : undefined → 0
### eqs baseline --diff ``` 15 changement(s) par rapport à la baseline : auth.version : "0.12.2" → "0.24.2" nonObserve : [{"champ":"api.runtimeValidation","pourquoi":"la validation d’entrée se prouve en frappant une route : `runConformance`"},{"champ":"api.errorFormat","pourquoi":"l’enveloppe se prouve sur une vraie réponse ≥ 400 : `runConformance`"},{"champ":"api.routesSansDecisionAuth","pourquoi":"les décisions du garde s’énumèrent sur l’application montée : `runConformance`"},{"champ":"data.foreignDatabaseAccess","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.declaredCopies","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.undeclaredForeignTables","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"observability.otel","pourquoi":"un span serveur se constate avec un collecteur : `runConformance`"},{"champ":"observability.structuredLogs","pourquoi":"un log corrélé se constate pendant une requête : `runConformance`"},{"champ":"tests.conformance","pourquoi":".eqs/conformance.json absent : `runConformance` n’écrit pas encore son résultat"}] → [{"champ":"api.runtimeValidation","pourquoi":"la validation d’entrée se prouve en frappant une route : `runConformance`"},{"champ":"api.errorFormat","pourquoi":"l’enveloppe se prouve sur une vraie réponse ≥ 400 : `runConformance`"},{"champ":"api.routesSansDecisionAuth","pourquoi":"les décisions du garde s’énumèrent sur l’application montée : `runConformance`"},{"champ":"data.foreignDatabaseAccess","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.declaredCopies","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"data.undeclaredForeignTables","pourquoi":"aucun contrôle ne lit le schéma de données (reporté avec le rétrofit, ROADMAP #15)"},{"champ":"observability.otel","pourquoi":"un span serveur se constate avec un collecteur : `runConformance`"},{"champ":"observability.structuredLogs","pourquoi":"un log corrélé se constate pendant une requête : `runConformance`"},{"champ":"tests.conformance","pourquoi":".eqs/conformance.json absent : `runConformance` ne s’est pas encore joué ici"},{"champ":"tests.checkSeconds","pourquoi":".eqs/check.json absent : `eqs-check` n’a pas encore tourné"}] packages.@eqs/auth : "0.12.2" → "0.24.2" packages.@eqs/cli : "0.12.2" → "0.24.2" packages.@eqs/config : "0.12.2" → "0.24.2" packages.@eqs/errors : "0.12.2" → "0.24.2" packages.@eqs/http : "0.12.2" → "0.24.2" packages.@eqs/platform-nest : "0.12.2" → "0.24.2" packages.@eqs/platform-next : "0.12.2" → "0.24.2" packages.@eqs/telemetry : "0.12.2" → "0.24.2" packages.@eqs/testing : "0.12.2" → "0.24.2" packages.@eqs/tooling : "0.12.2" → "0.24.2" schemaVersion : "1.0.0" → "1.1.0" tests.checkSeconds : 23.4 → null tests.eslintSuppressions : undefined → 0 ```
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Infrastructure/eqs-demo!22
No description provided.