Tree:
a7bc62c3fb
master
v0.1a
${ noResults }
3 Commits (a7bc62c3fb1ae2ec7b438444196a241c9c18d18e)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
a7bc62c3fb |
punk::libunknown 0.3.0: ::package override installs via commandstack (G-176 increment 2; project 0.63.0)
The ::package override (the 'epoch' subcommand and controlled 'forget') now installs via commandstack::rename_command -renamer punk::libunknown instead of the former 'rename ::package :📦:' + namespace-import mechanism. Both live ::package overrides (this and punk::packagepreference's) now share one managed stack whatever the install order - stack removals and third-party renames re-link correctly instead of operating on the wrong command (previously commandstack's ::package stack believed the packagepreference wrapper was live while libunknown's unmanaged import actually was; restore_original would have stranded :📦:). Migration deltas (exactly the set enumerated in the goal Context): - the override body runs at :: - the four bare epoch_incr_pkg/epoch_incr_tm calls are fully qualified (the old namespace-import execution context is gone) - the dead 'variable has_package_files' declaration dropped (its only use was already commented out; the module-load probe stays) - the two :📦: delegation sites (forget arm, default arm) now delegate via COMMANDSTACKNEXT; :📦: no longer exists (nothing in the tree called it) - init does 'package require commandstack' (a no-op when already provided - e.g whenever punk::packagepreference::install ran first, as in punkshell boot; resolvable via tm paths in every other real init context - bootsupport and the common vfs both carry commandstack-0.7.1) - re-entry guard is now a stack query for the punk::libunknown record (same 'already done' notice; the old ::punk::libunknown::package proc-existence check tested a proc that no longer exists) - init argdoc reworded; file renamed libunknown-0.2.4.tm -> libunknown-0.3.0.tm (git mv + fossil mv) with Meta/manpage/provide-block version updates and a changelog entry per the in-file bump procedure. Behaviour of every subcommand arm is unchanged: all increment-1 BEHAVIOUR pins in packageoverride.test passed byte-identically; only its four MARKED-TO-FLIP install-shape pins flipped as fenced (origin ::package, no :📦: residue, managed stack records - 1 solo, 2 in both packagepreference interop orders). discovery.test and packageoverride.test child interps now pre-source the source-tree commandstack by path (their tm paths are cleared); libsearch/shadowing children resolve commandstack via inherited parent paths and needed no changes. Two out-of-scope items recorded as open Follow-ons in the goal (Scope amendment needed if pursued): boot-site commandstack pre-sourcing (punkboot core.tcl / make.tcl / punk::repl / punk::lib child-seeding - to preserve the minimal-untracked epoch intent exactly) and make.tcl's 'info commands ::punk::libunknown::package' skip-guard modernization (old kits still satisfy it; switch to a package-provide check before or with the 0.3.0 bootsupport/kit promotion). Goal Scope mirrors updated to the new filename (rename anticipated in the Scope text). Project 0.62.2 -> 0.63.0 + CHANGELOG. Suites: libunknown tree + loadedlib 42/42; full modules tree 1346 total / 1335 pass / 11 constraint-skipped / 0 fail (zig-built tclsh90s 9.0.5); testbody_lint 1699 clean; goals_lint clean (80 active-index / 96 archived); make.tcl projectversion consistency OK (and that run itself exercised the bootsupport-0.2.4 transition path live). Claude-Session: https://claude.ai/code/session_01QgaxV27VZkmEec7oNbEVFc Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
5 days ago |
|
|
642fb265ea |
G-176 increment 1 + active flip: ::package override characterisation - the pre-migration safety net (packageoverride.test, 11 pins)
G-176 marked active (user-directed). New src/tests/modules/punk/libunknown/testsuites/discovery/packageoverride.test pins the CURRENT punk::libunknown ::package override ahead of the increment-2 migration onto commandstack::rename_command. BEHAVIOUR pins (must stay green byte-identically through the migration): 'package epoch tm|pkg' single-arg forms, indexed '<which> <index> ?key?' queries, the four error arms, the filtered forget arm (real-ifneeded forgotten, no-ifneeded filtered out, tcl/Tcl/tcl::oo/tk denied, mixed lists partially applied), abbreviation acceptance (ep/epo/epoc + fo routing, with the parked builtin's rejection of 'ep' pinned as the override's deliberate delta), delegation pass-through, and the re-init no-op contract (stderr notice captured via a child ::puts shim). MARKED-TO-FLIP pins (comment-fenced to the increment-2 commit and no other): the install shape (::package origin = the ::punk::libunknown::package namespace import; :📦: parked and functional) and the two-override packagepreference interop children in BOTH real-world install orders (punkshell's pkgpref-first: stack count 1 + import origin; make.tcl's libunknown-first: stack count 1 + ::package proc origin). Children are fresh interps sourcing the source-tree libunknown/commandstack/packagepreference by path via a shared highest-version locator (discovery.test pattern). All 11 pins green on the first run against the live implementation. Tests AGENTS.md index updated; goal file gains its Progress entry. testbody_lint 1699 clean; goals_lint clean (80 active-index / 96 archived); modules tree 1346 total / 1335 pass / 11 constraint-skipped / 0 fail (zig-built tclsh90s 9.0.5). Claude-Session: https://claude.ai/code/session_01QgaxV27VZkmEec7oNbEVFc Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com |
5 days ago |
|
|
b10abcbae0 |
G-176 drafted (proposed): commandstack doc integration - stack-tied overrider argdocs, override hints, libunknown package-override migration
Four-increment arc from the 2026-08-08 feasibility investigation:
(1) characterise the untested arms of the current punk::libunknown
::package override (epoch single-arg/indexed forms + error arms, the
entire forget arm, abbreviation acceptance, delegation, re-init guard,
packagepreference interop in both install orders; install-shape pins
marked to flip), (2) migrate that override onto
commandstack::rename_command (one managed stack for both live ::package
overrides - cures the restore_original/wrong-command latent hazard of
the current unmanaged mix), (3) rename_command -punkargs stack-tied doc
blocks (attach at the single rename site, detach at the remove_rename
choke point every removal path funnels through; stackdocs registered
namespace covers renames performed before punk::args loads), (4)
cmdhelp/cmdinfo override-in-place hint (G-166-style second axis, live
get_stack query, no hard dependency) + the flagship {::package epoch}
doc attachment and the commandstack::help how-to.
Investigation evidence embedded in the goal Context: probe-verified
space-form doc define/resolve/undefine/fallback cycle ('i package
epoch' resolves despite the parent's restricted choices - G-051
space-form jump), record-key append contract, undefine_deflist
primitive, no external :📦: callers, the dead
has_package_files declaration, both real-world install orders.
goals_lint clean (80 active-index goals / 96 archived).
Claude-Session: https://claude.ai/code/session_01QgaxV27VZkmEec7oNbEVFc
Assisted-by: harness=claude; primary-model=claude-fable-5; api-location=anthropic.com
|
5 days ago |