diff --git a/plans/agent-briefings/conformance-loop.md b/plans/agent-briefings/conformance-loop.md index 4d5a4ef0..f1fba18d 100644 --- a/plans/agent-briefings/conformance-loop.md +++ b/plans/agent-briefings/conformance-loop.md @@ -93,13 +93,21 @@ Blocked with specifics and move to the next candidate next iteration. - [~] js — excluded: foreign test262 .js fixtures vs .expected files (python escape, substring match) - [~] ocaml — excluded: scrapes lib/ocaml/test.sh (per-assertion epoch runner) + foreign .ml baseline - [~] smalltalk — excluded: scrapes lib/smalltalk/test.sh + walks foreign *.st corpus (per briefing) -- [ ] tcl +- [~] tcl — excluded: foreign *.tcl programs vs `# expected:` annotations (python escape, bash compare) (Mark `[x] — migrated N/N` or `[~] — excluded: ` or `[!] — blocked: `.) ## Progress log (newest first) +- 2026-06-07 — tcl: EXCLUDED (foreign-runner, like lua/js/forth) — and WORKLIST COMPLETE. + conformance.sh walks foreign lib/tcl/tests/programs/*.tcl files, reads each first line's + `# expected: VALUE` annotation, uses python3 to escape the Tcl source into an SX helper, + evaluates via (tcl-eval-string …), and string-compares got vs expected in bash. No SX + test suites, no SX counter/dict scoreboard — the driver can't drive a + foreign-program-vs-expected-annotation harness. Left conformance.sh untouched. Not migrated. + >>> A1 worklist now fully classified: 4 migrated (common-lisp, erlang, feed, go), + 5 excluded as foreign runners (forth, js, ocaml, smalltalk, tcl). Loop done. - 2026-06-07 — smalltalk: EXCLUDED (the briefing's own classification example — "smalltalk runs *.st via test.sh"). conformance.sh catalogs foreign lib/smalltalk/tests/programs/*.st programs, runs `bash lib/smalltalk/test.sh -v`, and