Skip to content

Commit 3f82ee0

Browse files
authored
Merge pull request #29 from udx/fix/declared-config-contracts
Detect declared config contract manifests
2 parents e705937 + fa0d15d commit 3f82ee0

24 files changed

Lines changed: 265 additions & 129 deletions

.github/workflows/npm-release-ops.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
name: Release
22

3+
# Release strategy and pre-actions:
4+
# - docs/release.md
5+
# Release probe and publication verification guidance:
6+
# - docs/real-repo-validation.md
7+
38
on:
49
push:
510
workflow_dispatch:

.rabbit/context.yaml

Lines changed: 11 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ version: udx.dev/dev.kit/v1
55
generator:
66
tool: dev.kit
77
repo: https://github.com/udx/dev.kit
8-
version: 0.14.0
9-
generated_at: 2026-07-05T18:19:05Z
8+
version: 0.20.0
9+
generated_at: 2026-07-08T15:15:15Z
1010
sources:
1111
homepage: https://udx.dev/kit
1212
repository: https://github.com/udx/dev.kit
@@ -27,13 +27,14 @@ refs:
2727
- ./changes.md
2828
- ./Makefile
2929
- ./docs/real-repo-validation.md
30+
- ./docs/release.md
3031
- ./src/configs/archetypes.yaml
3132
- ./src/configs/audit-rules.yaml
3233
- ./src/configs/context-config.yaml
3334
- ./src/configs/detection-patterns.yaml
3435
- ./src/configs/detection-signals.yaml
3536
- ./src/configs/repo-validation.yaml
36-
- ./deploy.yml
37+
- ./env-interface.yaml
3738
- ./.github/workflows
3839
- ./docs
3940

@@ -60,13 +61,6 @@ dependencies:
6061
used_by:
6162
- .github/workflows/context7-ops.yml
6263
- .github/workflows/npm-release-ops.yml
63-
- repo: udx/worker
64-
kind: manifest contract (deploy)
65-
resolved: true
66-
declared_as: udx.io/worker-v1/deploy
67-
archetype: manifest-repo
68-
used_by:
69-
- deploy.yml
7064

7165
# Manifests — YAML files that define repo-specific workflow, deploy, or contract behavior.
7266
# Note: Include custom config/manifests that materially shape repo behavior or contract understanding.
@@ -143,28 +137,12 @@ manifests:
143137
- path reference: docs/real-repo-validation.md
144138
- path reference: lib/modules/config_catalog.sh
145139
- path reference: tests/real-repos.sh
146-
- path: deploy.yml
147-
kind: workerDeployConfig
148-
declared_as: udx.io/worker-v1/deploy
149-
source_repo: udx/worker
140+
- path: env-interface.yaml
141+
kind: devKitEnvInterface
142+
description: Environment variables that control dev.kit installation, command behavior, and test probes.
143+
declared_as: udx.dev/dev.kit-v1/config
150144
used_by:
151-
- Makefile
152-
- docs/context-contract.md
153-
- docs/references/command-surfaces.md
154-
- docs/references/config-contract-surfaces.md
155-
- docs/repo-contract-boundary.md
156-
- lib/modules/repo_factors.sh
157-
- src/configs/context-config.yaml
158-
- src/configs/detection-signals.yaml
159-
- tests/suite.sh
145+
- changes.md
160146
evidence:
161-
- version: udx.io/worker-v1/deploy
162-
- path reference: Makefile
163-
- path reference: docs/context-contract.md
164-
- path reference: docs/references/command-surfaces.md
165-
- path reference: docs/references/config-contract-surfaces.md
166-
- path reference: docs/repo-contract-boundary.md
167-
- path reference: lib/modules/repo_factors.sh
168-
- path reference: src/configs/context-config.yaml
169-
- path reference: src/configs/detection-signals.yaml
170-
- path reference: tests/suite.sh
147+
- version: udx.dev/dev.kit-v1/config
148+
- path reference: changes.md

