The avoid-mixing rule is no longer folklore: both co-causes are now
identified and pinned. Co-cause 1 is stock Tcl's $satisfied early return
suppressing the library scan (silent older-version selection under
prefer latest, order-dependent indexing). Co-cause 2 is the libunknown
0.2.2 namespace-context bug (fixed 0.2.3, pinned by
pkgindex_relative_namespace_is_global). The rule is substantiated for
stock Tcl and neutralised under the punkshell chain.
Updates:
- Goal: replaced open-ended 'substantiate or retire' framing with the
resolved finding; remaining work is the crossform characterization
suite and AGENTS.md guidance
- Context: removed 'folklore' characterization; presented the mechanism
as established knowledge with both co-causes
- Restructured Questions into Resolved (identified-mechanism findings
with reproduction table) and Still Open (same-version collisions,
package forget crossing forms, packagepreference interaction)
- Approach: references the new crossform suite complementing existing
shadowing/ and discovery/ suites; guidance deliverables named
- Notes: promoted the 0.2.3 bug fix from baseline note to co-cause
alongside the $satisfied mechanism; both explain the original folklore
- Identified mechanism section: restructured as two co-causes with
explicit consequences replacing the either/or framing
- Acceptance: tightened to enumerate the five characterization cases and
name the specific guidance deliverables
- Fixed typo: lllength -> llength in quoted stock Tcl source
Assisted-by: harness=pi; primary-model=anthropic/claude-sonnet-4-20250514; api-location=anthropic.com