aeb8c7d157
Le dépôt gagne sa doctrine et ses contrats, dans le régime bidirectionnel. Il publie son engagement — ce qu'un consommateur peut attendre de l'indexation — et déclare ce qu'il consomme lui-même, du polyfill et de ng-e2e-helpers. Les deux déclarations sont écrites depuis les appels réels, pas depuis ce que la surface offre : un usage non déclaré est la faute du consommateur en cas de rupture, et une surface offerte mais non déclarée reste librement modifiable. Version 1.0.0, pas 0.1.0 : sous semver, 0.x ne promet rien du tout, donc le majeur ne porte son signal qu'à partir de 1. Ce dépôt étant sur main, c'est une version pleine et non une pré-version.
36 lines
1.8 KiB
YAML
36 lines
1.8 KiB
YAML
# Inter-repo contracts. `publish:` is this project's engagement toward its consumers —
|
|
# listing a leaf here IS the act of publishing it; an unlisted `contract_` leaf is a draft.
|
|
#
|
|
# This project is BOTH a provider and a consumer, and the two faces are isolated at document
|
|
# level: `indexing-layer` never mentions what we consume, and our `usage_` leaves never
|
|
# mention what we promise. What backs a published guarantee is internal doctrine.
|
|
#
|
|
# PROVIDES indexing-layer (concepts/indexing/indexing-layer/)
|
|
# consumer: the Festipod application, in its own repo. It has not declared a
|
|
# usage leaf, and we do not author one on its behalf — an interface with no
|
|
# declared consumer simply runs in the one-document mode.
|
|
#
|
|
# CONSUMES polyfill-surface and ng-e2e-helpers, both published by `ng-eventually-js`.
|
|
# We pull each engagement and author the `usage_ng-helpers.md` beside it.
|
|
#
|
|
# `pullFrom:` values are CANONICAL remote identities, because this file travels with the
|
|
# branch. Per-developer local access lives in `.project/contracts.local.yaml`, which is
|
|
# gitignored and must never be committed.
|
|
|
|
publish:
|
|
# paths are relative to `.project/`
|
|
indexing-layer: concepts/indexing/indexing-layer/contract_indexing-layer.md
|
|
|
|
consume:
|
|
- contract: polyfill-surface
|
|
type: git
|
|
pullFrom: git@gitea.reconnexion.apps.gueraud.net:Reconnexion/ng-eventually.git/.project/concepts/app-contract/polyfill-surface/contract_polyfill-surface.md
|
|
ref: caps-p1a-and-virtual-user-boundary
|
|
into: concepts/indexing/polyfill-surface/
|
|
|
|
- contract: ng-e2e-helpers
|
|
type: git
|
|
pullFrom: git@gitea.reconnexion.apps.gueraud.net:Reconnexion/ng-eventually.git/.project/concepts/e2e-harness/ng-e2e-helpers/contract_ng-e2e-helpers.md
|
|
ref: caps-p1a-and-virtual-user-boundary
|
|
into: concepts/indexing/ng-e2e-helpers/
|