Skip to content

Commit 011e53f

Browse files
committed
Merge remote-tracking branch 'origin/main' into claude/issue-21464-s-kanban-cf
2 parents 27a0e12 + 7e0066a commit 011e53f

37 files changed

Lines changed: 119 additions & 103 deletions
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
'@objectstack/spec': patch
3+
---
4+
5+
Two provenance comments that tests read literally were re-anchored
6+
7+
Clause-②: no
8+
9+
The removal note on `DATA_ACTION_TO_API_OPERATION` in `src/data/api-derivation.ts` and the
10+
explanatory block about `ApiKeySchema` in `src/identity/identity.zod.ts` cited tracker numbers
11+
that no longer resolve on GitHub. Each now opens with the commit in this repository's history
12+
that decided the matter: 6968885ef removed the producer-less `batch: 'bulk'` alias row, and
13+
2c86fe3ea deleted `ApiKeySchema` on the maintainer's ruling. The unit tests that read those two
14+
comments moved with them, and the same re-anchoring was applied to the comments in the
15+
package's test files, which do not ship. Comments only: no type, schema, export or runtime
16+
behaviour changes.

‎packages/spec/src/api/export-job-family-retirement.test.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ import { MIGRATIONS_BY_MAJOR, RETIRED_DEFS_BY_MAJOR } from '../migrations/regist
2121
// (`contracts/export-service.ts`) and `ScheduleExportInput` leave the public
2222
// surface, and `ScheduleState` (`automation/execution.zod.ts`) goes with them
2323
// unless a live consumer is measured. Landing route A (decision batch #221
24-
// item 2): objectui retired its side first (objectui#10247, merged as objectui
25-
// PR #10264), and the pinned `.objectui-sha` already descends from that merge.
24+
// item 2): objectui retired its side first (objectui#10247, merged as
25+
// objectui PR #10264), and the pinned `.objectui-sha` already descends from that merge.
2626
// Scope note: the export-job LIST pair (`ListExportJobsRequestSchema` with its
2727
// `limit` / `cursor`, and its response) is in, absorbing #19543 door ②; the
2828
// import-job family in the same module is served and is NOT in.

‎packages/spec/src/api/protocol.test.ts‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1805,7 +1805,7 @@ describe('PublishMetaItemRequestSchema mirrors the implementation parameter type
18051805
// `@objectstack/metadata-protocol` — `{ type, name, organizationId?,
18061806
// actor?, message?, packageId? }` — and the REST door's actual reads;
18071807
// nothing else is declared because nothing else is enforced.
1808-
// As in the #9726/#9741 blocks above, accept-pins assert the parsed VALUE:
1808+
// As in the #9726 / commit 2a29caa53 blocks above, accept-pins assert the parsed VALUE:
18091809
// this is a non-strict object, so `success` alone is exactly the
18101810
// silent-strip state this family of cards closes.
18111811

@@ -1935,9 +1935,9 @@ describe('AuditMetaItemRequestSchema mirrors the implementation parameter type (
19351935
// implementation's parameter type in `@objectstack/metadata-protocol` —
19361936
// `{ type, name, organizationId?: string | null, limit?: number }` — and the
19371937
// REST door's actual sends; nothing else is declared because nothing else is
1938-
// enforced. As in the #9726/#9741/#11006 blocks above, accept-pins assert
1939-
// the parsed VALUE: this is a non-strict object, so `success` alone is
1940-
// exactly the silent-strip state this family of cards closes.
1938+
// enforced. As in the #9726 / commit 2a29caa53 / commit cccbe51bf blocks above,
1939+
// accept-pins assert the parsed VALUE: this is a non-strict object, so
1940+
// `success` alone is exactly the silent-strip state this family of cards closes.
19411941

19421942
const base = { type: 'view', name: 'account_list' } as const;
19431943

‎packages/spec/src/api/rest-api-config-dead-keys-retirement.test.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -249,8 +249,8 @@ describe('rest_api retirement — ADR-0087 registration', () => {
249249
expect(entry!.surface).toBe('restServer.api.responseFormat / restServer.api.documentation.enabled');
250250
expect(entry!.replacement).toContain('`api.enableOpenApi`');
251251
// Plugin TS configuration has no stored or stack source for a conversion to
252-
// rewrite — the #14691 / `openApi31` shape. A conversion id naming either
253-
// key would be a strip with nothing to strip.
252+
// rewrite — the `RestServerConfig` retirement (commit b3a63d32c) / `openApi31`
253+
// shape. A conversion id naming either key would be a strip with nothing to strip.
254254
expect(step.conversionIds.filter((id) => /response-format|documentation-enabled/.test(id))).toEqual([]);
255255
});
256256

‎packages/spec/src/automation/control-flow.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -412,7 +412,7 @@ describe('TryCatchErrorValueSchema', () => {
412412
expect(TryCatchErrorValueSchema.safeParse({ nodeId: 'guard', message: 'x', iteration: 1.5 }).success).toBe(false);
413413
});
414414

415-
// #14954 — `code` (#14419): the engine binds the failing node's
415+
// #14954 — `code` (commit c5a7448d5): the engine binds the failing node's
416416
// platform-classified error code beside `nodeId` / `message`, so a catch
417417
// region can DISCRIMINATE ("the row is already there" vs "the store is
418418
// down") by branching on `$error.code` instead of parsing `message`. This

‎packages/spec/src/automation/schedule-organization.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
resolveScheduleOrganization,
99
} from './schedule-organization.zod';
1010

11-
// [#16659] The declaration side of the acting-organization ruling. Two
11+
// [commit ecdfc9411] The declaration side of the acting-organization ruling. Two
1212
// consumers read this module and they must not be able to disagree about what
1313
// counts as DECLARED: the automation engine lifts the value onto the trigger
1414
// binding (`resolveTriggerBinding`), and both time triggers refuse a binding

‎packages/spec/src/automation/sync-retirement.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ describe('[#4738] sync/conflict dual-source retirement', () => {
217217
}
218218
// Anti-vacuity: the ui namespace we just probed is real and non-trivial —
219219
// otherwise a broken import would satisfy the three absences above.
220-
// (`ThemeSchema` was the probe until #10485 retired it — ADR-0049.)
220+
// (`ThemeSchema` was the probe until commit 35ad101bc retired it — ADR-0049.)
221221
expect('PageSchema' in ui).toBe(true);
222222
});
223223

