Tree:
05eebe1750
master
v0.1a
${ noResults }
18 Commits (05eebe1750227eadce58e3ee1417c6d758982f45)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
05eebe1750 |
G-117 staging: per-member embedded artifact record (schema v1) in the kit-family trees
build905.zig: payload trees become per-member (shared content + the member's base/punkbin-artifact.toml embedded record - namespaced for G-025 coexistence, survives make.tcl kit wrapping). Record carries schema=1, artifact identity (name/-rN/variant/working_name/target), build_id (uuid-shaped sha1 digest of stable identity inputs - deterministic, zig-cache-friendly; correlation key, not integrity), origin (-Doriginurl, default punkbin repo url), packager (-Dpackager > env PUNKBIN_PACKAGER > git identity > unrecorded), project/ project_url (-Dprojecturl, default unrecorded), license summary, build_host_platform, [runtime] piperepl facts + batteries, [provenance] checkout uuids - with '#' comments on the non-obvious fields. sha1/size/built stay sidecar-only (embed-then-hash, no circularity). familyrev + checkout-uuid declarations hoisted to the staging section (records need them); wrap loop indexes per-member trees. Configure-compiled clean under pinned zig 0.16.0 (environ_map / StdIo lowercase API fixes). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
a7ca13bf53 |
suite_tcl90: tclvfs -> forTcl9 branch (1.5.0); version-derived vfs names; familyrev default 2
User direction: the BAWT-shipped tclvfs 1.5.0 comes from the forTcl9 branch of the same core.tcl-lang.org/tclvfs repo our trunk ref trailed at 1.4.2 - tcl9 suites move to it (a future suite_tcl86 keeps trunk; recorded in sources.config). Both flows updated: sources.config ref + build.zig.zon per-checkin tarball pin (75a2672991). build_tclvfs_shared.zig gets the G-107 derivation treatment: every version-derived name (package dir, dlls, rc fields, configured vfs.tcl/pkgIndex.tcl) now follows the checkout's AC_INIT via versionInfo() - the hardcoded 1.4.2 was the same stamped-mismatch class as the thread 3.0.1 case. build905 consumers use the derived info (szip staging, family staging, family_check args, artifact metadata). forTcl9 build glue: export guard is now lowercase BUILD_vfs; HAVE_SYS_STAT_H defined; and an include-order shim TU works around zig's mingw headers defining __stat64 as a MACRO for _stat64 - tcl.h's 'typedef struct __stat64 Tcl_StatBuf' parsed before <sys/stat.h> binds a forever-incomplete tag and forTcl9's direct Tcl_StatBuf field access fails (MSVC has a real tag; upstream never sees this; -include trips zig cc CacheCheckFailed, hence the generated-TU overlay). Verification: all three family members PASS self-containment with vfs 1.5.0 incl the functional zip-mount round-trip; tclvfs test gate PASS 51/42/9/0 twice-deterministic - the branch CLEARED the whole 1.4.2-era baseline (glob-nomatch drift entries now pass, network vfsFtp/vfsUrl now skip) - baseline re-established empty. familyrev default bumped to 2 (r1 published+immutable; r2 emitted locally + staged to the runtime store; r2 publication is a user decision). Wrapped kits confirm the resolution skew the user found is gone: punk9bi_beta script-mode 'package require vfs' now 1.5.0 (boot loads the runtime's copy - both tiers now agree). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
6a92d63cf5 |
G-103: runtime kit family assembly - kit-family + kit-family-artifacts steps, all members verified
suite_tcl90 now assembles and verifies the G-103 family as part of the default pipeline: - kit-family: two staging trees (core, bi) wrap into working-name products tclsh9.0.5.exe / tclsh9.0.5-punk.exe / tclsh9.0.5-punk-bi.exe under out/family. Attached image mirrors the installed prefix - tcl_library/ at the app root (stock C-boot position, no main.tcl - falls through to the interactive shell), tm tree at tcl9/<ver>, batteries under lib/ with their installed-shape pkgIndexes (../../bin -> /app/bin), dlls under bin/, plus a one-line stock pkgIndex hook at lib/pkgIndex.tcl extending auto_path (the tclPkgUnknown mid-scan growth mechanism tcllib's own index uses). - tools/family_check.tcl: per-member self-containment verification from a scratch dir with scrubbed env - patchlevel, zipfs tcl_library, tzdata/ encodings, attached tm modules, functional Thread (cross-thread eval), vfs zip-mount round-trip, tcllib md5 + tcllibc accel engaged, piperepl default-ON/opt-out per variant (::tclsh(istty) discriminator), Tk create/destroy + tklib for bi. All three members PASS. - kit-family-artifacts + tools/family_artifacts.tcl: punkbin-layout emission (immutable -r<N> names via -Dfamilyrev, per-artifact toml metadata with variant/sha1/versions/provenance/G-107 evidence, sha1sums.txt), run UNDER the plain family kit itself. punkbin publication stays a user step. - build_tclthread/build_tk return pkgidx+version facts; tclvfs configured package generation shared between prefix install and family staging; tm-module install list single-sourced; manifestUuid helper tolerates repos without the fossil manifest setting. - consumers: mapvfs.config entries punk9_beta (punk + punk9wintk905.vfs) and punk9bi_beta (punk-bi + punk9win_for_tkruntime.vfs); working names copied to bin/runtime/win32-x86_64 (untracked). src/runtime/AGENTS.md stale runtime.cmd references updated to punk-runtime (G-097). Full pipeline suite.tcl build PASS end-to-end; verification evidence recorded in the goal Progress section. Remaining: punk-runtime list/use metadata surfacing, kit-wrap trial of the new mapvfs entries. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
b5206fa7c4 |
suite_tcl90: -notfiles exclusion knob; Tk census excludes native-dialog files
The Tk opt-in census surfaced that the full suite cannot run unattended in
the batch/suite-built shell: winDialog.test (72 cases) and winMsgbox.test (19)
pop real OS dialogs whose message-injection automation does not drive them
here, so each blocks waiting on a human. The first attempt hung there and the
engine correctly reported no-totals/fail.
Adds a dedicated file-exclusion mechanism: tools/test_gate.tcl gains -notfiles
(a Tcl list of test-file globs passed to the driver as one -notfile list
value - a flat -testargs cannot carry a multi-file list through the option
chain, since -notfile takes a single list arg), and build905.zig gains a
per-library -Dtestnotfiles-<lib> knob defaulting to each LibSuite's
default_notfiles. tk defaults to excluding winDialog.test + winMsgbox.test so
its census completes hands-off; -Dtestnotfiles-tk="" re-includes them for a
manual interactive run. The exclusion is recorded in the evidence summary
(notfiles key). Empty for every other library (no behaviour change).
Verified: tk census now completes unattended (9865 run / 8127 passed / 1711
skipped / 27 failed, result pass; log shows winDialog/winMsgbox in the driver
skip list); thread gate still PASS with notfiles {} recorded.
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
|
1 week ago |
|
|
f5f2fe7d83 |
G-107: per-library testsuite steps with gate/record/skip policy tiers
The external libraries the suite builds and ships now run their own testsuites under the suite-built shell as named recipe steps - evidence for the exact zig-built combinations nobody upstream tests. tools/test_gate.tcl generalized into the shared engine: -mode gate|record (gate = parsed totals diffed against the tracked dispositioned baseline, the core-gate mechanism; record = run must complete, failures recorded not fatal), -driver selection (tcllib-family trees run via their own support/devel/all.tcl - sak's underlying driver, standard aggregate totals, per-file child interps), -summaryfile/-library line-record evidence summaries for the G-103 artifact-metadata consumer (shape documented in the goal detail file), file-error evidence capture (@+ blocks, runAllTests error-exit sections). A run with no parseable totals FAILS the step in every mode - infrastructure breakage must never masquerade as recorded results. Core gate semantics unchanged; the core gate step now also writes out/testreports/tclcore.summary. build905.zig: steps test-thread test-tclvfs test-tcllib test-tklib test-tk + composite test-libraries (tk excluded - opt-in: interactive desktop, maps windows, tens of minutes; intended before publishing bi-family artifacts). Per-library -Dtestpolicy-<lib>=gate|record|skip and -Dtestargs-<lib> invocation overrides - no recipe edits needed. Baselines staged in both flows (suite.tcl item list + bootstrap recipe_items). suite.tcl: test action takes -steps (default test-gate) and a -zigargs passthrough (both actions); passes -j1 so combined test invocations serialize (zig runs independent steps concurrently; thread's suite is timing-sensitive). Census results (suite tclsh90s.exe 9.0.5, zig 0.16.0): thread 143/0 failed, EMPTY baseline, GATE PASS x3 identical consecutive runs; tclvfs 51/7 failed, all dispositioned (3x tcl9 glob-nomatch semantics through vfs handlers, 4x dead-FTP network tests), GATE PASS x3 identical; tcllib WITH tcllibc accelerators engaged (E tcllibc markers, crc32-critcl-* variants running) RECORDED 62328/54 failed; tklib RECORDED 796/18 failed (widgetPlus drift under Tk 9). No-totals failure path verified in both modes. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
4d9c8a2626 |
G-102 follow-up: drop echo banner steps - scrubbed-env transitive failure
The five decorative 'echo --Installing package X--' addSystemCommand steps (2024-era) spawned 'echo' as a program - a cmd BUILTIN that only resolved when a coreutils echo.exe happened to be on PATH. In the PATH-scrubbed bootstrap environment the spawns failed and took the tm installs, install-libraries and (transitively) make-zipfs down with them - the reason the zip-wrapped shells never landed in scrubbed composite runs while every package step was green. zig's own step reporting makes the banners redundant. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
acc6ab409c |
G-102: build.zig entry shim; deterministic critcl target; zig pin in comptime gate
Three deltas surfaced by the PATH-scrubbed clean-checkout demonstration: - build.zig: default-entry re-export of build905.zig's build so the documented plain 'zig build stage|bootstrap' works from the tracked suite dir (the recipe keeps its versioned filename; staged flows still invoke it via --build-file). - critcl_zig.config + recipe: settings move under an EXPLICIT target (win32-x86_64-zig) and the tcllibc step passes -target win32-x86_64-zig. critcl otherwise chooses its build target by probing PATH for compilers - with a gcc visible the config defaults engaged (why G-098's flow worked), but the scrubbed environment fell back to critcl's builtin msvc 'cl' target and all 25 accelerator modules failed with "couldn't execute cl". Verified green in BOTH environments (scrubbed and normal PATH). - build905.zig comptime gate: the stale 0.13-dev minimum becomes the actual suite pin (0.16.0) with a message pointing at punk-getzig and the README (acceptance: the recipe records the zig version it is written against). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
e5db051389 |
G-102 M3+M4: post-tclsh phases as recipe steps; suite.tcl reduced to dev wrapper
The whole pipeline now lives in the zig recipe; Tcl remains the tool exactly
where a tclsh is guaranteed to exist - run by the FRESHLY BUILT suite shell
as build steps:
- New steps (native-host builds): smoke (static shell patchlevel; zip shell
patchlevel + attached tzdata/autoload), tklib / tcllib (their own installers,
batch, -pkg-path as a cached output dir installed into the prefix, + package
smokes incl withdrawn-Tk tooltip), tcllibc (critcl driving zig cc via the
tracked critcl_zig.config, module list parsed from tcllib's version.tcl,
pinned-zig dir prepended to PATH, + accel smoke), test-gate (tools/
test_gate.tcl - the parsed-totals gate vs expected_test_failures.txt,
-Dtestargs passthrough).
- Package landing moves into the recipe proper: thread pkgIndex.tcl
(build_tclthread), tk pkgIndex.tcl (build_tk), and the tclvfs script package
incl .in-template substitution + dll (build_tclvfs_shared
install_tclvfs_package) - all hooked to the install step.
- Step scripts: tools/test_gate.tcl, tools/suite_smoke.tcl, tools/pkg_smoke.tcl
(run under the built shell; assertions live in Tcl).
- Two windows-childproofing findings encoded: built-shell Runs execute the
CACHED artifact (no ../lib/tcl9.0 beside it) so each such Run gets
TCL_LIBRARY pointed at the source tree's script library (the zip smoke
deliberately excluded - its attached library is the thing under test); and
cached (non-side-effect) Runs spawn with stdout IGNORED, leaving the tcl
child without a stdout channel ('can not find channel named "stdout"',
critcl's logging) - such runs capture stdout to give the child a real pipe
while keeping caching.
- suite.tcl: thinned to the fossil dev flow - fetch live checkouts (git kind
now handled in the main loop for critcl's pin), stage the recipe, delegate
to the staged steps (run_zig_steps; 'test' delegates to test-gate). Default
-steps and the bootstrap default grow to the full pipeline short of
test-gate. critcl_zig.config + expected_test_failures.txt join both staging
lists. Docs updated (README two-flow section, sources.config two-surface
header, overlay section); .gitignore learns .zig-cache/ and zig-pkg/ (zig
0.16 extracts fetched packages into zig-pkg/ beside the manifest).
Verified (fossil flow): full pipeline PASS - suite_smoke static+zip, tklib
tooltip:2.0.4 under withdrawn Tk, tcllib md5/sha1/cmdline, tcllibc:2.0 with
md5-critcl-accel:1; 'suite.tcl test -testargs {-file http.test}' delegates to
the gate step (528/519/9/0 GATE PASS).
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
|
1 week ago |
|
|
51fc727fe2 |
G-102 M2: build.zig.zon pinned manifest + zig-native bootstrap staging
suite_tcl90 gains the no-tclsh source path: - build.zig.zon: content-hashed manifest pinning each source as a fossil per-checkin tarball (tcl 1a9c3b9d96 / thread caa1d3aa30 / tclvfs f082c47f9b / tk effef6c657 / tklib 2d53beafc0 / tcllib c784f6fda4 - the exact checkouts the promoted punk905 runtime was built from) plus critcl 3.3.1 as a github archive. All lazy: the fossil dev flow never triggers a fetch. Refresh = bump a pin (zig fetch --save). Verified honored under --build-file build905.zig. - build905.zig mode split: from the staged recipe copy the full graph registers as before; from the TRACKED suite dir (sources.config present, no ../tcl905) only the staging steps register. 'zig build stage' materializes pinned sources + a recipe copy into ../_build/<suite> (the same layout suite.tcl's fossil staging produces - both flows share the staged invocation, and the stage dir derives from the suite folder name so copy-and-tweak isolation holds). 'zig build bootstrap' chains the staged build: nested zig invocation with suite.tcl-parity cwd (parts of the recipe resolve sources cwd-relative), forward-slash prefix (the prefix flows into -DTCL_PACKAGE_PATH as a C string literal - backslashes broke the stubs compile), per-zig-version shared cache dir, hermetic-child env scrub, ReleaseFast default. - tools/stagetree.zig: host-compiled materializer. Pinned mode keys a .stage-materialized marker on the dependency's content-addressed cache path (pin bump = invalidation, stale trees deleted so orphans cannot survive); always-mode for recipe items; fossil/git checkouts at the destination are never touched (tested). Verified: 'zig build stage' against the fossil-populated stage refreshes only the recipe copy (checkouts untouched, fossil changes empty); a full copy-and-tweak suite copy (suite_tcl90zt) ran 'zig build bootstrap' from nothing but the tracked tree + pinned zig - all 7 sources fetched/staged from the manifest, all four shells built; tcl::build-info reports the same 9.0.5+1a9c3b9d... as the fossil-flow build and the zip shell boots its attached library (tzdata + autoload). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
84a1b22515 |
G-102 M1: suite_tcl90 configure-products as zig overlays; source trees read-only
Generation of the configure-products a fresh checkout lacks moves from suite.tcl tree-writes into the zig recipe as build-cache overlays: - tclUuid.h / tkUuid.h / threadUuid.h: wrapfiletofile Run outputs consumed via overlay include dirs added FIRST per module (stale tree copies from pre-G-102 flows can never shadow; the LazyPath also carries the step dep). The unused addUpdateSourceFiles tree-write variants (build905 prepare-source, build_tclthread) are removed. - tclsh.exe.manifest: configure-time substitution (tcl.h parsed by the new build_common.zig helpers); tclsh.rc compiled from an overlay COPY beside the generated manifest because rc resource references resolve rc-file-relative before include paths. Both tclsh exes switch to .include_paths LazyPaths. - wish.exe.manifest: overlay dir first in tk.rc include_paths (RT_MANIFEST resolves through rc include paths - the arrangement the tk build already relied on). tk.rc itself stays tree-compiled (lives in win/rc, no stale risk). - thread.rc: compiled from an overlay copy with the tcl.h include inserted (the historical checkout edit is normalized if a mutated tree is staged); the staged tclthread checkout's thread.rc edit has been fossil-reverted. - build905.zig: redundant configure-time top-level library install loop removed (install_library_tree already covers it); dead zlib stage copy and the suite.tcl generation blocks removed (read-only version parsing kept for smokes/logging). Verified: full staged-mode rebuild PASS (all smokes incl tklib/tcllib/tcllibc); built binaries carry the overlay products (tcl::build-info reports 9.0.5+1a9c3b9d..., tclsh manifest version 9.0.2.905, tk dll manifest + tk checkout uuid, thread dll uuid; thread dll's empty FileVersion matches the pre-change binary - upstream quirk). Source checkouts stay pristine (fossil changes empty). Core test gate: 69783 run, 12 failed - 11 baselined plus http-4.14.2, a network-timing flake that passes on isolated rerun (528/519/9/0). tclsh90sprzip.exe install into out/bin is currently blocked by an open user application holding the file; the product builds identically into the zig cache and installs on next run once released. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
5be8f2fb77 |
G-096 piperepl rebased onto 9.0.5, gate flipped to G-103 policy; tclsh90spr + tclsh90sprzip products, matrix PASS
The recovered 2024 TCLSH_PIPEREPL patch applies cleanly to current core-9-0-branch tclMain.c (8 hunks, offset 4). Tracked as patches/tclMain_piperepl_905.c = stock 9.0.5 + patch + gate-default flip: ENABLED unless TCLSH_PIPEREPL=0 (2024 was opt-in set-and-not-"0") per the G-103 punk-kit policy - the goal's Goal/Acceptance were aligned to that policy first at user request. Era files kept unmodified as recovered artifacts; patches/README updated (status, gate semantics, known tcl_interactive early-link divergence when the gate is open). build905.zig gains tclsh90spr (per-source construction mirroring tclsh90s with both tclMain compiles - unicode + TCL_ASCII_MAIN ansi - swapped to the patched file; stock products stay byte-for-byte unpatched) and tclsh90sprzip (zipfs_mkimg wrap of the pr exe, -infile form). patches/ added to suite.tcl's staged recipe items. Full suite build PASS. Behaviour matrix recorded in the goal: 9/9 stock-equivalence rows IDENTICAL (script-arg / script-consuming-stdin / piped-commands x unset/0/1 - open-gate plain scripts behave stock; unread piped payload never eval'd); feature row proves buffering verbatim into ::tclsh(inputbuffer) (write-trace capture), console reopen success and repl landing; =0 feature row identical to stock; przip variant identical to pr - the G-103 punk-kit precursor works. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
2 weeks ago |
|
|
df9fdbd1d6 |
G-098 test gate: parsed totals vs tracked baseline (GATE PASS); thread/registry/vfs runtime plumbing
suite.tcl 'test' is now a gate: full tcltest output logged, totals parsed (all.tcl's exit code does not reflect failures), failed test names compared against expected_test_failures.txt - unexplained failures fail the action; stale baseline entries are noted on full runs. Totals on core-9-0-branch 9.0.5 / zig 0.16.0: 67281 run / 55835 passed / 11435 skipped / 11 failed, GATE PASS, deterministic across two full runs. The 11 are dispositioned in the baseline: 6 fCmd (OS username vs profile-dir machine trait), 2 filename (admin-share self-globbing), 2 safe-stock (install-layout accessPath tokens), 1 console-bug-f10d91c2 (powershell driver yields empty result in batch context; semantics verified independently by G-076 kill procedure). Runtime package plumbing gaps closed (built artifacts without install wiring): thread pkgIndex generated (lib/thread3.0.1 -> bin dll), registry dll install artifact hooked to install-libraries (was orphaned - registry 1.3.7 + dde 1.4.6 now load), tclvfs script package installed with vfs.tcl + pkgIndex.tcl generated from .in templates (vfs 1.4.2 + vfs::zip 1.0.4). punkshell runtests under the suite runtime: checkbugs 5/5, opunk backends.test PASS (Tk-widget console suite runs unskipped on the suite-built Tk), repl consolebackends 2/3 - repl_console_backend_tkconsole open (code-interp console_pending_out junction init missing; DRIVER-DONE timeout-failsafe). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
2 weeks ago |
|
|
48a1d0a97f |
G-098 increment 3: tcllib installed; tcllibc via critcl 3.3.1 + zig cc; sha1 248x evidence
tcllib pure side via its own installer (explicit -pkg-path; driver now unsets TCLLIBPATH/TCL_LIBRARY/TK_LIBRARY for hermetic child shells after the default libdir followed inherited TCLLIBPATH to C:/TCLPKGS - additive pollution verified and removed). install-libraries now installs the whole tcl library tree (its own pkgIndex references msgcat/opt/... subdirs the piecemeal install missed). critcl pinned 3.3.1 (git) + tracked critcl_zig.config (zig cc -target x86_64-windows-gnu); driver replicates sak's direct critcl invocation over the 21 declared files -> tcllibc.dll at out/lib/tcllibc (provide 2.0). Evidence: md5 accel(critcl)=1; sha1 5MB critcl 12.3ms vs pure 3.06s (~248x) - the punkcheck hashing pain quantified and fixed. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
2 weeks ago |
|
|
440bd029d8 |
G-098 increment 1: hermetic fossil clone store (~/.punkshell/fossils) + Tk extension builds and smokes
Clone dbs are caches, not build output: punkshell-owned machine-level store at ~/.punkshell/fossils (independent of personal ~/.fossils, outside deletable _build dirs), read-only seeding from ~/.fossils, -repofolder / PUNK_FOSSIL_STORE override (registered in punk::config for 'help env'), -refresh pulls clones. Verified seed->open->build->smoke from empty store, then migrated + re-verified. Sources wired: tk core-9-0-branch (9.0.2, stale clone pulled current), tklib + tcllib trunk. build_tk/build_tk.zig (0.16 API): tcl9tk90.dll from stock sources per makefile.vc object inventory (+ xlib emulation set), ansi/UNICODE tkMain pair with forced -U ansi guard, CFG_* defines, win/rc/tk.rc with explicit rc include paths, oleaut32 et al; tk library -> lib/tk9.0 with driver-generated tkUuid.h, wish.exe.manifest and pkgIndex.tcl. SMOKE PASS: package require Tk -> 9.0.2, screen queried, widget packed/updated, clean destroy, in the suite-built tclsh90s. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
2 weeks ago |
|
|
4b87720328 |
G-096: zig 0.16.0 adopted - recipe ported to 0.16 build API, suite pin repointed, punk-getzig pin 0.16.0
The build016 experiment port lands in the tracked recipe (root_module/ createModule creation, addLibrary+linkage, .root_module.* method sweep, linkSystemLibrary options arg, array_list.Managed, Io.Dir dir-walks with b.graph.io, wrapfiletofile ported to the 0.16 entry/Io idiom). 0.14 support deprecated per user direction; 0.14.1 remains archived on punkbin. Verified on the pinned default (bin/tools/zig-x86_64-windows-0.16.0): build PASS, shells 9.0.5, tcl-test parity 557/357/200/0 identical to the 0.14.1 build. punk-getzig payload pins -> 0.16.0 (windows zip + linux tarball), re-wrapped checkfile ERROR-free, ps1 twin refreshed. punkbin commit 54714d7 holds the 0.16.0 archive; push pending gitea recovery (server currently 500s). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
2 weeks ago |
|
|
1664e9ba91 |
G-096: vqtcl/vlerq removed from suite; 'suite.tcl test' runs the Tcl core testsuite; tm names synced
vqtcl was an old-tclkit experiment with no confirmed public upstream - wiring, helper module, staging and docs removed (future tclkit work: TEMP_REFERENCE/ metakit + KitCreator). New 'test' action runs tests/all.tcl on the suite-built static shell with -testargs passthrough; verified assocd/util/lindex: 557 run, 357 passed, 200 constraint-skipped (no C test commands in a release shell), 0 failed. install-libraries tm filenames synced to the tree's provided versions (tcltest-2.5.11, http-2.10.2, platform-1.1.1) - the 2024-era names made 'package require tcltest' fail on a filename/provide version conflict. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
2 weeks ago |
|
|
a12cdcd2b8 |
G-096: suite pinned to official zig 0.14.1 (punkbin-hosted); recipe compat deltas keep dev.2074 working
Recipe: b.host -> b.graph.host; redundant second UNICODE tclMain add into the objs lib removed; exe's ansi tclMain compiled with -UUNICODE -U_UNICODE -DTCL_ASCII_MAIN (zig cc windows-default defines made it a duplicate UNICODE compile under 0.14.1 - lld duplicate Tcl_MainExW/commons). Driver: per-item recipe staging, per-zig-version local caches (.zig-cache-<ver>; caches must not be shared across zig versions), zig resolution -zig > PUNK_ZIG > pinned bin/tools/zig-x86_64-windows-0.14.1 > PATH. Verified: PASS on 0.14.1 AND regression PASS on 0.14.0-dev.2074; pinned-default no-option run PASS. Pinned archive minisign-verified and published to punkbin (abcd87c). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
2 weeks ago |
|
|
120f03085d |
G-096: suite_tcl90 - tracked zig recipe + driver build Tcl 9.0.5 end-to-end; piperepl patches recovered
First real buildsuite: build905.zig (verbatim G-076-validated recipe) + helper modules + tools, driven by suite.tcl which stages the recipe into src/buildsuites/_build/suite_tcl90, arranges sources (tcl fossil core-9-0-branch --nested with FOSSIL_HOME isolation; thread/tclvfs trunk; zlib from the tcl tree's compat/zlib; vqtcl from a local dir), generates the configure-products fresh checkouts lack (tclUuid.h, tclsh.exe.manifest, thread.rc include), builds and smoke-tests. Verified PASS: static + zip shells report 9.0.5 (checkout 1a9c3b9d96), Thread 3.0.1 builds from current trunk (new generated-include fix in build_tclthread) and loads. The 2024 TCLSH_PIPEREPL/tclZipfs/tclCmdIL patches are now tracked under suite_tcl90/patches with a semantics README (not applied by default builds). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
2 weeks ago |