Embedded-vs-sidecar record relationship (embed-then-hash; sidecar + sha1sums
stay the integrity authority; record survives kit wrapping), per-field
semantics incl origin's built-for-not-hosted-on meaning, packager's
declarative-not-verified status with minisign sidecars as the verification
complement, build_id as deterministic correlation key, and the comment-
documented extension point (G-116 tls fields extend v1). Also: stale
bin/runtime.cmd consumer reference corrected to bin/punk-runtime.cmd.
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
The default a no-name 'punk-runtime fetch' retrieves is a release
DECISION, so it lives on the artifact server as hand-curated data
(never generated) - updated in the same change-set that publishes the
artifact it points at, taking effect for every deployed punk-runtime
immediately with no punkshell release. src/build_sha1sums.tcl validates
entries (warns on unknown platforms / missing artifact files) so the
publish and the recommendation cannot drift silently.
Seeded from the values previously baked into punk-runtime's payloads,
with one correction those baked values got WRONG: linux-arm's actual
artifact is tclkit-9.0.2-Linux64-arm-dyn (dotted), not the baked
tclkit-902-Linux64-arm-dyn - a no-name fetch on linux-arm has been
broken until now, which is the config-in-code failure mode this file
removes. freebsd-x86_64 deliberately has no line (its only artifact is
a legacy 8.5-era kit, not a recommendation). Documented in AGENTS.md
Local Contracts with the release process.
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
Raw-file consumers (punk-runtime 'platforms -remote'; third-party mirrors
using this layout) have no directory-listing capability - platforms.txt
lists the served platform folders, one canonical punkshell platform-dir
name per line ('#' comments/blanks ignored). Generated and kept current
by src/build_sha1sums.tcl (rewrite-on-change, matching the sha1sums
behaviour); os_list extended with openbsd/msys per the punkshell platform
canon, and the skip-message stale-variable reference fixed ($f ->
$dirtail). Documented in AGENTS.md Local Contracts.
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com