test: run change refresh doctype fixture in CI#458
Conversation
AI Code ReviewCritical Issues
Moderate Issues
Minor Issues
What Looks Good
Recommendation Automated review via OpenRouter (Nemotron Super 120B) — workflow source |
Symptom: all open PRs against main failed the shared build-and-test job in make test-integration, even when their local build/test/lint validation passed. The failures reproduced on origin/main, so they were baseline CI instability rather than PR-specific regressions. Root cause: TestWatcherDebounce could allow stale timer callbacks to send an extra message under slow scheduling, nanoflow integration fixtures used MDL syntax that no longer matched the grammar, and the doctype mx-check harness did not classify known page/nanoflow showcase consistency errors as expected limitations. Fix: guard watcher debounce callbacks with a generation counter, tighten the watcher burst test, update nanoflow fixtures to current MDL syntax, and extend the known consistency-error allowlist for showcase-only limitations. Tests: make build Tests: go test ./cmd/mxcli/tui -run TestWatcherDebounce -count=20 -v Tests: ./bin/mxcli check mdl-examples/doctype-tests/02b-nanoflow-examples.mdl Tests: go test -tags integration -count=1 -timeout 30m ./mdl/executor -run 'TestRoundtripNanoflow_(Loop|EnumParameter|Annotations)|TestMxCheck_DoctypeScripts/02b-nanoflow-examples.mdl|TestMxCheck_DoctypeScripts/03-page-examples.mdl' -v Tests: make test Tests: make lint-go Tests: make test-integration
The change refresh modifier example used a .test.mdl suffix, so the doctype fixture runner skipped it even though review feedback expected it to be part of CI coverage. Rename the fixture to .mdl and update the proposal reference so the existing doctype integration test discovers the example. Tests: - make build - ./bin/mxcli check mdl-examples/doctype-tests/change_refresh_modifier.mdl - go test ./mdl/executor -run 'ChangeRefresh|RefreshInClient' -count=1 - make test
257a88f to
72a3c7f
Compare
|
CI stabilization note: merged #412 into this branch so it uses the same integration-CI baseline as the rest of the active PR set. |
AI Code ReviewCritical IssuesNone found. Moderate IssuesNone found. Minor Issues
What Looks Good
RecommendationApprove. The changes are well-scoped, validated, and improve both test reliability and code robustness. Minor concerns about atomicity are outweighed by the simplicity and safety of each individual change. Automated review via OpenRouter (Nemotron Super 120B) — workflow source |
Symptom: CI failed in TestMxCheck_DoctypeScripts/empty_java_action_argument.mdl because a Java action declared as RETURNS Void was written as an entity return type named .void, and Studio Pro reported CE1613. Root cause: the generic data-type visitor treats bare qualified names as entity/enumeration references. Java action return types reused that generic path, so the explicit Void spelling became a qualified name instead of ast.TypeVoid. Fix: add a Java-action return-type wrapper that maps unqualified Void to ast.TypeVoid while leaving generic data-type parsing unchanged for parameters and attributes. Tests: added visitor coverage for explicit RETURNS Void; verified mxcli check for the doctype fixture and the targeted integration subtest that failed in GitHub Actions.
AI Code ReviewCritical Issues
Moderate Issues
Minor Issues
What Looks Good
RecommendationApprove. The PR successfully resolves the fixture discovery issue while improving test reliability and code robustness. All changes are well-scoped, tested, and align with project practices. No checklist violations detected. Ready for merge. Automated review via OpenRouter (Nemotron Super 120B) — workflow source |
Summary
change_refresh_modifier.test.mdltochange_refresh_modifier.mdlso the doctype fixture runner discovers itCloses #457.
Validation
make build./bin/mxcli check mdl-examples/doctype-tests/change_refresh_modifier.mdlgo test ./mdl/executor -run 'ChangeRefresh|RefreshInClient' -count=1make test