Acceptance fully met: per-defect dispositions recorded, module tarjar-free,
suite green (punk91 7/7, tclsh90 7/7, punk86 6/7 with the 8.6 zipfs
limitation recorded per G-034), 0.1.6 re-vendored with suite passing,
tarjar-artifact dispositions user-confirmed (all five keeps, none deleted).
Index entry moved to GOALS-archive.md; sweep updates pending-tense mentions
in G-029/G-109/G-157 and pushes actionable findings to G-034 (redirect =
zero-dep load path; 8.6 vfs::zip dll-load measured) and G-110 (8.6
copy-to-temp datapoint). Detail-file rename to goals/archive/ follows as a
pure-move commit.
Claude-Session: https://claude.ai/code/session_0156PuejSCGjgeGb7jiABrDU
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
Pure-rename move goals/G-101-tcl86-kit-container-strategy.md ->
goals/archive/ (content edits landed in the prior commit); GOALS.md entry
-> GOALS-archive.md record (acceptance as achieved). Live-tier sweep:
G-131 Depends-on rewritten (the metakit arm now EXISTS - kithead step,
kithead.c/boot.tcl = the mk4 half of its detection; zipfs-backport open
items move there); G-130 both pending-tense sites updated (mk4 decided,
ix86 head = follow-on parity item 4); G-110 gains the measured
dll-from-vfs temp-copy fact; G-141/G-147 survey mentions gain achieved
markers; archived G-153 record+detail Scope path fixed (goals/ ->
goals/archive/, the sanctioned broken-path fix). xref report: no
unlinked pair loses its only bridge (annotated pairs are one-directional
with live links). goals_lint clean (82 active / 72 archived).
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
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
The prior note claimed no .tclsocache code survives, based on a grep whose
output was head-truncated - the user spotted .TclSoCache inside the vendored
tarjar-2.4.3.tm (itself a tar-format .tm). Corrected with the surviving
locations (vendored tm ~L746/L834, _aside + _build copies, unwrapped
loadscript, c:/tclmodules/main - which also holds the intermediate tarpack
generation) and the actual mechanism as design contrast: per-user
~/.TclSoCache keyed by IN-ARCHIVE PATH (not content), warn-but-load-stale on
size/mtime mismatch, retry-once concurrency. Path-key collisions and stale
loads are exactly what content-hash keying eliminates.
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
tarjar (modpod's tar-based predecessor) had a shared .tclsocache dll cache -
in-house prior art for the extraction-cache concept, though without content-hash
or collision handling; no code survives in current trees (grep-verified). Old
tarjar material at c:/tclmodules/main is preserve/partly-migrate, handled
manually by the user (explicitly not a goal) - tarjar artifacts are not
free-to-delete cruft.
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
Two goals split out of the modpod/TIP-741 characterization work, user-approved.
G-109 (libunknown manifest-declared multi-name discovery): a zip-based .tm
declares case-variant and sub-package require names in a manifest at a
well-known internal location, discovered by libunknown at scan time - with
real-disk scan performance preserved (worst-case parity with plain tclsh's
builtin tm handler; libunknown exists to fix slow-drive/large-tree scan cost).
Multi-name .tm are punkshell-only (documented); TIP 590 lowercase single-name
stays the plain-tclsh happy path; extensive-tests bar recorded.
G-110 (extraction cache investigation): whether per-run fresh-temp-dir copies
are necessary or replaceable by a single per-user content-addressed cache
(hash-keyed parent dir). Carries the 2026-07-21 sniff evidence: concurrent
sharing of one copy works; classic Win32 delete refused while mapped; POSIX-
semantics delete succeeds with mappings unharmed (a third option next to TIPs
741/709: unlink-after-load on modern NTFS). Fallback requirement recorded:
punkshell wants a win32/old-Windows fallback (industrial systems on isolated
VMs/old hardware) - capability-probe, classic-safe GC degradation. Precedents
(.NET single-file, critcl cache), sibling-dll sets, AV interplay, and the
cheapest-first implementation surfaces (modpod stub -> suite core patch ->
upstream) recorded.
G-066 note pointed at the new goals.
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com