Skip to content

fix(engine): m test --docker layers the resident routine base (gtmroutines fallback)#8

Merged
rafael5 merged 1 commit into
mainfrom
docker-routines-base
Jun 16, 2026
Merged

fix(engine): m test --docker layers the resident routine base (gtmroutines fallback)#8
rafael5 merged 1 commit into
mainfrom
docker-routines-base

Conversation

@rafael5

@rafael5 rafael5 commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

m test --docker <vista> uses m-cli's internal DockerEngine, which exported ydb_routines="<stageDir> $ydb_routines". A GT.M-configured VistA (FOIA vehu) sets gtmroutines, not ydb_routines — so the export went stageDir-only and (GT.M honors ydb_routines over gtmroutines) the engine's resident VistA routines (XPAR, FileMan, XLFDT) vanished from the path → VistA-dependent suites faulted 0/0.

Fix: extract dockerEnvPrefix + fall back to ${ydb_routines:-$gtmroutines}. Bare YDB (m-test-engine) unchanged; GT.M VistA now resolves staged + resident routines. TDD red→green table test.

Validated: v-stdlib VSLCFGTST (XPAR config adapter) 0/0 → 3/3 GREEN on vehu (YDB) and foia-t12 (IRIS --namespace VISTA); m-test-engine regression 2/2; make lint + go test ./... clean. Unblocks all VistA-dependent VSL*TST testing (the DockerEngine analog of the m-ydb $ZGBLDIR fix).

🤖 Generated with Claude Code

…tines fallback)

DockerRunner exported `ydb_routines="<stageDir> $ydb_routines"`. For a bare YDB
image (m-test-engine) that is correct, but a GT.M-configured VistA (FOIA vehu)
sets `gtmroutines`, not `ydb_routines` — so the ambient `$ydb_routines` is empty,
the export became stageDir-only, and since GT.M honors `ydb_routines` over
`gtmroutines` once set, vehu's resident VistA routines (XPAR, FileMan, XLFDT)
vanished from the path. VistA-dependent suites faulted before report^STDASSERT
(0/0). (Globals were fine: docker.go never sets ydb_gbldir, so the ambient
gtmgbldir survives.)

Fix: extract `dockerEnvPrefix(stageDir)` and fall back to the GT.M name —
`ydb_routines="<stageDir> ${ydb_routines:-$gtmroutines}"`. Bare YDB unchanged
(ydb_routines set); GT.M VistA now resolves both staged and resident routines.
TDD red→green table test in docker_test.go.

Validated end-to-end: v-stdlib VSLCFGTST (XPAR config adapter) 0/0 → 3/3 GREEN on
BOTH engines via the driver stack — `m test --docker vehu` (YDB) and
`--docker foia-t12 --namespace VISTA` (IRIS, needed no change). m-test-engine
regression 2/2. make lint + go test ./... clean. Unblocks all VistA-dependent
VSL*TST testing (the m-cli DockerEngine analog of the m-ydb $ZGBLDIR fix).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@rafael5 rafael5 merged commit 69566a2 into main Jun 16, 2026
6 checks passed
@rafael5 rafael5 deleted the docker-routines-base branch June 16, 2026 09:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant