Browse Source

G-101 notes: launch-mechanism ladder + trial-kit naming convention (spike-validated)

Assisted-by: harness=opencode; primary-model=openrouter/moonshotai/kimi-k3; api-location=openrouter.ai
master
Julian Noble 6 days ago
parent
commit
25340047c3
  1. 26
      goals/G-101-tcl86-kit-container-strategy.md

26
goals/G-101-tcl86-kit-container-strategy.md

@ -68,3 +68,29 @@ wrap), and only worth activating once G-099/G-100 land.
delivering THAT payload shape (adjusted for 8.6 boot: no zipfs /app anchor -
the metakit/cookfs/zipvfs mount point plays the /app role and the hook
mechanism must be re-verified against 8.6's tclPkgUnknown).
- 2026-07-25: launch-mechanism ladder for Tk apps launched from Explorer/shortcuts
(spike-validated on punk91/punk86): (1) punkapp::hide_console stays dev-only -
SW_HIDE on the console HWND hides the whole terminal window under ConPTY/tabbed
terminals; (2) in-place FreeConsole + close/open-NUL std reassignment works on
8.6 and on stock 9.x + 9.0.x-era punk kits (Tcl installs the next created channel
into the vacated std slot - tclIO.c Tcl_CreateChannel; recipe `chan close stderr;
open NUL w` yields a channel auto-named stderr), but is currently blocked on the
9.1 kit by a boot-layer std-slot pin (investigation: G-120); (3) relaunch-self via
twapi::create_process -noconsole is the primary cross-generation mechanism (hidden
console, stdio + package require Tk verified working, no channel surgery; the
brief console flash is OS-unavoidable for console-subsystem exes; sign release
binaries against self-spawn AV heuristics); (4) a GUI-subsystem punkw-class
wrapper is the only zero-flash option (prior art: punkwish91.exe is a full
GUI-subsystem punk kit); DETACHED_PROCESS semantics are a trap (no std handles;
Tk load fails on Tcl 9). bgerror must be guarded or stdio repaired before detach:
punk::repl::bgerror writes stderr (silent output loss on 9.x post-detach; not
fatal on 9.1 per spike).
- 2026-07-25: trial-kit naming convention (user direction): the G-103 scheme holds
for 8.6 family runtimes - artifacts tclsh<dotted-patchlevel>[-punk[-bi]]-r<N>.exe;
during container trials the container tag rides the artifact modifier chain (e.g.
tclsh8.6.17-punk-cookfs-r1.exe / -mk4 / -zipvfs) and drops once the container
decision lands; kit names stay punk86-class. tclkit/tclkitsh naming is not revived
for punk-built artifacts (the -sh suffix implies a GUI sibling that will not
exist; current kit downloads already use bare tclkit for console builds). Any
future zero-flash launcher takes the w-suffix convention (punkw) rather than
-gui/-cli (which in kit lineage encode Tk linkage, not subsystem).

Loading…
Cancel
Save