@neocompose/cli 0.38.1 → 0.38.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,61 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.38.3] - 2026-08-27
4
+
5
+ ### Changed
6
+
7
+ - Require canonical localized-text identities for localizable values and
8
+ canonical split dialogue records for stored NeoScript checks. Retired inline
9
+ literal and aggregate-dialogue compatibility reads are no longer accepted.
10
+ - Build CLI member and dialogue backlinks with the same canonical link
11
+ identities used by web and server writes, removing the parallel link-shape
12
+ and upsert implementations that could drift during future schema changes.
13
+
14
+ ### Fixed
15
+
16
+ - Reject localized-text writes whose backlinks omit the canonical target
17
+ identity required by their link kind, instead of persisting an ownerless
18
+ link that later readers cannot resolve.
19
+ - Compile source-only nested value initializers when a local runtime first
20
+ reaches them. `neo test`, `neo script`, migrations, and dialogue dry runs now
21
+ share one dependency-scoped compiler capability for direct construction and
22
+ sparse virtual-instance expansion, including initializers that read their
23
+ class constructor parameters.
24
+ - Restore canonical localized-text backlinks when lowering NeoFlow node and
25
+ option prose while preserving existing translations and unrelated links.
26
+ - Emit localized-text sidecars for new variant values and retain them beneath
27
+ closed generic values without changing their identities.
28
+ - Emit an explicit `null` before kind-specific source serialization for an
29
+ optional stored member. Pulling nullable NeoDelegate values no longer enters
30
+ the delegate emitter with a null payload, while a malformed required-null
31
+ row still fails with a targeted diagnostic.
32
+ - Reject flags that `neo pull` does not implement instead of silently ignoring
33
+ them and performing a real pull; in particular, `neo pull --dry-run` now
34
+ fails with a usage error rather than changing the working copy.
35
+
36
+ ## [0.38.2] - 2026-08-27
37
+
38
+ ### Changed
39
+
40
+ - Read every stored class-value placement through one canonical sparse graph,
41
+ including constructor-settled aggregate arguments. The retired body-only
42
+ compatibility paths are gone, root-path and ownership readers now agree on
43
+ the same placement, and variant lowering builds that index once rather than
44
+ once per variant.
45
+
46
+ ### Fixed
47
+
48
+ - Resolve same-push root paths against the prospective class and member schema
49
+ while keeping an existing constructor's compiled action paired with its
50
+ durable argument signature. Inserting or reordering a constructor parameter
51
+ no longer binds stored argument ids to the wrong parameter by position.
52
+ - Preserve constructor-origin precedence through nested descendants. An
53
+ authored constructor subtree now wins over a declaration-default echo at
54
+ every depth without overriding a genuine authored member body.
55
+ - Reuse constructor settlement across required base constructors and base
56
+ initializer fields, so inherited aggregate arguments remain reachable and
57
+ lower to the same sparse graph as web and Unity readers.
58
+
3
59
  ## [0.38.1] - 2026-08-27
4
60
 
5
61
  ### Changed