@@ -6,7 +6,7 @@ This is the central engineering notebook for the RIDDL project. It tracks curren
66
77## Current Status
88
9- ** Last Updated** : February 5 , 2026
9+ ** Last Updated** : February 6 , 2026
1010
1111** Scala Version** : 3.7.4 (overrides sbt-ossuminc's 3.3.7 LTS default due to
1212compiler infinite loop bug with opaque types/intersection types in 3.3.x).
@@ -16,11 +16,13 @@ All workflow paths updated to `scala-3.7.4`.
1616` FlattenPass ` , multi-platform release workflow. Native macOS ARM64
1717binary distributed via Homebrew.
1818
19- ** RiddlLib Shared Trait (pending 1.5.0 release)** : Extracted cross-
20- platform ` RiddlLib ` trait from JS-only ` RiddlAPI ` . ` RiddlAPI ` is now
21- a thin JS facade delegating to ` RiddlLib ` . ` parseString ` returns
22- opaque Root handle; use ` getDomains() ` /` inspectRoot() ` accessors.
23- Fixed ` riddlLibJS/test ` ESModule crash. 1,527 tests pass (0 failures).
19+ ** Release 1.5.0 Published** : Extracted cross-platform ` RiddlLib `
20+ trait from JS-only ` RiddlAPI ` . ` RiddlAPI ` is now a thin JS facade
21+ delegating to ` RiddlLib ` . ` parseString ` returns opaque Root handle;
22+ use ` getDomains() ` /` inspectRoot() ` accessors. Fixed ` riddlLibJS/test `
23+ ESModule crash. 1,527 tests pass (0 failures). Published to GitHub
24+ Packages (Maven + npm). BREAKING: TS consumers must update
25+ ` parseString ` usage.
2426
2527** npm Package Published** : ` @ossuminc/riddl-lib ` published to GitHub
2628Packages npm registry via CI and locally. ESModule format with TypeScript
@@ -80,8 +82,15 @@ After all files pass, add riddl-models EBNF validation to CI
8082(` .github/workflows/scala.yml ` , mirroring existing riddl-examples
8183pattern).
8284
83- ### 1. Merge development to main for 1.3.0 release
84- Create PR from development to main, merge after CI passes.
85+ ### 1. Update Consumers for 1.5.0 Breaking Change
86+ ** Status** : Pending
87+
88+ ` parseString ` now returns opaque Root. Downstream projects that
89+ access ` result.value.domains ` directly must switch to
90+ ` RiddlAPI.getDomains(result.value) ` or
91+ ` RiddlAPI.inspectRoot(result.value).domains ` .
92+
93+ Projects to update: synapify, riddl-mcp-server, ossum.ai.
8594
8695### 2. Comprehensive TypeScript Declarations for AST & Passes
8796Expand ` riddlLib/js/types/index.d.ts ` to cover the full AST and Pass
@@ -295,11 +304,22 @@ fix riddlLibJS test runner crash.
295304` riddlLibJS/test ` now runs 8 tests successfully (was crashing).
296305
297306** Breaking Change** : ` parseString ` returns opaque Root. TypeScript
298- consumers must use ` getDomains() ` /` inspectRoot() ` . Ships as 1.5.0.
307+ consumers must use ` getDomains() ` /` inspectRoot() ` .
308+
309+ ** Release 1.5.0** (February 6, 2026):
310+ - Merged development → main, tagged 1.5.0
311+ - ` sbt clean test ` — 1,527 tests, 0 failures
312+ - JS bundle built, ESMSafetyTest clean pass (5.3MB scanned)
313+ - ` sbt publish ` — all modules to GitHub Packages (Maven)
314+ - ` gh release create 1.5.0 ` — triggers release.yml for native
315+ builds and homebrew-tap update
316+ - ` @ossuminc/riddl-lib@1.5.0 ` published to npm (GitHub Packages)
299317
300318** Commits** :
301319- ` 407aebdb ` — Extract shared RiddlLib trait and fix riddlLibJS
302320 test crash
321+ - ` 28c299b5 ` — Update CLAUDE.md and NOTEBOOK.md for RiddlLib
322+ shared trait
303323
304324** Files Created** :
305325- ` riddlLib/shared/src/main/scala/.../RiddlLib.scala `
@@ -312,6 +332,9 @@ consumers must use `getDomains()`/`inspectRoot()`. Ships as 1.5.0.
312332- ` riddlLib/jvm/src/test/scala/.../FlattenPassTest.scala ` —
313333 un-pended
314334
335+ ** Consumers to update** (parseString breaking change):
336+ - synapify, riddl-mcp-server, ossum.ai
337+
315338---
316339
317340### February 5, 2026 (FlattenPass, Release 1.4.0)
@@ -1464,5 +1487,4 @@ Tool(
14641487## Git Information
14651488
14661489** Branch** : ` development `
1467- ** Latest release** : 1.4.0 (February 5, 2026)
1468- ** Next release** : 1.5.0 (breaking: opaque Root in parseString)
1490+ ** Latest release** : 1.5.0 (February 6, 2026)
0 commit comments