Skip to content

Commit 324ec4d

Browse files
engalarclaude
andcommitted
fix: CI integration test failures
- Use mxbuild 11.6.4 in CI (matches widget templates, was 11.8.0) - Restore COLON? in MODIFY ATTRIBUTE grammar rule (lost during rebase) - Fix duplicate widget name when direct children exist with childSlots defined — skip auto-slot Phase 2 when applyChildSlots handles defaults Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 0d978bd commit 324ec4d

4 files changed

Lines changed: 5929 additions & 5879 deletions

File tree

.github/workflows/push-test.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ jobs:
1818
- name: Test
1919
run: make test
2020
- name: Setup mxbuild
21-
run: ./bin/mxcli setup mxbuild --version 11.9.0
21+
22+
23+
run: ./bin/mxcli setup mxbuild --version 11.6.4
24+
2225
- name: Integration tests
2326
run: make test-integration
2427
timeout-minutes: 30

mdl/executor/widget_engine.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -492,7 +492,7 @@ func (e *PluggableWidgetEngine) Build(def *WidgetDefinition, w *ast.WidgetV3) (*
492492
}
493493
}
494494
// Phase 2: Default slot — unmatched direct children go to first unmatched Widgets property.
495-
// Skip children already consumed by .def.json child slots (matched by type).
495+
// Skip if .def.json has childSlots defined — applyChildSlots already handles direct children.
496496
defSlotContainers := make(map[string]bool)
497497
for _, s := range slots {
498498
defSlotContainers[strings.ToUpper(s.MDLContainer)] = true
@@ -502,8 +502,11 @@ func (e *PluggableWidgetEngine) Build(def *WidgetDefinition, w *ast.WidgetV3) (*
502502
if matchedChildren[i] {
503503
continue
504504
}
505+
if len(slots) > 0 {
506+
continue // applyChildSlots handles both container and direct children
507+
}
505508
if defSlotContainers[strings.ToUpper(child.Type)] {
506-
continue // already consumed by applyChildSlots
509+
continue
507510
}
508511
widgetBSON, err := e.pageBuilder.buildWidgetV3ToBSON(child)
509512
if err != nil {

mdl/grammar/MDLParser.g4

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -704,8 +704,8 @@ alterEntityAction
704704
| ADD COLUMN attributeDefinition
705705
| RENAME ATTRIBUTE attributeName TO attributeName
706706
| RENAME COLUMN attributeName TO attributeName
707-
| MODIFY ATTRIBUTE attributeName dataType attributeConstraint*
708-
| MODIFY COLUMN attributeName dataType attributeConstraint*
707+
| MODIFY ATTRIBUTE attributeName COLON? dataType attributeConstraint*
708+
| MODIFY COLUMN attributeName COLON? dataType attributeConstraint*
709709
| DROP ATTRIBUTE attributeName
710710
| DROP COLUMN attributeName
711711
| SET DOCUMENTATION STRING_LITERAL

0 commit comments

Comments
 (0)