Browse Source

goals: xref reconciliation - subshell/repl/args/textblock cluster (G-009 G-042 G-044 G-048 G-050 G-052 G-053 G-056 G-079 G-080 G-081 G-088, recorded 2026-07-24)

Assisted-by: harness=opencode; primary-model=openrouter/moonshotai/kimi-k3; api-location=openrouter.ai
master
Julian Noble 5 days ago
parent
commit
05ffa7ac19
  1. 4
      goals/G-009-themed-subshell-profiles.md
  2. 5
      goals/G-042-subshell-help-topics.md
  3. 4
      goals/G-044-repl-command-completion.md
  4. 7
      goals/G-048-textblock-table-punkargs.md
  5. 4
      goals/G-050-synopsis-validity-marking.md
  6. 3
      goals/G-052-oo-method-autodef.md
  7. 3
      goals/G-053-punkargs-multiple-ranges.md
  8. 8
      goals/G-056-punkargs-word-wrapping.md
  9. 8
      goals/G-079-renderspace-default-colour-semantics.md
  10. 7
      goals/G-080-ansi2html-cellgrid-mode.md
  11. 4
      goals/G-081-argdoc-build-pipeline.md
  12. 7
      goals/G-088-textblock-table-footer-subtitle.md

4
goals/G-009-themed-subshell-profiles.md

@ -47,6 +47,10 @@ needs the same push/pop lifetime.
- Depends on G-008 (state-set declaration/restore); applies aspects whose mechanisms are
G-003's deliverables (limits, hide/expose) and punk::island's - this goal binds them into
profiles, it does not re-implement them.
- G-043 relationship (recorded 2026-07-24 after overlap review): a themed profile is a
natural bundle of G-043's plugin composition (commandsets + help topics + config
defaults) plus the theme/restriction layer this goal adds - G-043 names this goal as
that bundle's consumer.
- Mapping a poshinfo scheme to concrete terminal state (which palette slots, fg/bg, prompt
segments) is an implementation-time design task within poshinfo/punk::repl; the goal only
requires that at least one underlying terminal aspect is driven by the scheme and correctly

5
goals/G-042-subshell-help-topics.md

@ -118,3 +118,8 @@ Implications adopted for this goal:
- Related session records: goals/archive/G-040-punkargs-choicealiases.md (choice display folding),
the 2026-07-08 CHANGELOG entries for punk 0.2.0 (registry) and punk::ns 0.1.1
(doc-lookup trace cleanup).
- G-043 relationship (recorded 2026-07-24 after overlap review): G-043 is the
subshell-definition plugin goal the "Relationship to the intended plugin facility"
section above anticipates - the ::punk::helptopic registry this goal builds is its
convergence point: plugin-provided (code-bearing) topics land in the same registry
under the same collision/shadowing policy.

4
goals/G-044-repl-command-completion.md

@ -81,6 +81,10 @@ arginfo principle: introspection must not run commands to elicit usage).
G-041 (form candidacy on partial input - consumed when available), G-040 (choice
alias resolution shared with the parser), G-042/G-043 (per-subshell provider
declaration), G-014 (configurable trigger/bindings and per-subshell defaults).
- G-050 relationship (recorded 2026-07-24 after overlap review): its per-word
validity API (goodarg/badarg marking) is the hint-display source this goal's
provider seam consumes - G-050 already names this goal as that API's future
consumer.
- xtal reference: https://tarray.magicsplat.com/xtal_lang.html - an alternative syntax
for Tcl (tarray project); an interactive xtal subshell is the concrete
language-subshell scenario the provider seam must not preclude.

7
goals/G-048-textblock-table-punkargs.md

@ -76,3 +76,10 @@ The `-return` option's `-choiceprefix 0` is enforced by punk::args::parse by con
- opts_table_defaults (L188-224) contains ~20 options including framing, ANSI base/border, show flags, and width limits. Not all may need full -type/-choices/-help documentation in phase 1 — the acceptance criteria requires at least the major ones (-title, -frametype, -show_header, -ansiborder) with the rest covered by a documented passthrough mechanism.
- The constructor has a special case at L454-456: a single-element args list is treated as a title. This must be preserved in the punk::args definition (likely via a @leaders form or a -default on -title with appropriate -min).
- Related audit items already fixed: console_fact_get/set (-choiceprefix 0), overtype renderspace/renderline (-choiceprefix 0), nav::fs::d/ (-choiceprefix 0), punkcheck::install (-choiceprefix 0), project::new (tcl::prefix::match added). This goal closes the last remaining audit item (#8).
- G-088 relationship (recorded 2026-07-24 after overlap review; this file previously
referenced no live goal): its footer block + bottom-edge subtitle extend the
constructor option set this goal's punk::args parsing validates - the new
-subtitle/-subtitlealign and footer options land in the same PUNKARGS block.
- G-056 relationship: if the textblock column-wrap mechanism is chosen there, its
wrap options join the constructor set this goal's PUNKARGS documents - the
conditional textblock scope in G-056 lands in this goal's validated option surface.

4
goals/G-050-synopsis-validity-marking.md

@ -43,3 +43,7 @@ string").
test::punk::args synopsis tests ("must be no leading space" convention) - marking must
be ANSI-only so ansistripped output stays stable, or those tests get a documented
update.
- G-052 relationship (recorded 2026-07-24 after overlap review): its method-level
autodef definitions render through the same synopsis machinery this goal makes
validity-aware - generated method docs get goodarg/badarg marking too when both
land.

3
goals/G-052-oo-method-autodef.md

@ -57,3 +57,6 @@ just not wired up as a general method-level (autodef) generation step in the doc
cmdwhich-notfound classification, no method-specific value). Refine here if this
goal's method-level autodef work warrants a distinct method cmdtype.
- Archived-goal references in this file: G-040 achieved 2026-07-08 (goals/archive/G-040-punkargs-choicealiases.md).
- G-050 relationship (recorded 2026-07-24 after overlap review): synopsis
validity marking (goodarg/badarg) applies to this goal's generated method
definitions via the shared renderer when both land.

