Skip to content

The closure removes the index directory rather than trusting an update - #16

Merged
Sunrisepeak merged 1 commit into
mainfrom
fix/closure-reads-a-fresh-index
Aug 27, 2026
Merged

The closure removes the index directory rather than trusting an update#16
Sunrisepeak merged 1 commit into
mainfrom
fix/closure-reads-a-fresh-index

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

tools/sandbox-closure.sh is the only thing in this ecosystem that resolves a published package — every workflow substitutes working trees by design. Its whole purpose is to read what was just published, and it began by running xlings update and trusting it.

⚠️⚠️ That command reports success without having refreshed anything. Measured three times in one day, in three shapes: an artifact pointer served from a cache; xlings update exiting zero while the index directory still held the previous artifact; and a registry reporting the current hash while holding older content.

The second is the one that bites here, and deleting the refresh marker does not help — update re-derives it from the directory that is already there and writes the same hash back. Only removing the directory forces a fetch.

"The index looked fresh" and "the index was fresh" are indistinguishable in every output either produces, which is why this is a change to the script rather than a note in it.

⚠️⚠️ `xlings update' reports success without having refreshed anything,
and this script is the one place where that matters most: its whole
purpose is to read what was just published, and it cannot begin by
reading what was published last time.

Measured three times in one day, in three shapes --- an artifact pointer
served from a cache, `xlings update' exiting zero while the index
directory still held the previous artifact, and a registry reporting the
current hash while holding older content. The second is the one that
bites here, and deleting the refresh MARKER does not help: `update'
re-derives it from the directory that is already there and writes the
same hash back.

⇒ The directory is removed. "The index looked fresh" and "the index was
fresh" are indistinguishable in every output either produces.
@Sunrisepeak
Sunrisepeak merged commit 55dd342 into main Aug 27, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants