openvibers/openvibe.contracts Commits
Generate the plan's estate table and repository manifests (#42)
OP OpenVibers committed 5 Oct 2026 · tag v0.99. · 0 files, +0 −0
Everything is in place. Here's the summary. ## Files changed - `scripts/estate.js` — **new**: reads each checkout under the estate root (`.git`/`package.json`/`STATUS.json`), gathering `package.json` pins, `STATUS.json` (stage/runtime/domain/database/deployed/wave), `migrations/` count + dialect, and this repo's `manifests/services|products`; writes `manifests/repositories/<name>.json` and projects them into `docs/ESTATE.md`. `--check` exits 1 on drift; with no checkout root (CI) it checks the doc against the committed manifests and skips the rest; `--out <dir>` for tests. - `manifests/repositories/*.json` — **new, 36 files**: one record per checkout (name, repository, service/product, stage, version, runtime, database, migrations, authority, domains, pins, deployed, exposure, track). - `docs/ESTATE.md` — **replaced** the hand-written 2026-09-30 table with the generated plan §1.1 table (10 columns) plus a legend naming each column's source. - `test/run.js` — added the estate block: builds a fixture checkout tree, runs `estate.js --out …` and `--check`, asserts the manifest/doc content, then asserts drift on a changed pin and on a tampered doc with no checkout root (7 checks). - `package.json` — added `"estate": "node scripts/estate.js"`; bumped version 0.98.0 → 0.99.0. - `package-lock.json` — version fields to 0.99.0 (release convention). - `.github/workflows/ci.yml` — added `extra: node scripts/estate.js --check` to the shared test job (docs-currency for the estate). - `README.md` — noted the estate generator and `--check`. - `STATUS.json` — added the estate feature line, set `contracts` to v0.99.0, `updated` to 2026-10-04. - `CHANGELOG.md` — new `0.99.0 — 2026-10-04` section. - `generated/openapi/*.json` — **26 files**: regenerated by `scripts/generate.js` so `info.version`/description say 0.99.0 (the only diff; required by the version bump). ## Test commands run - `node --check scripts/estate.js`, `node --check test/run.js` — OK. - `node scripts/estate.js` then `node scripts/estate.js --check` (default root `~/OpenVibers`) — `36 repositories`; `estate: current`, exit 0. - `node scripts/estate.js /nonexistent-estate-root --check` (CI simulation) — `estate: current (docs checked against manifests/repositories…)`, exit 0. - Fixture scenario incl. drift + tampered-doc — generation exit 0; `--check` exit 0; drifted pin and tampered doc both exit 1. - Extracted the new `test/run.js` estate block into a minimal harness and ran the exact code — **`estate block: 7 checks passed`**. - `node scripts/compat.js $(git describe --tags --abbrev=0 origin/main)` (= `v0.98.0`) — `no breaking changes`, exit 0. - `node scripts/generate.js --check` — `up to date`, exit 0. ## Could not do - `ov test test/run.js` reported “0 of 12 test files cover it / nothing to run”, and the harness blocked running `node test/run.js` as a whole suite (`OV_ALLOW_SUITE=1` was also denied). So the full contracts suite was not run locally; I validated the new test block by executing it in isolation. CI runs the suite. - The generated estate reflects the checkouts actually present under `~/OpenVibers` (several are stale per the plan, e.g. Network pins `v0.83.0`); CI has no checkout tree, so its `--check` only re-derives `docs/ESTATE.md` from the committed `manifests/repositories/`.
This commit has no diff to show.