@neocompose/cli 0.31.13 → 0.31.14

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,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.31.14] - 2026-08-18
4
+
5
+ ### Fixed
6
+
7
+ - Accept code-only sparse NeoScript function overrides while reading local
8
+ pre-compilation candidates, without relaxing stored document validation.
9
+
3
10
  ## [0.31.13] - 2026-08-18
4
11
 
5
12
  ### Fixed
package/dist/neo.mjs CHANGED
@@ -43263,9 +43263,38 @@ function isMemberOverrideProps(value) {
43263
43263
  function isMemberOverride(value) {
43264
43264
  return isMemberOverrideProps(value);
43265
43265
  }
43266
+ function isUncompiledMemberNSFunctionOverride(value) {
43267
+ const v = value;
43268
+ if (!isMemberOverrideBase(value)) return false;
43269
+ if (v.kind !== 23 /* NSFunction */) return false;
43270
+ if (typeof v.id !== "string") return false;
43271
+ if (typeof v.projectId !== "string") return false;
43272
+ if (!isEpochMillis(v.createdAt)) return false;
43273
+ if (!isEpochMillis(v.updatedAt)) return false;
43274
+ if (v.valueId !== void 0) return false;
43275
+ if (v.returnTypeInfo !== void 0) return false;
43276
+ if (v.argumentTypes !== void 0) return false;
43277
+ if (v.deferred !== void 0) return false;
43278
+ if (v.getter !== void 0) return false;
43279
+ if (v.setterCode !== void 0) return false;
43280
+ if (v.setter !== void 0) return false;
43281
+ if (v.action !== void 0) return false;
43282
+ if (v.required !== void 0 && v.required !== false) return false;
43283
+ if (v.defaultValue !== void 0 && v.defaultValue !== null) return false;
43284
+ if (v.storageKey !== void 0 && v.storageKey !== null) return false;
43285
+ if (v.bodyMode === "ui") {
43286
+ if (!isNSFunctionUIBody(v.uiAction)) return false;
43287
+ return v.code === void 0;
43288
+ }
43289
+ if (v.uiAction !== void 0 && v.uiAction !== null) return false;
43290
+ return typeof v.code === "string" && v.code.length > 0;
43291
+ }
43266
43292
  function isAnyMember(value) {
43267
43293
  return isMember(value) || isMemberOverride(value);
43268
43294
  }
43295
+ function isAnyMemberAuthoredOrCompiled(value) {
43296
+ return isAnyMember(value) || isUncompiledMemberNSFunctionOverride(value);
43297
+ }
43269
43298
  var FunctionMemberNamePattern, FunctionArgumentReservedNames, NSFunctionArgumentReservedNames, DECIMAL_STRING_PATTERN, DECIMAL_MAX_SIGNIFICANT_DIGITS, DECIMAL_MAX_SCALE;
43270
43299
  var init_member_kinds = __esm({
43271
43300
  "../src/models/members/member-kinds.ts"() {
@@ -73591,7 +73620,7 @@ function readProjectDocument(value, options = {}) {
73591
73620
  members: readArrayField(
73592
73621
  value,
73593
73622
  "members",
73594
- isAnyMember
73623
+ options.members === "authored-or-compiled" ? isAnyMemberAuthoredOrCompiled : isAnyMember
73595
73624
  ),
73596
73625
  classes: readArrayField(value, "classes", isNeoSchemaClass),
73597
73626
  constructors: readOptionalArrayField(
@@ -95095,7 +95124,8 @@ function readPulledProjectDocumentV4(records2) {
95095
95124
  ),
95096
95125
  {
95097
95126
  constructors: "authored-or-compiled",
95098
- identities: "prospective"
95127
+ identities: "prospective",
95128
+ members: "authored-or-compiled"
95099
95129
  }
95100
95130
  );
95101
95131
  }
@@ -111594,7 +111624,7 @@ var init_registry2 = __esm({
111594
111624
  PROJECT_SCHEMA_CONTRACT = Object.freeze({
111595
111625
  formatVersion: 3,
111596
111626
  contractVersion: "3.13",
111597
- cliVersion: "0.31.13",
111627
+ cliVersion: "0.31.14",
111598
111628
  projectFileUploadBatchSize: 32,
111599
111629
  documentRecords: {
111600
111630
  member: {
@@ -118189,7 +118219,7 @@ There is no --keep-current: preserving current semantic state defines flatten.
118189
118219
  async function main() {
118190
118220
  const args = parseArgs(process.argv.slice(2));
118191
118221
  if (args.command === "--version") {
118192
- console.log("0.31.13");
118222
+ console.log("0.31.14");
118193
118223
  return;
118194
118224
  }
118195
118225
  if (args.command === null || args.command === "help" || args.command === "--help" || args.command === "-h") {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neocompose/cli",
3
- "version": "0.31.13",
3
+ "version": "0.31.14",
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.31.13 -->
12
+ <!-- reviewed-through-cli: 0.31.14 -->
13
13
 
14
14
  # Neo Compose CLI
15
15
 
@@ -83,7 +83,7 @@ wrappers.
83
83
  The marker near the top of `SKILL.md` must exactly match the package version:
84
84
 
85
85
  ```html
86
- <!-- reviewed-through-cli: 0.31.13 -->
86
+ <!-- reviewed-through-cli: 0.31.14 -->
87
87
  ```
88
88
 
89
89
  The quoted version above is checked too, so this instruction cannot go stale