‎packages/spec/src/automation/webhook.test.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -276,10 +276,10 @@ describe('unknown keys are rejected, not stripped (#4001 batch 11)', () => {
276276
});
277277

278278
/**
279-
* [#6362] The measurement that card asked for, kept as a pin.
279+
* [commit b5404f496] The measurement that commit took in the same pass, kept as a pin.
280280
*
281-
* #6362 fixed `connector`, which TOLERATED the stamped envelope and then
282-
* stripped it — success with silent data loss — and asked whether `webhook`
281+
* Commit b5404f496 fixed `connector`, which TOLERATED the stamped envelope and then
282+
* stripped it — success with silent data loss — and measured whether `webhook`
283283
* had the same drop. It does not: `WebhookSchema` has carried
284284
* `...MetadataProtectionFields` since #4001 batch 11, and all SEVEN keys
285285
* survive the round-trip. No spread was added here; this pin is what makes

‎packages/spec/src/compose-stacks-action-echo.test.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
* three stacks binding b1/b2/b3 to one object, override / merge
1818
* : shared.actions=["emb3/EMB","b3/BOUND","b1/BOUND","b2/BOUND","b3/BOUND"]
1919
* defineStack(composeStacks([a, b])) : REFUSED 'a_item:dup_x' is declared 3 times
20-
* defineStack(a) (a lone built input) : REFUSED 'a_item:dup_x' is declared twice ← #14686's landed pin
20+
* defineStack(a) (a lone built input) : REFUSED 'a_item:dup_x' is declared twice ← commit 279431e7a's landed pin
2121
* ```
2222
*
2323
* The three-stack `merge` row above is a refusal since #14848: `'merge'` no
@@ -31,7 +31,7 @@
3131
* the very same object as an entry of `object.actions` is that a previous merge
3232
* put it there. A strict parse produces fresh objects, so a hand-written twin —
3333
* the same action authored in both positions — never shares identity, and
34-
* #14686's same-key refusal, which runs before the merge, still refuses it. A
34+
* commit 279431e7a's same-key refusal, which runs before the merge, still refuses it. A
3535
* marker key cannot do this job: `ActionSchema` is a strict object, so the key
3636
* is refused before it could travel (measured below).
3737
*
@@ -197,7 +197,7 @@ describe('composeStacks - what the identity skip does NOT fold', () => {
197197

198198
it('under strict: false, ONE action object placed in both positions is one declaration — carried once (before: twice)', () => {
199199
// No parse clones it, so it shares identity exactly as a build's echo does.
200-
// #14686's walk does not run in this mode by the author's choice, and the
200+
// Commit 279431e7a's walk does not run in this mode by the author's choice, and the
201201
// runtime dedupes a standalone against an embedded entry by key anyway.
202202
const shared = act('sh', { objectName: 'n_item' });
203203
const out = defineStack({ manifest: mf('com.example.n'), objects: [obj('n_item', [shared])], actions: [shared] }, { strict: false });

‎packages/spec/src/compose-stacks-action-key-collision.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/**
22
* `composeStacks` refuses two INPUT STACKS whose action declarations resolve
3-
* to one scope-qualified runtime key — and only those (#14662).
3+
* to one scope-qualified runtime key — and only those (commit 35dffeace).
44
*
55
* `defineStack` refuses the same collision within one stack
66
* (`stack-duplicate-action-key.test.ts`); the runtime keys a composed artifact

0 commit comments

Comments
 (0)