Skip to content

Quick code fixes from the sudoku findings (#5, #6, #7, #15, #17, #23) - #28

Merged
ako merged 1 commit into
mainfrom
fix/findings-quickfixes
Jul 25, 2026
Merged

Quick code fixes from the sudoku findings (#5, #6, #7, #15, #17, #23)#28
ako merged 1 commit into
mainfrom
fix/findings-quickfixes

Conversation

@ako

@ako ako commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Batch 2 of the sudoku findings: the contained code fixes.

# Fix Where
5 ALTER ENTITY with comma-separated add attribute clauses failed to parse (no viable alternative at input '9'). The real cause was a missing separator (alterEntityAction+), not the default — now alterEntityAction (COMMA? alterEntityAction)*. MDLParser.g4
6 An autonumber with no seed passed check then failed the build CE7247. New MDL023 (error) flags a seedless autonumber with fix autonumber default 1. ValidateEntity
7 An AutoX pseudo-type under a non-matching name (StartedAt: autocreateddate) is silently renamed to the fixed system member (CreatedDate) and can't be bound in a widget (CE1613). New MDL022 (warning) surfaces the rename + the unbindable-member trap. ValidateEntity
17 run -p <relative> failed with MxBuild's raw "should be an absolute path". Resolve with filepath.Abs first. cmd_run.go
15 / 23 A build failure in the run --watch loop (incl. SCSS errors like Expected expression. _x.scss 180:35) printed only the generic build failed: <message>, swallowing build.Raw (the full serve body the cold path already prints). Now the raw detail is surfaced in the watch output too. runlocal.go

Tests

  • TestValidateEntityAutonumberNeedsSeed, TestValidateEntityAutoMemberRename
  • bug-tests: f5-alter-entity-comma.mdl (positive), f6-autonumber-seed.fail.mdl (negative)
  • make check-mdl green; symptom-table rows added to fix-issue.md

Note: the #6/#7 doc examples (autonumber seeds, canonical AutoX names) are corrected in the docs PR (#26); the two PRs are consistent across merge order. (#3/#4/#8 were docs-only; #9-check was already correct — see #26.)

🤖 Generated with Claude Code


Generated by Claude Code

Five contained fixes surfaced by an end-to-end app build:

- #5  ALTER ENTITY with comma-separated `add attribute` clauses failed to parse
      ("no viable alternative at input '9'"). Root cause was a missing separator
      in the grammar (`alterEntityAction+`), not the `default` — now
      `alterEntityAction (COMMA? alterEntityAction)*`. (MDLParser.g4)

- #6  An `autonumber` with no seed passed `mxcli check` then failed the build
      CE7247 "Value cannot be empty". New MDL023 (error) in ValidateEntity flags
      a seedless autonumber with an actionable fix (`autonumber default 1`).

- #7  An AutoX pseudo-type declared under a non-matching name (`StartedAt:
      autocreateddate`) is silently renamed to the fixed system member
      (`CreatedDate`) and can't be bound in a widget (build CE1613). New MDL022
      (warning) in ValidateEntity surfaces the rename + the unbindable-member trap.

- #17 `mxcli run -p <relative>` failed with MxBuild's raw "should be an absolute
      path" error. Resolve with filepath.Abs before handing to MxBuild.

- #15/#23 A build failure in the `run --watch` loop (incl. SCSS compile errors)
      printed only the generic "build failed: <message>", swallowing build.Raw
      (the full serve /build body the cold-build path already prints). Now also
      print the raw detail so the real file:line surfaces in the watch output.

Tests: TestValidateEntityAutonumberNeedsSeed, TestValidateEntityAutoMemberRename;
bug-tests f5-alter-entity-comma.mdl (positive) and f6-autonumber-seed.fail.mdl
(negative). make check-mdl green. Symptom-table rows added to fix-issue.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JXnEgoc2NQP1Y2TWMCMXC4
@ako
ako merged commit 93086fb into main Jul 25, 2026
3 checks passed
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.

2 participants