AGENTS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ _Normalized repo-owned guidance for agents. Keep it aligned with `docs/reference
2424

2525
## Workflow
2626

27-
- read: `README.md`, `changes.md`, `deploy.yml`, `.github/workflows/`, `docs/`
27+
- read: `README.md`, `changes.md`, `.github/workflows/`, `docs/`
2828
- verify: `make test`
2929

3030
## Notes

Makefile

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,14 @@ test:
1010
test-real:
1111
bash tests/real-repos.sh
1212

13-
# Run tests inside the worker container via deploy.yml
14-
# Requires @udx/worker-deployment: npm install -g @udx/worker-deployment
13+
# Run tests inside the worker container without the deprecated worker-deployment manifest.
1514
test-docker:
16-
worker run
15+
docker run --rm -v "$(CURDIR):/workspace" -w /workspace $(WORKER_IMAGE) bash tests/suite.sh
1716

1817
# Interactive shell inside the worker container for debugging
1918
test-shell:
20-
worker run run-it
19+
docker run --rm -it -v "$(CURDIR):/workspace" -w /workspace $(WORKER_IMAGE) bash
2120

2221
# Pull the worker image explicitly
2322
test-docker-pull:
24-
docker pull $(WORKER_IMAGE)
23+
docker pull $(WORKER_IMAGE)

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,7 @@ All commands support `--json`.
182182
- [Environment Config](docs/environment-config.md)
183183
- [Context Coverage](docs/context-coverage.md)
184184
- [Integration](docs/integration.md)
185+
- [Release](docs/release.md)
185186
- [Real Repo Validation](docs/real-repo-validation.md)
186187
- [Smart Dependency Detection](docs/smart-dependency-detection.md)
187188
- [Reference Docs](docs/references/README.md)

changes.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Changes
22

3+
### 0.20.0
4+
5+
- Discover root YAML config contracts from explicit top-level `contract` / `contracts` metadata or typed `kind` + `version` manifests instead of filename-specific allowlists.
6+
- Remove the deprecated worker-deployment `deploy.yml` surface and keep manifest discovery/dependency tracing covered by arbitrary typed root YAML such as `work-conf.yaml`.
7+
- Add an explicit `env-interface.yaml` for dev.kit's own environment contract so config coverage comes from a repo-owned interface declaration.
8+
- Document release strategy and pre-actions so PRs check the published version first, reserve the next version, update `changes.md`, regenerate context, and validate before merge.
9+
310
### 0.14.0
411

512
- Ignore command examples from `docs/references/` when generating repo command contracts, preventing reference docs from creating misleading `build` or `run` commands.

deploy.yml

Lines changed: 0 additions & 13 deletions
This file was deleted.

docs/context-contract.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ The generated contract is `.rabbit/context.yaml`.
1212
- `AGENTS.md`, `CLAUDE.md`, and similar repo-owned instruction files
1313
- `README.md`, `changes.md`, and focused docs
1414
- `.github/workflows/`
15-
- manifests such as `deploy.yml`, package manifests, Docker files, and structured YAML configs
15+
- manifests such as typed YAML configs, package manifests, Docker files, and workflow contracts
1616
- scripts, Makefiles, tests, and checked-in examples that define runnable behavior
1717

1818
Live services such as GitHub issues, PRs, reviews, and workflow runs can help a current task, but they should not become durable repo truth inside `.rabbit/context.yaml`.

docs/references/command-surfaces.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Workflow and operational contracts are often packaged in:
2525
- `.github/workflows/*.yml` when the workflow expresses repo-specific execution contracts
2626
- reusable workflow refs
2727
- Docker build and runtime files
28-
- deploy manifests such as `deploy.yml`
28+
- typed runtime manifests and workflow files
2929
- repo docs that explain how those assets fit together
3030

3131
Docs should explain execution behavior, tradeoffs, and decision points. The runnable contract should stay in scripts and manifests.
@@ -80,7 +80,7 @@ A repo may expose its main flow through a mix like:
8080

8181
- `Makefile` for `make test`, `make build`, `make run`
8282
- `.github/workflows/` for CI/CD execution
83-
- `deploy.yml` for deploy contract details
83+
- typed runtime manifests or workflow files for deploy contract details
8484
- `docs/` for operator-facing explanation
8585

8686
That is valid as long as the repo makes those surfaces clear and traceable.

docs/references/config-contract-surfaces.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Configuration is often declared through:
1010

1111
- `.env.example`, `.env.sample`, or `.env.template`
1212
- focused repo docs such as `README.md` or `docs/config.md`
13-
- deploy manifests such as `deploy.yml`
13+
- typed YAML manifests with explicit config metadata
1414
- versioned YAML/JSON manifests with explicit config metadata or runtime config sections
1515
- checked-in example config files when the repo uses a custom format
1616

0 commit comments

Comments
 (0)