Skip to content

feat: STDSEED engine-neutral (G2) + root repo.meta.json (Phase B item 1)#13

Merged
rafael5 merged 3 commits into
masterfrom
stdseed-engine-neutral-g2
Jun 15, 2026
Merged

feat: STDSEED engine-neutral (G2) + root repo.meta.json (Phase B item 1)#13
rafael5 merged 3 commits into
masterfrom
stdseed-engine-neutral-g2

Conversation

@rafael5

@rafael5 rafael5 commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

STDSEED engine-neutral for the G2 gate; meta moved to root repo.meta.json (check-manifest updated).

rafael5 and others added 3 commits June 14, 2026 22:20
Remove STDSEED's bundled FileMan default filer (fileViaDie -> FILE^DIE),
the lone real below-waterline VistA reference in m-stdlib. The loader is
already engine-neutral (filer injected by string), so the `filer` argument
is now REQUIRED: load()/loadJson() raise the new ,U-STDSEED-NO-FILER, when
it is empty (checked before the file read / JSON parse).

This is the m/v waterline G2 decision (Option B, user-chosen 2026-06-14):
move the FileMan default up to the v layer rather than allow it as an
annotated G2 exception, so G2 stays a pure deny-list with no escape hatch.
A caller audit confirmed no real caller used the no-filer default.

- src/STDSEED.m: delete fileViaDie; raise U-STDSEED-NO-FILER on empty filer;
  doc/header/@raises/@example updated; orphan U-STDSEED-FILER-DIE-ERROR gone.
- tests/STDSEEDTST.m: TDD-red tLoadWithoutFilerRaises + tLoadJsonWithoutFilerRaises;
  inject a filer into the three loadJson validation-error tests (they relied
  on the default to reach the parser); scrub FileMan from test comments.
- dist/ regenerated (U-STDSEED-NO-FILER registered); module doc History +
  module-tracker row updated.

Verified: STDSEEDTST 37/37 on YDB + IRIS; core suite 49/2098/0 on YDB;
lint 0 errors; coverage 98.8%. Follow-up: re-home fileViaDie^VSLSEED in v-stdlib.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
751241c updated stdseed.md's frontmatter + intro + API table for the
engine-neutral (required-filer) change but left three sections stale:
the "default filer wraps FILE^DIE" paragraph, the error-codes table
(still listing the now-removed FILER-DIE-ERROR / NOT-IMPLEMENTED and
missing NO-FILER), and the History ("FILE^DIE runtime-only dep",
35/35). Bring all three in line with the committed source + manifest:
error table now matches dist/errors.json's 7 STDSEED codes exactly;
History records the fileViaDie removal + 37/37 dual-engine.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
`m arch check` reads the meta root-first, so m-stdlib's hand-edited meta moves
from dist/repo.meta.json to the repo root — the standardized "one meta artifact,
one location". Updated the `make check-manifest` gate to assert the root file,
and removed the stale "org catalog generator fetches dist/repo.meta.json by raw
URL" comment (no such generator exists; the future meta-gate reads root metas).

Verified: `m arch check .` resolves layer m from root + passes meta-shape
validation, 0 violations; `make check-manifest` clean. Rides this branch (the
m-stdlib Phase B PR) so it stays fully waterline-clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@rafael5 rafael5 merged commit fa6bd92 into master Jun 15, 2026
@rafael5 rafael5 deleted the stdseed-engine-neutral-g2 branch June 15, 2026 13:23
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