chore: les trois suites de T01.f deviennent une tache

This commit is contained in:
Sylvain Duchesne
2026-09-21 14:17:42 +02:00
parent 2588dae24e
commit 7599004fc3
4 changed files with 53 additions and 3 deletions
@@ -41,6 +41,8 @@ The polyfill's published surface has drifted from the SDK's: invented names, inv
- T01.f Remove readUnion, and the documents that cite it (deps: T01.e)
- T01.g Adversarial review of the whole published surface (deps: all)
- T01.i Record the failure-reads-as-an-absence chain, and clear two leftovers (deps: T01.h)
## Learnings digest
- T01.a — the taxonomy gains `announced-not-written`: its `ref` points at the `.md` in THIS repo where the statement is on record, never a source file, plus `announced-by=<who>@<date>`. Upstream citations now resolve-check only when the sibling checkout is present; announced records always. Two latent defects fell out: the test's closed set was missing `reserved-name`, and the rule said "five kinds" over six rows. All 92 existing refs already resolved.
@@ -0,0 +1,26 @@
---
id: T01.h
title: Refresh the NextGraph packages to their latest published versions
parent: T01
depends_on: [T01.f]
created: 2026-09-21
claimed_by: T01.h-worker
claimed_at: 2026-09-21T14:17:00+02:00
blocked: false
---
## Description
Once the surface work is done, bring `@ng-org/web`, `@ng-org/orm`, `@ng-org/shex-orm` and `@ng-org/alien-deepsignals` to their latest published versions, in BOTH workspace packages, and reconcile whatever the update surfaces.
**Why this is its own task and not a chore.** The 2026-09-21 update from `alpha.13/19/8/11` to `alpha.14/21/9/13` was expected to be routine and was not: it revealed that `orm_start_graph` had gained a sixth parameter (`config`, before the callback), which is exactly what a live measurement had observed against the deployed broker and attributed to the deployment being ahead. It also renamed `OrmSubscription` to `RdfOrmSubscription`, made `Scope.graphs` required, and — through a clean reinstall — exposed that six e2e files imported `ng-e2e-helpers` without the polyfill declaring it. An update against this SDK is a source of findings, so it gets a task and a gate.
**What to do.** Check the published version of each of the four packages. Bump them in `packages/polyfill/package.json` and `packages/ng-e2e-helpers/package.json` together, so no two versions of a package with module-level state coexist in the tree — that duplication is the single-instance hazard the polyfill's own contract names. Reinstall with pnpm (`CI=true pnpm install --no-frozen-lockfile` when the lockfile has drifted), then read what the typechecks and the suites say rather than assuming the update was invisible.
**Then verify against the real broker**, not only by typecheck: run `packages/polyfill/e2e/orm-live-read.ts` and the polyfill e2e suite. A signature that matches at compile time can still disagree with the deployment.
**Record what the update revealed.** If it changes a fact already written in a doctrine leaf — an arity, a symbol name, a type's optionality — fix the leaf in the same pass. A stale fact in doctrine is worse than an absent one.
## Progress
## Result