Browse Source

suite.tcl: materialize manifest.uuid in every fossil checkout (provenance completeness)

The published r1 artifact metadata recorded 'unrecorded' checkout uuids
for tclvfs/tcllib/tklib: fossil only writes manifest.uuid when the
REPOSITORY enables the versioned 'manifest' setting, which those
upstreams do not (tcl/tk/thread do). The checkout-scoped setting is
ours to control: 'fossil settings manifest u' materializes manifest.uuid
immediately and keeps it current across updates - now applied
idempotently to every staged checkout on each build. Verified on the
live stage (tclvfs f082c47f, tcllib c784f6fd, tklib 2d53beaf now
recorded); future emissions carry full provenance (r1 stays immutable
as published). Zon-flow tarballs share the upstream limitation - their
checkin uuids are derivable from the per-checkin pin URLs; recorded in
the comment as the not-yet-wired follow-up.

Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
master
Julian Noble 6 days ago
parent
commit
3ca7d1a8ad
  1. 11
      src/buildsuites/suite_tcl90/suite.tcl

11
src/buildsuites/suite_tcl90/suite.tcl

@ -230,6 +230,17 @@ proc fossil_source {name url branch dir} {
run fossil update $branch
cd $savedpwd
}
#provenance: materialize manifest.uuid regardless of the upstream repo's
#versioned 'manifest' setting (tcl/tk/thread enable it; tclvfs/tcllib/tklib
#do not - the G-103-era artifact metadata recorded 'unrecorded' for those).
#The LOCAL checkout-scoped setting 'u' generates manifest.uuid immediately
#and keeps it current across updates; idempotent on every build. (The zon
#bootstrap flow's tarballs share the limitation for those repos - checkin
#uuids there would come from the pin URLs; recorded, not yet wired.)
set savedpwd [pwd]
cd $dir
run fossil settings manifest u
cd $savedpwd
}
proc git_source {name url ref dir} {

Loading…
Cancel
Save