You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit bbf5a12
Browse filesBrowse the repository at this point in the historyBrowse files
fix(metadata-protocol): every promote-door text whose draft is bound to a package names it in its publish step
A publish naming no package resolves by the rows the deletes leave, and can
then address another draft (packagelessDraftAddress). The step is now the
request itself, POST .../publish?package=PKG, measured over every combination
of stored rows, drafts and naming at the promote door.
Claude-Session: https://claude.ai/code/session_01TkXMn8bJqX6ZgMRwuZTxpf
Co-authored-by: Claude <noreply@anthropic.com>
@@ -661,6 +663,53 @@ describe('#23514 — a save naming a package beside an object its package-less d
661
663
expect(drops).toEqual([]);
662
664
});
663
665
666
+
it('another package\'s row `[package-less, P]` with BOTH P\'s draft and a draft bound to no package, published naming no package: the text names P in its publish step, and that walk promotes P\'s draft',async()=>{
// P's draft is live in P; the unbound draft is left stored, unpublished.
701
+
expect(awaitserved(k)).toEqual({
702
+
owner: P,dataPlaneLabel: 'Gadget P draft',metaReadLabel: 'Gadget P draft',records: 2,
703
+
});
704
+
705
+
awaitk.kernel.shutdown();
706
+
constk2=awaitboot(stores,drops);
707
+
expect(awaitserved(k2)).toEqual({
708
+
owner: P,dataPlaneLabel: 'Gadget P draft',metaReadLabel: 'Gadget P draft',records: 2,
709
+
});
710
+
expect(drops).toEqual([]);
711
+
});
712
+
664
713
it('another package\'s row `[package-less, P]` and a draft bound to NO package, published naming no package: the text says the publish lands package-less, and names the move into P after it',async()=>{
665
714
conststores: Stores=newMap();
666
715
constdrops: string[]=[];
@@ -789,13 +838,14 @@ describe('#23514 — a save naming a package beside an object its package-less d
789
838
expect(err.ownerPackageId).toBeNull();
790
839
expect(err.message).toMatch(newRegExp(
791
840
`^Move object '${NAME}' into package '${Q.replace(/\./g,'\\.')}' first: delete its package-less `
792
-
+'definition without dropStorage, .*then publish this draft again',
841
+
+`definition without dropStorage, .*then POST /api/v1/meta/object/${NAME}/publish\\?package=`
842
+
+`${Q.replace(/\./g,'\\.')}: the draft then serves the object at once`,
0 commit comments