3
goals/G-053-punkargs-multiple-ranges.md

@ -68,3 +68,6 @@ rendering gain meaningful bounded-repetition forms (e.g. "0-1", "2-4").
- The runtests `-include-paths` fix (repeatable, accumulate, single-list form still
accepted) shipped independently on 2026-07-10 and does not depend on this goal.
- Archived-goal references in this file: G-046 achieved 2026-07-10 (goals/archive/G-046-punkargs-deferred-help-and-fixes.md).
- Referenced by G-083 (argument relations - "folding into G-053" considered and
rejected there) and G-084 (-parsekey cross-member -multiple collection rides this
goal's occurrence arity) - recorded 2026-07-24 after overlap review.

8
goals/G-056-punkargs-word-wrapping.md

@ -57,3 +57,11 @@ the current table -maxwidth 80 default; an explicit width option overrides both.
- Characterization first: pin current no-wrap rendering of an over-width line
(overflow behaviour) before changing it, per the usual GAP-pin workflow.
- Archived-goal references in this file: G-046 achieved 2026-07-10 (goals/archive/G-046-punkargs-deferred-help-and-fixes.md).
- G-088 relationship (recorded 2026-07-24 after overlap review; neither file
previously referenced the other): its arg_error examples marker (bottom-edge
subtitle) and footer rows render through the same usage-table cells this goal
wraps - the marker text participates in split-only wrapping like any other
cell content.
- G-048 relationship: if the textblock table column-wrap mechanism is chosen, its
options land in the class::table constructor PUNKARGS G-048 authors - this goal's
conditional textblock scope and G-048's validated option surface meet there.

8
goals/G-079-renderspace-default-colour-semantics.md

@ -15,3 +15,11 @@ punknative generator): the `<pre>` backdrop is hard black so baked-black blends
this constrains doc page theming and leaves lighter antialiasing seams at half-block
edges against non-matching content. Proper fix is upstream in the renderer's
replay-code model, then a `-defaultbg`/`-defaultfg` mapping option in the G-078 api.
## Notes
- G-080 relationship (recorded 2026-07-24 after overlap review; the two previously
cross-referenced G-078 only): its cell-grid mode consumes the same default-colour
mapping - a never-set cell must render the consumer backdrop in cell-grid geometry
too, not a baked-black rectangle (the half-block decomposition makes baked
backgrounds doubly visible).

7
goals/G-080-ansi2html-cellgrid-mode.md

@ -16,3 +16,10 @@ box height is a font-metric browsers don't agree on (metric normalization was tr
rejected - see fontprep/README.md). Cell-grid emulation removes every one of those
degrees of freedom at the cost of heavier markup. Only worth building if/when the
accepted residual seams stop passing review - the glance test passes today.
## Notes
- G-079 relationship (recorded 2026-07-24 after overlap review; the two previously
cross-referenced G-078 only): default-colour preservation applies to the cell
grid too - the mode inherits G-079's mapping (never-set cells emit no baked
colour), so the two land coherently in the G-078 api.

4
goals/G-081-argdoc-build-pipeline.md

@ -15,4 +15,6 @@ comment blocks in source remain interim until this pipeline is validated, after
worthwhile prose migrates into punk::args blocks (original long-term plan). dtplite
validation infrastructure (bin/dtplite.cmd + dev doc.validate) is in place.
Related: G-075 (@package ids), G-078 (html api), G-079 (default colours), G-014/G-068
(argdoc/moduledoc workflows).
(argdoc/moduledoc workflows), G-055 (tclcore moduledoc regen - its regenerated
definitions are pipeline inputs alongside G-068's vendored companions; sibling
workflow whose output this renders).

7
goals/G-088-textblock-table-footer-subtitle.md

@ -47,3 +47,10 @@ Two deliverables, deliberately severable:
- An alternative interim considered and rejected: post-processing the rendered table in
arg_error by overtyping the last border line - workable but puts frame-drawing
knowledge in a consumer; the table class is the right owner.
- G-048 relationship (recorded 2026-07-24 after overlap review; this file previously
referenced nothing): the footer/subtitle options extend the same class::table
constructor G-048 parses via punk::args - the new options land in its PUNKARGS
block, covered by the shared passthrough documentation.
- G-056 relationship: the bottom-edge subtitle and footer cells flow through the same
table renderers G-056 wraps; the examples-marker text participates in word
wrapping like any other cell content.

Loading…
Cancel
Save