Tree:
4aae330b31
master
v0.1a
${ noResults }
7 Commits (4aae330b315a35f74e6ae7c8c9b9b7d0b9f8fa9b)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
f89bd58c31 |
G-100 achieved: suite_tcl86 dependency set (Tk 8.6, tklib, tcllib + tcllibc) and an 8.6 runtests census
Extends the 8.6 buildsuite with the remaining pieces punkshell's Tcl 8 testing
depends on, all built from source with the pinned zig 0.16.0 toolchain only.
Tk 8.6.17 (build_tk86/build_tk86.zig) is a RE-DERIVATION from the staged 8.6
win/makefile.vc + rules.vc, not a port of suite_tcl90's build_tk.zig:
- no generic/tkPkgConfig.c in 8.6 -> no CFG_* defines at all
- rules.vc TCL_MAJOR_VERSION==8 arm -> tk86t.dll + lib/tk8.6 (vs tcl9tk90.dll)
- @TK_WIN_VERSION@ substitutes $(DOTVERSION).0.0, not the tcl-style
<dotversion>.<releaselevel>.<patchlevel> formula
- 8.6 TKOBJS carries no tkIcu/tkImgListFormat/tkImgSVGnano/tkWinGDI/tkWinIco/
tkWinSysTray; XLIBOBJS is a first-class makefile macro here (the 9.0
derivation had to recover those files by hand)
USE_TCL_STUBS + USE_TCLOO_STUBS against libtclstub86.a is the stock rules.vc
arrangement and keeps the dll loadable by both suite shells. tkMain.c is
compiled twice per makefile.vc, the ansi copy forced with -UUNICODE/-U_UNICODE
(verified the pinned zig cc defines neither for x86_64-windows-gnu, so the 8.6
core's ANSI/TCHAR arrangement is matched exactly).
tklib 0.9 and tcllib 2.0 install via their own installer.tcl (batch, packages
only, explicit -pkg-path so the installer's tcl_pkgPath-derived default can
never write off-tree); tcllibc is built by critcl 3.3.1 driving zig cc (tracked
critcl_zig.config, target pinned win32-x86_64-zig - critcl otherwise probes PATH
and falls back to its builtin msvc target). critcl compiles against its own
bundled headers chosen by the driving shell's version, which is why one config
serves both generations.
New evidence tools, run on every build:
tools/tk_smoke.tcl maps a real toplevel with classic + themed widgets,
updates, then destroys it - a load-only check passes
even with no usable display
tools/accel_bench.tcl same payload through sha1's critcl and pure-Tcl
implementations with the digests compared:
4MB -> critcl 5.7ms vs pure-tcl 2736ms = 477x
Test tiers (G-107 policy pattern): test-tcllib/test-tklib on the record tier
inside test-libraries, plus an opt-in test-tk (winDialog/winMsgbox excluded by
default - their message-injection automation blocks on a human under a batch
shell). First censuses on tclsh86ts.exe 8.6.18:
thread 142 run / 0 failed GATE PASS
tklib 796 run / 0 failed record
tcllib 64259 run / 41 failed record (names in the summary artifact)
tclvfs 51 run / 4 failed GATE PASS after baseline extension
The tclvfs baseline grew vfsFtp-1.1..1.3: they sit behind an 'ftp' constraint
needing tcllib's ftp package - absent at the G-099 capture, satisfied now that
the suite installs tcllib - so they run and reach the retired ftp.tcl.tk, the
same external-service class already baselined for vfsUrl-1.2/2.1.
punkshell runtests census (both runs 2026-07-26, identical flags, default
single-process sequential - 8.6 has no tcl::process so -jobs re-convoys):
native Tcl 8.6.17 1003 total / 986 passed / 10 skipped / 7 failed
suite tclsh86ts 1003 total / 987 passed / 10 skipped / 6 failed
runtests_parity.tcl finds exactly ONE difference: punkcheck
concurrency_two_writers_no_corruption failed in the BASELINE run and passed on
the suite runtime - a full-suite-load flake (6/6 twice in isolation on both
runtimes). Zero suite-runtime-only failures. Tk-dependent suites ran unskipped
(repl consolebackends 3/3, including the tkconsole backend on the suite Tk).
Two defects fixed in passing:
- scrubTclEnv never cleared TCL<major>_<minor>_TM_PATH, so suite shells
silently preferred machine/repo tm modules over what the suite had just
installed (a repo-built sha1-2.0.4.tm shadowed tcllib's 2.0.5, md5 2.0.8
shadowed 2.0.9) - any census through such a shell measures the machine. The
scrub list now covers TCL8_0..8_7 + TCL9_0/9_1 in all three sites (per-step,
suite.tcl process-level, bootstrap nested build). suite_tcl90 has the same
exposure via TCL9_0_TM_PATH and is deliberately untouched here (out of this
goal's scope) - pointers recorded in G-108 and G-116.
- build.zig.zon's .fingerprint was hand-authored, so 'zig build' from the
tracked suite dir died with 'invalid fingerprint' - the no-tclsh bootstrap
flow could never have run. Corrected to zig's computed value (its low half
is a checksum of the package name); 'zig build stage' now verified.
Goal flipped to achieved 2026-07-26 and archived; reference sweep updated G-005,
G-101, G-105 and ARCHITECTURE.md, and the archive-time xref pair G-101 <-> G-116
(whose only bridges were the archived G-100/G-103) gained a direct Related
pointer. No project-version bump - arm's-length build tooling, not shipped shell
behaviour.
Assisted-by: harness=claude; primary-model=claude-opus-5[1m]; api-location=anthropic.com
|
4 days ago |
|
|
b3a86ec766 |
make.tcl window achieved: G-113 + G-112 + G-104 flips, archives, reference sweep
Acceptance evidence recorded in each detail file before the content-identical archive moves: - G-112: fresh-rebuild bake products BYTE-IDENTICAL to pre-rename vfs products (punk91 zip-wrap + punk86 kit-wrap; vacuous punkcheck-skip pass caught and redone), vfslibs phase runs inside bake, aliases + bakehouse dirty-refusal verified live, docs/layout copies swept, punkexe suites 54/0 green. - G-113: zero-ESC piped on tclsh90 + punk kit + 8.6, force overrides, real Windows-console and WSL-pty mode=tty evidence, maketclcolour.test green; manual-visual note recorded. - G-104: list/info/build + self-description contract verified incl. a copied tree; punk-kit hosting; docs in place. Sweep: G-005/G-018/G-035/G-047/G-099 pending-tense references rewritten with archive pointers; forward-notes pushed to G-108/G-061/G-105; G-099<->G-108 re-bridged with a direct Related line (their bridges were all archived). Also: tclsh9.0.5-punk working runtime re-materialized to r2 (stale local materialization exposed by the window's bake - G-118 piperepl pins green again). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
5 days ago |
|
|
a015ada542 |
G-117 achieved: flip, archive, reference sweep; reopened pin; G-118 items 1+7 verified
Acceptance evidence in the archived detail file: embed verified in all three family members (family_check), sidecar derived from embed with identical build_id, 'info' identifies sidecar-paired/renamed-stray/pre-v1 files without execution and flags doctored-sidecar disagreements, punkbin AGENTS.md schema docs, roundtrip pin green, record survives make.tcl kit wrapping (punk9_beta reads its runtime's r2 record in-kit), r2 re-emitted with full v1 records. Sweep: achieved markers in G-025/G-057/G-108/G-116/G-118/G-119 (G-025's survival expectation updated to confirmed). tclshcmd.test pins ::tclsh(reopened) publication on the rebuilt patched kits (G-118 items 1+7 landed+verified; Progress updated). build905.zig: packager git-identity leg judges success by output not out_code (resolved 'unrecorded' on this host - effective at next emission). Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
7 days ago |
|
|
9ebc10ffa5 |
goals: xref reconciliation - buildsuite/zig/binary-provenance cluster (G-005 G-006 G-099 G-100 G-104 G-105 G-108 G-110 G-114 G-116 G-117, recorded 2026-07-24)
Assisted-by: harness=opencode; primary-model=openrouter/moonshotai/kimi-k3; api-location=openrouter.ai |
7 days ago |
|
|
49f14060e1 |
G-103 achieved: runtime kit family - flip, archive, reference sweep (wrap trial PASS)
Final acceptance item closed by the punk9_beta/punk9bi_beta kit-wrap trial (user go-ahead; quiet tree): make.tcl project wrapped both kits over the family runtimes (the user's own earlier same-day build agreed - punkcheck no-change), and probes UNDER each kit verified 9.0.5, //zipfs:/app/tcl_library, PIPEREPL MACHINERY PRESENT, Thread 3.0.7 winning over the vfs payload's legacy thread3.0.1, vfs/tcllib/tcllibc engaged, punk::args from the vfs side, and Tk create/destroy in both - punk9bi_beta's Tk necessarily from the runtime's attached image (punk9win_for_tkruntime.vfs carries none). Every acceptance clause is now met; evidence recorded in the detail file. Flip mechanics: Status achieved 2026-07-22; detail file to goals/archive/ (content-identical move after edits); index entry to GOALS-archive.md; reference sweep across 13 live goal files (archive markers per the G-058 precedent - non-contract text only, Scope lines untouched; pending-tense updates in G-099 arc-unblocked, G-108 family production landed, G-018/G-023 naming-authority pointers). Forward pointers pushed to live goals: G-101 (8.6-family deferral target), G-067 (family -rN artifacts exist; publication user-gated with the defaults.txt flip process). Flagged (completion report): tcltls bi-battery line loses its goal home with this archive - candidate goal on request; punk9wintk905.vfs legacy thread3.0.1 payload cleanup can ride a future payload refresh; beta promotion is the user's interactive trial per the *_beta convention. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
d090f1da7c |
G-107 achieved: buildsuite library test runs (record/gate external testsuites)
All six acceptance clauses satisfied (suite tclsh90s.exe 9.0.5, zig 0.16.0, machine superbee): thread 143/0 + tclvfs 51/7 GATED with tracked dispositioned baselines, deterministic across consecutive full runs; tcllib 62328/54 WITH tcllibc accelerators engaged + tklib 796/18 RECORDED with artifact paths in the detail file; tk opt-in step with a recorded first census (9865/27, native- dialog files excluded by default); per-library policy/testargs/notfiles overridable at invocation; no-totals fails the step in gate AND record mode (verified); evidence-summary shape documented for the G-103 metadata consumer. Flips G-107 active -> achieved and archives it (index entry to GOALS-archive.md, detail file to goals/archive/). Reference sweep: G-103 Notes gain the thread- payload-refresh forward-pointer (the suite now derives thread naming from the checkout; the punk905 kit payload still carries the old 3.0.1 copy) and the evidence-summary-shape pointer; G-108 Notes record that its constrained-test runs reuse G-107's test_gate generalization + -notfiles knob. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |
|
|
70b3f930a2 |
G-108 proposed: debug buildsuite tier (tcl::test runtimes, -dbg<n>, recorded constrained-test runs)
Index entry + detail file for a debug tier of suite_tcl90: build debug-flavoured runtimes (NDEBUG off / tcl::test compiled in; deeper tier adds TCL_MEM_DEBUG for the script-level memory command), named with a trailing -dbg<n> suffix, and run the core suite's normally skipped C-test-command-constrained tests in record mode (never gated). Kit-family debug members coordinate with G-103; the TCL_MEM_DEBUG all-or-nothing linking constraint drives the feasibility item. Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
1 week ago |