@neocompose/cli 0.62.1 → 0.63.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neocompose/cli",
3
- "version": "0.62.1",
3
+ "version": "0.63.0",
4
4
  "description": "Neo Compose native project-source CLI with bidirectional sync.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -9,7 +9,7 @@ description: >-
9
9
  `@neocompose/cli` or `node cli/bin/neo.mjs` in the neo-compose repository.
10
10
  ---
11
11
 
12
- <!-- reviewed-through-cli: 0.62.1 -->
12
+ <!-- reviewed-through-cli: 0.63.0 -->
13
13
 
14
14
  # Neo Compose CLI
15
15
 
@@ -110,7 +110,7 @@ wrappers.
110
110
  The marker near the top of `SKILL.md` must exactly match the package version:
111
111
 
112
112
  ```html
113
- <!-- reviewed-through-cli: 0.62.1 -->
113
+ <!-- reviewed-through-cli: 0.63.0 -->
114
114
  ```
115
115
 
116
116
  The quoted version above is checked too, so this instruction cannot go stale
@@ -314,3 +314,17 @@ CLI pins the deployment through the authenticated app origin before sending it
314
314
  a session token.
315
315
  Results pin the workspace to that transaction's hash, so a concurrent later commit still
316
316
  requires a pull before another push.
317
+
318
+ ## Test execution
319
+
320
+ `neo test` compiles unpushed production source and validates the candidate graph.
321
+ It does not perform the additional source serialization round trip that
322
+ `neo push --dry-run` uses. Invalid production source still stops test execution.
323
+ Unchanged project and spec inputs reuse content-addressed local caches.
324
+
325
+ Spec files run in parallel using up to four available CPU workers. Set
326
+ `test.maxWorkers` in `neo.json`, override it with `neo test --maxWorkers <n>`,
327
+ or use `neo test --runInBand` to run serially. Each file preserves hook and test
328
+ order; fixtures and mocks stay isolated. Reports retain discovery order.
329
+ Parallel test work is summed across workers and can exceed elapsed execution;
330
+ JSON `timings.executeMs` and `timings.workerStartupMs` give elapsed phase times.
@@ -105,6 +105,12 @@ Use context-aware typed annotations:
105
105
  explicitly stored. A packed subtree shares its parent's document-size limit,
106
106
  so a write that would exceed the hard limit fails instead of falling back.
107
107
  `.Packed` is rejected on a List whose `listKind` is unordered.
108
+ - `@effect` only on a class member function. The Unity runtime runs it for
109
+ every live instance and reruns it whenever data it read changes; the web
110
+ editor, `neo test`, and dry runs never run effects. It must be an immediate,
111
+ parameterless `void` instance function with a NeoScript or abstract body.
112
+ An override without the annotation inherits; `@effect(kind: .None)` stops
113
+ an inherited effect. Use it instead of polling or relaying changes by hand.
108
114
 
109
115
  Use numeric literals for numeric limits. Keep annotations separate instead of
110
116
  inventing a generic metadata bag.