Skip to content

Commit ed5853c

Browse files
committed
test(dogfood,metadata-protocol): cite ADR-0054 for the picklist dogfood proof; pin object.fields.picklist as a picklist reference site
Claude-Session: https://claude.ai/code/session_01MZu5JqVPacMktogpMxq9Xu Co-authored-by: Claude <noreply@anthropic.com>
1 parent 4bb0dad commit ed5853c

2 files changed

Lines changed: 12 additions & 1 deletion

File tree

‎packages/metadata-protocol/src/reference-sites.derivation.test.ts‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,3 +211,14 @@ describe('[#9190] derived reference sites — derivation is a pure function of t
211211
expect(flatten(a)).toEqual(flatten(REFERENCE_SITES));
212212
});
213213
});
214+
215+
describe('a field\'s `picklist` is a reference site of the `picklist` kind', () => {
216+
// The admin "Used by" panel and the delete-safety check read this index. A
217+
// select field that names a shared list (`Field.select({ picklist })`)
218+
// must count as a use of that list, or the list reads as safe to delete
219+
// while objects take their options from it. Derived by the naming rule —
220+
// the property spells the target — so no row exists to forget.
221+
it('object.fields{}.picklist points at the picklist it names', () => {
222+
expect(sitesFor('picklist')).toContainEqual({ fromType: 'object', property: 'picklist' });
223+
});
224+
});

‎packages/qa/dogfood/test/picklist-shared-across-objects.dogfood.test.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// Copyright (c) 2026 ObjectStack. Licensed under the Apache-2.0 license.
22
//
33
// GOLDEN REGRESSION — one shared picklist, two objects, two packages, booted for
4-
// real and driven through the HTTP doors a client uses (ADR-0136 D2.4).
4+
// real and driven through the HTTP doors a client uses (the ADR-0054 runtime proof).
55
//
66
// The picklist kind lets several select fields name ONE option list
77
// (`Field.select({ picklist: 'industry' })`) instead of copying `options` into

0 commit comments

Comments
 (0)