Repository navigation
Update notice in the finalize receipt - #223
Merged
Merged
Conversation
lib/release.mjs reads version from package.json on main with curl under
a 4-second limit (git tags lag the releases), caches it for 24 hours
under $XDG_CACHE_HOME/decklet, reports unavailable when offline and
never installs. The finalize CLI adds update {installed, available,
noticeRequired, source} to the receipt and prints one line when main is
ahead; the API checks only when passed update, so tests make no
request. DECKLET_NO_UPDATE_CHECK=1 turns it off. The check never
changes ok. SKILL.md Step 6 says to mention it once.
Closes #206
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CiXonXtVxd5FHk4XqMzY8f
# Conflicts: # CHANGELOG.md # llms.txt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
finalizenow records in its receipt whether a newer decklet is on main, and prints one line when one is.Why
Closes #206. Plugin and
npx skillsinstalls went stale without anyone noticing. As decided on the issue, the version comes frompackage.jsonon main, not git tags: the tags lag (the latest is v0.9.0 whilepackage.jsonsays 0.14.0), and this needs no release-process change.lib/release.mjs:versionfromhttps://raw.githubusercontent.com/grunion-ai/decklet/main/package.jsonwith curl, under a 4-second limit, the same routebin/archify-sync.mjsuses;$XDG_CACHE_HOME/decklet;unavailableinstead of failing when offline;update: {installed, available, noticeRequired, source, checkedAt}.DECKLET_NO_UPDATE_CHECK=1turns it off, and the check never changesok.finalize()API asks only when passedupdate, so tests and embedders make no request.How it was verified
test/release.test.mjs, red before the change: 6 pass. It covers newer, same and older versions; a thrown, non-JSON or version-less fetch; a cache hit within 24 hours making no request and a refetch after; the off switch; and the receipt, withokdecided by the gates alone and no request withoutupdate.installed 0.1.0readavailable 0.14.0from the network and then from the cache. A realfinalizeCLI run wroteupdate: {installed: '0.14.0', available: '0.14.0', noticeRequired: false, source: 'network'}and printedFINALIZE PASS.test/skill.test.mjsandtest/finalize.test.mjspass.npm testwith Chromium only: before the final budget trim, 634 pass and 20 fail; the trim fixed the budget test, and the 19 left are the same ones that fail on untouched main in this container (17 WebKit cases with no WebKit installed, two sub-pixel toolbar overlaps from container fonts). CI runs all three engines.This touches the
finalizeverify-stage area next to #222. I'll merge #222 first and bring main into this branch before merging it.Generated by Claude Code