@nexusclawhq/cli 0.2.1
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 +11 -0
- package/README.md +13 -0
- package/dist/build-info.json +8 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/analysis/capability-extractor.d.ts +38 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/analysis/capability-extractor.js +323 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/analysis/capability-extractor.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/analysis/code-static-analysis.d.ts +6 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/analysis/code-static-analysis.js +225 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/analysis/code-static-analysis.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/checksums.d.ts +64 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/checksums.js +72 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/checksums.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/code-action-compiler.d.ts +38 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/code-action-compiler.js +369 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/code-action-compiler.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/schema-to-typescript.d.ts +5 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/schema-to-typescript.js +127 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/compiler/schema-to-typescript.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/index.d.ts +109 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/index.js +39 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/archive-safety.d.ts +31 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/archive-safety.js +119 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/archive-safety.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/canonical-zip.d.ts +46 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/canonical-zip.js +314 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/canonical-zip.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/manifest-inventory.d.ts +49 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/manifest-inventory.js +95 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/manifest-inventory.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/workforce-bundle-inventory.d.ts +19 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/workforce-bundle-inventory.js +196 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/workforce-bundle-inventory.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/runtime/local-runner-lock.d.ts +8 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/runtime/local-runner-lock.js +25 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/runtime/local-runner-lock.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/schema/code-schema-loader.d.ts +52 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/schema/code-schema-loader.js +189 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/schema/code-schema-loader.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/package.json +16 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/src/runtime/local-runner.lock.json +7 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-avatars/presets.d.ts +17 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-avatars/presets.js +55 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-avatars/presets.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/ai-authoring-context-signing.d.ts +35 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/ai-authoring-context-signing.js +243 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/ai-authoring-context-signing.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/ai-authoring-context.types.d.ts +232 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/ai-authoring-context.types.js +160 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/ai-authoring-context.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/candidate-execution-workspace-admin.types.d.ts +71 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/candidate-execution-workspace-admin.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/candidate-execution-workspace-admin.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/canonical-hash.d.ts +124 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/canonical-hash.js +366 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/canonical-hash.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/cli-contract.types.d.ts +140 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/cli-contract.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/cli-contract.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/code-action.types.d.ts +278 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/code-action.types.js +8 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/code-action.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/code-extension-manifest.types.d.ts +65 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/code-extension-manifest.types.js +35 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/code-extension-manifest.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/contract-schemas.d.ts +77 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/contract-schemas.js +387 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/contract-schemas.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/contract-versions.d.ts +125 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/contract-versions.js +137 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/contract-versions.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/error-catalog.d.ts +25 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/error-catalog.js +295 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/error-catalog.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/executable-package-validation.types.d.ts +134 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/executable-package-validation.types.js +65 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/executable-package-validation.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/flow-payload-v2.types.d.ts +105 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/flow-payload-v2.types.js +17 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/flow-payload-v2.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/flow-v2-canonical.d.ts +33 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/flow-v2-canonical.js +175 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/flow-v2-canonical.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/index.d.ts +28 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/index.js +100 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/json-value.d.ts +48 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/json-value.js +108 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/json-value.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/release-evidence-validation.d.ts +34 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/release-evidence-validation.js +135 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/release-evidence-validation.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/release-evidence.types.d.ts +232 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/release-evidence.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/release-evidence.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-bundle.types.d.ts +98 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-bundle.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-bundle.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-lock.types.d.ts +96 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-lock.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-lock.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-release-events.types.d.ts +28 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-release-events.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-release-events.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-release-gate-receipt.d.ts +2 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-release-gate-receipt.js +26 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-release-gate-receipt.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-markdown-policy/index.d.ts +25 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-markdown-policy/index.js +66 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-markdown-policy/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/cognitive-policy.schemas.d.ts +38 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/cognitive-policy.schemas.js +502 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/cognitive-policy.schemas.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/cognitive-policy.types.d.ts +173 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/cognitive-policy.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/cognitive-policy.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/context-selection.schemas.d.ts +4 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/context-selection.schemas.js +53 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/context-selection.schemas.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/context-selection.types.d.ts +37 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/context-selection.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/context-selection.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/contract-versions.d.ts +19 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/contract-versions.js +42 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/contract-versions.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/controlled-memory.schemas.d.ts +12 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/controlled-memory.schemas.js +161 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/controlled-memory.schemas.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/controlled-memory.types.d.ts +44 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/controlled-memory.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/controlled-memory.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/goal-snapshot.schemas.d.ts +5 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/goal-snapshot.schemas.js +81 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/goal-snapshot.schemas.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/goal-snapshot.types.d.ts +61 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/goal-snapshot.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/goal-snapshot.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/index.d.ts +15 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/index.js +32 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/proactive-decision.schemas.d.ts +9 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/proactive-decision.schemas.js +170 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/proactive-decision.schemas.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/proactive-decision.types.d.ts +98 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/proactive-decision.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/proactive-decision.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/success-evaluation.schemas.d.ts +21 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/success-evaluation.schemas.js +157 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/success-evaluation.schemas.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/success-evaluation.types.d.ts +47 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/success-evaluation.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/success-evaluation.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/training-evidence.schemas.d.ts +19 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/training-evidence.schemas.js +177 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/training-evidence.schemas.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/training-evidence.types.d.ts +66 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/training-evidence.types.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-cognition/training-evidence.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-runtime/index.d.ts +53 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-runtime/index.js +42 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-employee-runtime/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-workforce-learning/index.d.ts +743 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-workforce-learning/index.js +1261 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/ai-workforce-learning/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/index.d.ts +2 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/index.js +8 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/types.d.ts +208 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/types.js +26 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/validator.d.ts +13 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/validator.js +257 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/validator.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.d.ts +12 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.js +31 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.d.ts +20892 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js +21538 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/flatten.d.ts +8 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/flatten.js +24 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/flatten.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/index.d.ts +41790 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/index.js +19 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.d.ts +20892 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js +21538 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-release-governance/index.d.ts +71 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-release-governance/index.js +13 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-release-governance/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-route-readiness/index.d.ts +91 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-route-readiness/index.js +331 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-route-readiness/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/source-format/index.d.ts +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/source-format/index.js +18 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/source-format/index.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/source-format/page-source-file.d.ts +73 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/source-format/page-source-file.js +266 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/source-format/page-source-file.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/package.json +55 -0
- package/dist/nexus-cli/src/cli.d.ts +3 -0
- package/dist/nexus-cli/src/cli.js +120 -0
- package/dist/nexus-cli/src/cli.js.map +1 -0
- package/dist/nexus-cli/src/cli.test.d.ts +1 -0
- package/dist/nexus-cli/src/cli.test.js +69 -0
- package/dist/nexus-cli/src/cli.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/ai/context-export.d.ts +22 -0
- package/dist/nexus-cli/src/commands/ai/context-export.js +309 -0
- package/dist/nexus-cli/src/commands/ai/context-export.js.map +1 -0
- package/dist/nexus-cli/src/commands/ai/context-export.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/ai/context-export.test.js +146 -0
- package/dist/nexus-cli/src/commands/ai/context-export.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/ai/context-v2.d.ts +19 -0
- package/dist/nexus-cli/src/commands/ai/context-v2.js +115 -0
- package/dist/nexus-cli/src/commands/ai/context-v2.js.map +1 -0
- package/dist/nexus-cli/src/commands/ai/help.d.ts +14 -0
- package/dist/nexus-cli/src/commands/ai/help.js +129 -0
- package/dist/nexus-cli/src/commands/ai/help.js.map +1 -0
- package/dist/nexus-cli/src/commands/ai/help.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/ai/help.test.js +114 -0
- package/dist/nexus-cli/src/commands/ai/help.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/ai/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/ai/index.js +21 -0
- package/dist/nexus-cli/src/commands/ai/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/changeset/index.d.ts +6 -0
- package/dist/nexus-cli/src/commands/changeset/index.js +250 -0
- package/dist/nexus-cli/src/commands/changeset/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/changeset/index.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/changeset/index.test.js +68 -0
- package/dist/nexus-cli/src/commands/changeset/index.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/commands.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/commands.test.js +106 -0
- package/dist/nexus-cli/src/commands/commands.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/activate.d.ts +2 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/activate.js +49 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/activate.js.map +1 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/create.d.ts +2 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/create.js +70 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/create.js.map +1 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/deactivate.d.ts +2 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/deactivate.js +49 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/deactivate.js.map +1 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/get.d.ts +2 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/get.js +60 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/get.js.map +1 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/index.js +21 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/list.d.ts +2 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/list.js +56 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/list.js.map +1 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/validate.d.ts +2 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/validate.js +52 -0
- package/dist/nexus-cli/src/commands/customer-entitlement/validate.js.map +1 -0
- package/dist/nexus-cli/src/commands/data/delete-bulk.d.ts +2 -0
- package/dist/nexus-cli/src/commands/data/delete-bulk.js +24 -0
- package/dist/nexus-cli/src/commands/data/delete-bulk.js.map +1 -0
- package/dist/nexus-cli/src/commands/data/export-tree.d.ts +2 -0
- package/dist/nexus-cli/src/commands/data/export-tree.js +71 -0
- package/dist/nexus-cli/src/commands/data/export-tree.js.map +1 -0
- package/dist/nexus-cli/src/commands/data/import-tree.d.ts +2 -0
- package/dist/nexus-cli/src/commands/data/import-tree.js +68 -0
- package/dist/nexus-cli/src/commands/data/import-tree.js.map +1 -0
- package/dist/nexus-cli/src/commands/data/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/data/index.js +17 -0
- package/dist/nexus-cli/src/commands/data/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/data/query.d.ts +2 -0
- package/dist/nexus-cli/src/commands/data/query.js +49 -0
- package/dist/nexus-cli/src/commands/data/query.js.map +1 -0
- package/dist/nexus-cli/src/commands/deployment/employee-report.d.ts +2 -0
- package/dist/nexus-cli/src/commands/deployment/employee-report.js +82 -0
- package/dist/nexus-cli/src/commands/deployment/employee-report.js.map +1 -0
- package/dist/nexus-cli/src/commands/deployment/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/deployment/index.js +86 -0
- package/dist/nexus-cli/src/commands/deployment/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/deployment/quick.d.ts +2 -0
- package/dist/nexus-cli/src/commands/deployment/quick.js +53 -0
- package/dist/nexus-cli/src/commands/deployment/quick.js.map +1 -0
- package/dist/nexus-cli/src/commands/deployment/report.d.ts +2 -0
- package/dist/nexus-cli/src/commands/deployment/report.js +142 -0
- package/dist/nexus-cli/src/commands/deployment/report.js.map +1 -0
- package/dist/nexus-cli/src/commands/deployment/resume.d.ts +2 -0
- package/dist/nexus-cli/src/commands/deployment/resume.js +119 -0
- package/dist/nexus-cli/src/commands/deployment/resume.js.map +1 -0
- package/dist/nexus-cli/src/commands/dx-pages.d.ts +18 -0
- package/dist/nexus-cli/src/commands/dx-pages.js +213 -0
- package/dist/nexus-cli/src/commands/dx-pages.js.map +1 -0
- package/dist/nexus-cli/src/commands/dx-release-boundary.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/dx-release-boundary.e2e.test.js +624 -0
- package/dist/nexus-cli/src/commands/dx-release-boundary.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/dx-workflows.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/dx-workflows.e2e.test.js +659 -0
- package/dist/nexus-cli/src/commands/dx-workflows.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/dx.d.ts +17 -0
- package/dist/nexus-cli/src/commands/dx.js +857 -0
- package/dist/nexus-cli/src/commands/dx.js.map +1 -0
- package/dist/nexus-cli/src/commands/employee/bundle.d.ts +16 -0
- package/dist/nexus-cli/src/commands/employee/bundle.js +213 -0
- package/dist/nexus-cli/src/commands/employee/bundle.js.map +1 -0
- package/dist/nexus-cli/src/commands/employee/code.d.ts +2 -0
- package/dist/nexus-cli/src/commands/employee/code.js +119 -0
- package/dist/nexus-cli/src/commands/employee/code.js.map +1 -0
- package/dist/nexus-cli/src/commands/employee/deploy.d.ts +2 -0
- package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.js +199 -0
- package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/employee/deploy.js +97 -0
- package/dist/nexus-cli/src/commands/employee/deploy.js.map +1 -0
- package/dist/nexus-cli/src/commands/employee/flow.d.ts +2 -0
- package/dist/nexus-cli/src/commands/employee/flow.js +96 -0
- package/dist/nexus-cli/src/commands/employee/flow.js.map +1 -0
- package/dist/nexus-cli/src/commands/employee/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/employee/index.js +17 -0
- package/dist/nexus-cli/src/commands/employee/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/entitlement/grant.d.ts +2 -0
- package/dist/nexus-cli/src/commands/entitlement/grant.js +41 -0
- package/dist/nexus-cli/src/commands/entitlement/grant.js.map +1 -0
- package/dist/nexus-cli/src/commands/entitlement/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/entitlement/index.js +15 -0
- package/dist/nexus-cli/src/commands/entitlement/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/entitlement/list.d.ts +2 -0
- package/dist/nexus-cli/src/commands/entitlement/list.js +34 -0
- package/dist/nexus-cli/src/commands/entitlement/list.js.map +1 -0
- package/dist/nexus-cli/src/commands/entitlement/revoke.d.ts +2 -0
- package/dist/nexus-cli/src/commands/entitlement/revoke.js +36 -0
- package/dist/nexus-cli/src/commands/entitlement/revoke.js.map +1 -0
- package/dist/nexus-cli/src/commands/generate/class.d.ts +2 -0
- package/dist/nexus-cli/src/commands/generate/class.js +64 -0
- package/dist/nexus-cli/src/commands/generate/class.js.map +1 -0
- package/dist/nexus-cli/src/commands/generate/component.d.ts +2 -0
- package/dist/nexus-cli/src/commands/generate/component.js +67 -0
- package/dist/nexus-cli/src/commands/generate/component.js.map +1 -0
- package/dist/nexus-cli/src/commands/generate/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/generate/index.js +20 -0
- package/dist/nexus-cli/src/commands/generate/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/generate/project.d.ts +25 -0
- package/dist/nexus-cli/src/commands/generate/project.js +574 -0
- package/dist/nexus-cli/src/commands/generate/project.js.map +1 -0
- package/dist/nexus-cli/src/commands/generate/project.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/generate/project.test.js +214 -0
- package/dist/nexus-cli/src/commands/generate/project.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/generate/test.d.ts +2 -0
- package/dist/nexus-cli/src/commands/generate/test.js +61 -0
- package/dist/nexus-cli/src/commands/generate/test.js.map +1 -0
- package/dist/nexus-cli/src/commands/generate/trigger.d.ts +2 -0
- package/dist/nexus-cli/src/commands/generate/trigger.js +67 -0
- package/dist/nexus-cli/src/commands/generate/trigger.js.map +1 -0
- package/dist/nexus-cli/src/commands/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/index.js +23 -0
- package/dist/nexus-cli/src/commands/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/install-contract/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/install-contract/index.js +146 -0
- package/dist/nexus-cli/src/commands/install-contract/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/log/get.d.ts +2 -0
- package/dist/nexus-cli/src/commands/log/get.js +20 -0
- package/dist/nexus-cli/src/commands/log/get.js.map +1 -0
- package/dist/nexus-cli/src/commands/log/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/log/index.js +15 -0
- package/dist/nexus-cli/src/commands/log/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/log/list.d.ts +2 -0
- package/dist/nexus-cli/src/commands/log/list.js +34 -0
- package/dist/nexus-cli/src/commands/log/list.js.map +1 -0
- package/dist/nexus-cli/src/commands/log/tail.d.ts +3 -0
- package/dist/nexus-cli/src/commands/log/tail.js +91 -0
- package/dist/nexus-cli/src/commands/log/tail.js.map +1 -0
- package/dist/nexus-cli/src/commands/metadata/deploy.d.ts +2 -0
- package/dist/nexus-cli/src/commands/metadata/deploy.js +117 -0
- package/dist/nexus-cli/src/commands/metadata/deploy.js.map +1 -0
- package/dist/nexus-cli/src/commands/metadata/diff.d.ts +2 -0
- package/dist/nexus-cli/src/commands/metadata/diff.js +41 -0
- package/dist/nexus-cli/src/commands/metadata/diff.js.map +1 -0
- package/dist/nexus-cli/src/commands/metadata/export.d.ts +2 -0
- package/dist/nexus-cli/src/commands/metadata/export.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/metadata/export.e2e.test.js +105 -0
- package/dist/nexus-cli/src/commands/metadata/export.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/metadata/export.js +65 -0
- package/dist/nexus-cli/src/commands/metadata/export.js.map +1 -0
- package/dist/nexus-cli/src/commands/metadata/import.d.ts +2 -0
- package/dist/nexus-cli/src/commands/metadata/import.js +47 -0
- package/dist/nexus-cli/src/commands/metadata/import.js.map +1 -0
- package/dist/nexus-cli/src/commands/metadata/retrieve.d.ts +2 -0
- package/dist/nexus-cli/src/commands/metadata/retrieve.js +57 -0
- package/dist/nexus-cli/src/commands/metadata/retrieve.js.map +1 -0
- package/dist/nexus-cli/src/commands/metadata/validate-source.d.ts +2 -0
- package/dist/nexus-cli/src/commands/metadata/validate-source.js +38 -0
- package/dist/nexus-cli/src/commands/metadata/validate-source.js.map +1 -0
- package/dist/nexus-cli/src/commands/metadata/validate.d.ts +2 -0
- package/dist/nexus-cli/src/commands/metadata/validate.js +61 -0
- package/dist/nexus-cli/src/commands/metadata/validate.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/default-set.d.ts +2 -0
- package/dist/nexus-cli/src/commands/org/default-set.js +19 -0
- package/dist/nexus-cli/src/commands/org/default-set.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/display.d.ts +2 -0
- package/dist/nexus-cli/src/commands/org/display.js +48 -0
- package/dist/nexus-cli/src/commands/org/display.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/org/index.js +23 -0
- package/dist/nexus-cli/src/commands/org/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/list.d.ts +2 -0
- package/dist/nexus-cli/src/commands/org/list.js +45 -0
- package/dist/nexus-cli/src/commands/org/list.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.d.ts +25 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.js +82 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.test.js +45 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/login-web.d.ts +9 -0
- package/dist/nexus-cli/src/commands/org/login-web.js +419 -0
- package/dist/nexus-cli/src/commands/org/login-web.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/login-web.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/org/login-web.test.js +66 -0
- package/dist/nexus-cli/src/commands/org/login-web.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/logout.d.ts +2 -0
- package/dist/nexus-cli/src/commands/org/logout.js +26 -0
- package/dist/nexus-cli/src/commands/org/logout.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/open.d.ts +3 -0
- package/dist/nexus-cli/src/commands/org/open.js +73 -0
- package/dist/nexus-cli/src/commands/org/open.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/deprecate.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/deprecate.js +68 -0
- package/dist/nexus-cli/src/commands/package/deprecate.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/format.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/format.js +30 -0
- package/dist/nexus-cli/src/commands/package/format.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/helpers.d.ts +33 -0
- package/dist/nexus-cli/src/commands/package/helpers.js +118 -0
- package/dist/nexus-cli/src/commands/package/helpers.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/history.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/history.js +43 -0
- package/dist/nexus-cli/src/commands/package/history.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/index.js +51 -0
- package/dist/nexus-cli/src/commands/package/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/info.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/info.js +67 -0
- package/dist/nexus-cli/src/commands/package/info.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/install.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/install.js +180 -0
- package/dist/nexus-cli/src/commands/package/install.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/list.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/list.js +81 -0
- package/dist/nexus-cli/src/commands/package/list.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/pack.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/pack.js +83 -0
- package/dist/nexus-cli/src/commands/package/pack.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/package-governance.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/package/package-governance.e2e.test.js +205 -0
- package/dist/nexus-cli/src/commands/package/package-governance.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/package-lifecycle.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/package/package-lifecycle.e2e.test.js +386 -0
- package/dist/nexus-cli/src/commands/package/package-lifecycle.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/package-payload.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/package/package-payload.e2e.test.js +126 -0
- package/dist/nexus-cli/src/commands/package/package-payload.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/package-query-json.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/package/package-query-json.e2e.test.js +84 -0
- package/dist/nexus-cli/src/commands/package/package-query-json.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/plan.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/plan.js +51 -0
- package/dist/nexus-cli/src/commands/package/plan.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/promote.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/promote.js +59 -0
- package/dist/nexus-cli/src/commands/package/promote.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/promotion-history.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/promotion-history.js +39 -0
- package/dist/nexus-cli/src/commands/package/promotion-history.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/publish.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/publish.js +57 -0
- package/dist/nexus-cli/src/commands/package/publish.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/rollback.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/rollback.js +137 -0
- package/dist/nexus-cli/src/commands/package/rollback.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/rollout-status.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/rollout-status.js +27 -0
- package/dist/nexus-cli/src/commands/package/rollout-status.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/rollout-update.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/rollout-update.js +43 -0
- package/dist/nexus-cli/src/commands/package/rollout-update.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/rollout-workspaces.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/rollout-workspaces.js +33 -0
- package/dist/nexus-cli/src/commands/package/rollout-workspaces.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/search.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/search.js +44 -0
- package/dist/nexus-cli/src/commands/package/search.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/uninstall.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/uninstall.js +53 -0
- package/dist/nexus-cli/src/commands/package/uninstall.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/upgrade.d.ts +3 -0
- package/dist/nexus-cli/src/commands/package/upgrade.js +160 -0
- package/dist/nexus-cli/src/commands/package/upgrade.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/validate.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/validate.js +130 -0
- package/dist/nexus-cli/src/commands/package/validate.js.map +1 -0
- package/dist/nexus-cli/src/commands/package/versions.d.ts +2 -0
- package/dist/nexus-cli/src/commands/package/versions.js +38 -0
- package/dist/nexus-cli/src/commands/package/versions.js.map +1 -0
- package/dist/nexus-cli/src/commands/preflight/get.d.ts +2 -0
- package/dist/nexus-cli/src/commands/preflight/get.js +54 -0
- package/dist/nexus-cli/src/commands/preflight/get.js.map +1 -0
- package/dist/nexus-cli/src/commands/preflight/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/preflight/index.js +13 -0
- package/dist/nexus-cli/src/commands/preflight/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/preflight/run.d.ts +2 -0
- package/dist/nexus-cli/src/commands/preflight/run.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/preflight/run.e2e.test.js +159 -0
- package/dist/nexus-cli/src/commands/preflight/run.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/preflight/run.js +81 -0
- package/dist/nexus-cli/src/commands/preflight/run.js.map +1 -0
- package/dist/nexus-cli/src/commands/project/convert.d.ts +2 -0
- package/dist/nexus-cli/src/commands/project/convert.js +323 -0
- package/dist/nexus-cli/src/commands/project/convert.js.map +1 -0
- package/dist/nexus-cli/src/commands/project/deploy-start.d.ts +2 -0
- package/dist/nexus-cli/src/commands/project/deploy-start.js +164 -0
- package/dist/nexus-cli/src/commands/project/deploy-start.js.map +1 -0
- package/dist/nexus-cli/src/commands/project/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/project/index.js +47 -0
- package/dist/nexus-cli/src/commands/project/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/revision/baseline.d.ts +4 -0
- package/dist/nexus-cli/src/commands/revision/baseline.js +44 -0
- package/dist/nexus-cli/src/commands/revision/baseline.js.map +1 -0
- package/dist/nexus-cli/src/commands/revision/diff.d.ts +2 -0
- package/dist/nexus-cli/src/commands/revision/diff.js +33 -0
- package/dist/nexus-cli/src/commands/revision/diff.js.map +1 -0
- package/dist/nexus-cli/src/commands/revision/history.d.ts +2 -0
- package/dist/nexus-cli/src/commands/revision/history.js +52 -0
- package/dist/nexus-cli/src/commands/revision/history.js.map +1 -0
- package/dist/nexus-cli/src/commands/revision/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/revision/index.js +17 -0
- package/dist/nexus-cli/src/commands/revision/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/revision/revision.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/revision/revision.e2e.test.js +135 -0
- package/dist/nexus-cli/src/commands/revision/revision.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/revision/rollback.d.ts +2 -0
- package/dist/nexus-cli/src/commands/revision/rollback.js +26 -0
- package/dist/nexus-cli/src/commands/revision/rollback.js.map +1 -0
- package/dist/nexus-cli/src/commands/sandbox/create.d.ts +2 -0
- package/dist/nexus-cli/src/commands/sandbox/create.js +25 -0
- package/dist/nexus-cli/src/commands/sandbox/create.js.map +1 -0
- package/dist/nexus-cli/src/commands/sandbox/delete.d.ts +2 -0
- package/dist/nexus-cli/src/commands/sandbox/delete.js +24 -0
- package/dist/nexus-cli/src/commands/sandbox/delete.js.map +1 -0
- package/dist/nexus-cli/src/commands/sandbox/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/sandbox/index.js +17 -0
- package/dist/nexus-cli/src/commands/sandbox/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/sandbox/list.d.ts +2 -0
- package/dist/nexus-cli/src/commands/sandbox/list.js +30 -0
- package/dist/nexus-cli/src/commands/sandbox/list.js.map +1 -0
- package/dist/nexus-cli/src/commands/sandbox/promote.d.ts +2 -0
- package/dist/nexus-cli/src/commands/sandbox/promote.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/sandbox/promote.e2e.test.js +120 -0
- package/dist/nexus-cli/src/commands/sandbox/promote.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/sandbox/promote.js +69 -0
- package/dist/nexus-cli/src/commands/sandbox/promote.js.map +1 -0
- package/dist/nexus-cli/src/commands/script/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/script/index.js +11 -0
- package/dist/nexus-cli/src/commands/script/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/script/run.d.ts +2 -0
- package/dist/nexus-cli/src/commands/script/run.js +78 -0
- package/dist/nexus-cli/src/commands/script/run.js.map +1 -0
- package/dist/nexus-cli/src/commands/source/dx-pull-pages.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/source/dx-pull-pages.e2e.test.js +336 -0
- package/dist/nexus-cli/src/commands/source/dx-pull-pages.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/source/get.d.ts +2 -0
- package/dist/nexus-cli/src/commands/source/get.js +34 -0
- package/dist/nexus-cli/src/commands/source/get.js.map +1 -0
- package/dist/nexus-cli/src/commands/source/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/source/index.js +17 -0
- package/dist/nexus-cli/src/commands/source/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/source/pull.d.ts +2 -0
- package/dist/nexus-cli/src/commands/source/pull.js +167 -0
- package/dist/nexus-cli/src/commands/source/pull.js.map +1 -0
- package/dist/nexus-cli/src/commands/source/push.d.ts +2 -0
- package/dist/nexus-cli/src/commands/source/push.js +172 -0
- package/dist/nexus-cli/src/commands/source/push.js.map +1 -0
- package/dist/nexus-cli/src/commands/source/source-page-diff.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/source/source-page-diff.e2e.test.js +318 -0
- package/dist/nexus-cli/src/commands/source/source-page-diff.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/source/source-sync.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/source/source-sync.e2e.test.js +274 -0
- package/dist/nexus-cli/src/commands/source/source-sync.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/source/status.d.ts +2 -0
- package/dist/nexus-cli/src/commands/source/status.js +132 -0
- package/dist/nexus-cli/src/commands/source/status.js.map +1 -0
- package/dist/nexus-cli/src/commands/test/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/test/index.js +13 -0
- package/dist/nexus-cli/src/commands/test/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/test/report.d.ts +2 -0
- package/dist/nexus-cli/src/commands/test/report.js +38 -0
- package/dist/nexus-cli/src/commands/test/report.js.map +1 -0
- package/dist/nexus-cli/src/commands/test/run.d.ts +2 -0
- package/dist/nexus-cli/src/commands/test/run.js +49 -0
- package/dist/nexus-cli/src/commands/test/run.js.map +1 -0
- package/dist/nexus-cli/src/commands/validate/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/validate/index.js +55 -0
- package/dist/nexus-cli/src/commands/validate/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/workspace/index.d.ts +2 -0
- package/dist/nexus-cli/src/commands/workspace/index.js +412 -0
- package/dist/nexus-cli/src/commands/workspace/index.js.map +1 -0
- package/dist/nexus-cli/src/commands/workspace/workspace.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/workspace/workspace.e2e.test.js +320 -0
- package/dist/nexus-cli/src/commands/workspace/workspace.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/config/metadata-type-map.json +12 -0
- package/dist/nexus-cli/src/contracts/argv-predicate.d.ts +17 -0
- package/dist/nexus-cli/src/contracts/argv-predicate.js +88 -0
- package/dist/nexus-cli/src/contracts/argv-predicate.js.map +1 -0
- package/dist/nexus-cli/src/contracts/command-contract.d.ts +15 -0
- package/dist/nexus-cli/src/contracts/command-contract.exporter.d.ts +7 -0
- package/dist/nexus-cli/src/contracts/command-contract.exporter.js +24 -0
- package/dist/nexus-cli/src/contracts/command-contract.exporter.js.map +1 -0
- package/dist/nexus-cli/src/contracts/command-contract.guard.d.ts +5 -0
- package/dist/nexus-cli/src/contracts/command-contract.guard.js +149 -0
- package/dist/nexus-cli/src/contracts/command-contract.guard.js.map +1 -0
- package/dist/nexus-cli/src/contracts/command-contract.js +39 -0
- package/dist/nexus-cli/src/contracts/command-contract.js.map +1 -0
- package/dist/nexus-cli/src/contracts/command-contract.registry.d.ts +16 -0
- package/dist/nexus-cli/src/contracts/command-contract.registry.js +542 -0
- package/dist/nexus-cli/src/contracts/command-contract.registry.js.map +1 -0
- package/dist/nexus-cli/src/contracts/command-order.d.ts +23 -0
- package/dist/nexus-cli/src/contracts/command-order.js +151 -0
- package/dist/nexus-cli/src/contracts/command-order.js.map +1 -0
- package/dist/nexus-cli/src/contracts/contracts.test.d.ts +1 -0
- package/dist/nexus-cli/src/contracts/contracts.test.js +301 -0
- package/dist/nexus-cli/src/contracts/contracts.test.js.map +1 -0
- package/dist/nexus-cli/src/contracts/exit-codes.d.ts +3 -0
- package/dist/nexus-cli/src/contracts/exit-codes.js +7 -0
- package/dist/nexus-cli/src/contracts/exit-codes.js.map +1 -0
- package/dist/nexus-cli/src/contracts/index.d.ts +8 -0
- package/dist/nexus-cli/src/contracts/index.js +35 -0
- package/dist/nexus-cli/src/contracts/index.js.map +1 -0
- package/dist/nexus-cli/src/contracts/machine-result.d.ts +21 -0
- package/dist/nexus-cli/src/contracts/machine-result.js +95 -0
- package/dist/nexus-cli/src/contracts/machine-result.js.map +1 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.d.ts +30 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.js +386 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.js.map +1 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.test.js +171 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.test.js.map +1 -0
- package/dist/nexus-cli/src/services/ai-context-managed-install.d.ts +16 -0
- package/dist/nexus-cli/src/services/ai-context-managed-install.js +79 -0
- package/dist/nexus-cli/src/services/ai-context-managed-install.js.map +1 -0
- package/dist/nexus-cli/src/services/ai-context-pack.d.ts +33 -0
- package/dist/nexus-cli/src/services/ai-context-pack.js +72 -0
- package/dist/nexus-cli/src/services/ai-context-pack.js.map +1 -0
- package/dist/nexus-cli/src/services/ai-context-pack.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/ai-context-pack.test.js +102 -0
- package/dist/nexus-cli/src/services/ai-context-pack.test.js.map +1 -0
- package/dist/nexus-cli/src/services/ai-context-signing-key-cache.d.ts +17 -0
- package/dist/nexus-cli/src/services/ai-context-signing-key-cache.js +160 -0
- package/dist/nexus-cli/src/services/ai-context-signing-key-cache.js.map +1 -0
- package/dist/nexus-cli/src/services/ai-context-signing-key-cache.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/ai-context-signing-key-cache.test.js +114 -0
- package/dist/nexus-cli/src/services/ai-context-signing-key-cache.test.js.map +1 -0
- package/dist/nexus-cli/src/services/api-client.d.ts +1097 -0
- package/dist/nexus-cli/src/services/api-client.js +1352 -0
- package/dist/nexus-cli/src/services/api-client.js.map +1 -0
- package/dist/nexus-cli/src/services/api-client.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/api-client.test.js +669 -0
- package/dist/nexus-cli/src/services/api-client.test.js.map +1 -0
- package/dist/nexus-cli/src/services/auth-store.d.ts +19 -0
- package/dist/nexus-cli/src/services/auth-store.js +146 -0
- package/dist/nexus-cli/src/services/auth-store.js.map +1 -0
- package/dist/nexus-cli/src/services/auth-store.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/auth-store.test.js +104 -0
- package/dist/nexus-cli/src/services/auth-store.test.js.map +1 -0
- package/dist/nexus-cli/src/services/code-authoring-local.d.ts +65 -0
- package/dist/nexus-cli/src/services/code-authoring-local.js +403 -0
- package/dist/nexus-cli/src/services/code-authoring-local.js.map +1 -0
- package/dist/nexus-cli/src/services/code-authoring-local.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/code-authoring-local.test.js +129 -0
- package/dist/nexus-cli/src/services/code-authoring-local.test.js.map +1 -0
- package/dist/nexus-cli/src/services/code-extension-governance.d.ts +4 -0
- package/dist/nexus-cli/src/services/code-extension-governance.js +217 -0
- package/dist/nexus-cli/src/services/code-extension-governance.js.map +1 -0
- package/dist/nexus-cli/src/services/config.d.ts +23 -0
- package/dist/nexus-cli/src/services/config.js +109 -0
- package/dist/nexus-cli/src/services/config.js.map +1 -0
- package/dist/nexus-cli/src/services/config.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/config.test.js +120 -0
- package/dist/nexus-cli/src/services/config.test.js.map +1 -0
- package/dist/nexus-cli/src/services/core-version.d.ts +14 -0
- package/dist/nexus-cli/src/services/core-version.js +149 -0
- package/dist/nexus-cli/src/services/core-version.js.map +1 -0
- package/dist/nexus-cli/src/services/executable-workforce-future-api.types.d.ts +22 -0
- package/dist/nexus-cli/src/services/executable-workforce-future-api.types.js +3 -0
- package/dist/nexus-cli/src/services/executable-workforce-future-api.types.js.map +1 -0
- package/dist/nexus-cli/src/services/flow-authoring-local.d.ts +46 -0
- package/dist/nexus-cli/src/services/flow-authoring-local.js +116 -0
- package/dist/nexus-cli/src/services/flow-authoring-local.js.map +1 -0
- package/dist/nexus-cli/src/services/flow-authoring-local.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/flow-authoring-local.test.js +51 -0
- package/dist/nexus-cli/src/services/flow-authoring-local.test.js.map +1 -0
- package/dist/nexus-cli/src/services/json-diff.d.ts +8 -0
- package/dist/nexus-cli/src/services/json-diff.js +66 -0
- package/dist/nexus-cli/src/services/json-diff.js.map +1 -0
- package/dist/nexus-cli/src/services/manifest-parser.d.ts +10 -0
- package/dist/nexus-cli/src/services/manifest-parser.js +82 -0
- package/dist/nexus-cli/src/services/manifest-parser.js.map +1 -0
- package/dist/nexus-cli/src/services/pack-registry.d.ts +55 -0
- package/dist/nexus-cli/src/services/pack-registry.js +450 -0
- package/dist/nexus-cli/src/services/pack-registry.js.map +1 -0
- package/dist/nexus-cli/src/services/pack-registry.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/pack-registry.test.js +108 -0
- package/dist/nexus-cli/src/services/pack-registry.test.js.map +1 -0
- package/dist/nexus-cli/src/services/package-manifest.d.ts +14 -0
- package/dist/nexus-cli/src/services/package-manifest.js +313 -0
- package/dist/nexus-cli/src/services/package-manifest.js.map +1 -0
- package/dist/nexus-cli/src/services/package-pack-inventory.d.ts +7 -0
- package/dist/nexus-cli/src/services/package-pack-inventory.js +126 -0
- package/dist/nexus-cli/src/services/package-pack-inventory.js.map +1 -0
- package/dist/nexus-cli/src/services/package-pack-inventory.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/package-pack-inventory.test.js +133 -0
- package/dist/nexus-cli/src/services/package-pack-inventory.test.js.map +1 -0
- package/dist/nexus-cli/src/services/package-self-containment.d.ts +47 -0
- package/dist/nexus-cli/src/services/package-self-containment.js +223 -0
- package/dist/nexus-cli/src/services/package-self-containment.js.map +1 -0
- package/dist/nexus-cli/src/services/page-source-file.d.ts +14 -0
- package/dist/nexus-cli/src/services/page-source-file.js +114 -0
- package/dist/nexus-cli/src/services/page-source-file.js.map +1 -0
- package/dist/nexus-cli/src/services/page-source-file.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/page-source-file.test.js +154 -0
- package/dist/nexus-cli/src/services/page-source-file.test.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/baseline-service.d.ts +8 -0
- package/dist/nexus-cli/src/services/revision-ledger/baseline-service.js +65 -0
- package/dist/nexus-cli/src/services/revision-ledger/baseline-service.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/drift-calculator.d.ts +7 -0
- package/dist/nexus-cli/src/services/revision-ledger/drift-calculator.js +14 -0
- package/dist/nexus-cli/src/services/revision-ledger/drift-calculator.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/index.d.ts +13 -0
- package/dist/nexus-cli/src/services/revision-ledger/index.js +30 -0
- package/dist/nexus-cli/src/services/revision-ledger/index.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/initialize.d.ts +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/initialize.js +23 -0
- package/dist/nexus-cli/src/services/revision-ledger/initialize.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/ledger-storage.d.ts +14 -0
- package/dist/nexus-cli/src/services/revision-ledger/ledger-storage.js +91 -0
- package/dist/nexus-cli/src/services/revision-ledger/ledger-storage.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/migration-service.d.ts +8 -0
- package/dist/nexus-cli/src/services/revision-ledger/migration-service.js +115 -0
- package/dist/nexus-cli/src/services/revision-ledger/migration-service.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/page-source-baseline-store.d.ts +10 -0
- package/dist/nexus-cli/src/services/revision-ledger/page-source-baseline-store.js +36 -0
- package/dist/nexus-cli/src/services/revision-ledger/page-source-baseline-store.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/query-api.d.ts +4 -0
- package/dist/nexus-cli/src/services/revision-ledger/query-api.js +11 -0
- package/dist/nexus-cli/src/services/revision-ledger/query-api.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/revision-ledger.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/revision-ledger.test.js +384 -0
- package/dist/nexus-cli/src/services/revision-ledger/revision-ledger.test.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/revision-service.d.ts +44 -0
- package/dist/nexus-cli/src/services/revision-ledger/revision-service.js +189 -0
- package/dist/nexus-cli/src/services/revision-ledger/revision-service.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/rollback-service.d.ts +15 -0
- package/dist/nexus-cli/src/services/revision-ledger/rollback-service.js +146 -0
- package/dist/nexus-cli/src/services/revision-ledger/rollback-service.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/source-tracking-bridge.d.ts +3 -0
- package/dist/nexus-cli/src/services/revision-ledger/source-tracking-bridge.js +22 -0
- package/dist/nexus-cli/src/services/revision-ledger/source-tracking-bridge.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/state-helpers.d.ts +23 -0
- package/dist/nexus-cli/src/services/revision-ledger/state-helpers.js +357 -0
- package/dist/nexus-cli/src/services/revision-ledger/state-helpers.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/types.d.ts +178 -0
- package/dist/nexus-cli/src/services/revision-ledger/types.js +3 -0
- package/dist/nexus-cli/src/services/revision-ledger/types.js.map +1 -0
- package/dist/nexus-cli/src/services/revision-ledger/utils.d.ts +5 -0
- package/dist/nexus-cli/src/services/revision-ledger/utils.js +61 -0
- package/dist/nexus-cli/src/services/revision-ledger/utils.js.map +1 -0
- package/dist/nexus-cli/src/services/source-tracker.d.ts +71 -0
- package/dist/nexus-cli/src/services/source-tracker.js +709 -0
- package/dist/nexus-cli/src/services/source-tracker.js.map +1 -0
- package/dist/nexus-cli/src/services/source-tracker.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/source-tracker.test.js +362 -0
- package/dist/nexus-cli/src/services/source-tracker.test.js.map +1 -0
- package/dist/nexus-cli/src/services/sse-client.d.ts +13 -0
- package/dist/nexus-cli/src/services/sse-client.js +107 -0
- package/dist/nexus-cli/src/services/sse-client.js.map +1 -0
- package/dist/nexus-cli/src/services/target-context.d.ts +31 -0
- package/dist/nexus-cli/src/services/target-context.js +91 -0
- package/dist/nexus-cli/src/services/target-context.js.map +1 -0
- package/dist/nexus-cli/src/services/target-context.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/target-context.test.js +93 -0
- package/dist/nexus-cli/src/services/target-context.test.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-archive.d.ts +12 -0
- package/dist/nexus-cli/src/services/workforce-bundle-archive.js +102 -0
- package/dist/nexus-cli/src/services/workforce-bundle-archive.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-archive.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-archive.test.js +54 -0
- package/dist/nexus-cli/src/services/workforce-bundle-archive.test.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-local.d.ts +26 -0
- package/dist/nexus-cli/src/services/workforce-bundle-local.js +250 -0
- package/dist/nexus-cli/src/services/workforce-bundle-local.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-local.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-local.test.js +100 -0
- package/dist/nexus-cli/src/services/workforce-bundle-local.test.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-remote.d.ts +63 -0
- package/dist/nexus-cli/src/services/workforce-bundle-remote.js +138 -0
- package/dist/nexus-cli/src/services/workforce-bundle-remote.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-remote-operations.d.ts +60 -0
- package/dist/nexus-cli/src/services/workforce-remote-operations.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/workforce-remote-operations.e2e.test.js +266 -0
- package/dist/nexus-cli/src/services/workforce-remote-operations.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-remote-operations.js +156 -0
- package/dist/nexus-cli/src/services/workforce-remote-operations.js.map +1 -0
- package/dist/nexus-cli/src/services/workspace-contract.d.ts +140 -0
- package/dist/nexus-cli/src/services/workspace-contract.js +744 -0
- package/dist/nexus-cli/src/services/workspace-contract.js.map +1 -0
- package/dist/nexus-cli/src/services/workspace-contract.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/workspace-contract.test.js +404 -0
- package/dist/nexus-cli/src/services/workspace-contract.test.js.map +1 -0
- package/dist/nexus-cli/src/services/workspace-dx.d.ts +31 -0
- package/dist/nexus-cli/src/services/workspace-dx.js +168 -0
- package/dist/nexus-cli/src/services/workspace-dx.js.map +1 -0
- package/dist/nexus-cli/src/services/workspace-health.d.ts +140 -0
- package/dist/nexus-cli/src/services/workspace-health.js +548 -0
- package/dist/nexus-cli/src/services/workspace-health.js.map +1 -0
- package/dist/nexus-cli/src/services/workspace-health.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/workspace-health.test.js +808 -0
- package/dist/nexus-cli/src/services/workspace-health.test.js.map +1 -0
- package/dist/nexus-cli/src/templates/class.ts.tpl +15 -0
- package/dist/nexus-cli/src/templates/component.ts.tpl +28 -0
- package/dist/nexus-cli/src/templates/project/nexus-project.json.tpl +6 -0
- package/dist/nexus-cli/src/templates/project/package.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/template-manifest.json +59 -0
- package/dist/nexus-cli/src/templates/project/templates/base-crm/README.md.tpl +41 -0
- package/dist/nexus-cli/src/templates/project/templates/base-crm/nexus-project.json.tpl +35 -0
- package/dist/nexus-cli/src/templates/project/templates/base-crm/package.json.tpl +24 -0
- package/dist/nexus-cli/src/templates/project/templates/base-crm/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/README.md.tpl +47 -0
- package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/nexus-project.json.tpl +39 -0
- package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/package.json.tpl +24 -0
- package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/scenario-payload/approvals.yaml +80 -0
- package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/scenario-payload/flows.yaml +77 -0
- package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/scenario-payload/records.yaml +2109 -0
- package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/README.md.tpl +45 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/deploy-artifacts/drill-code-extension-page.deploy.json +190 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/deploy-artifacts/runtime-account-data-page.png +0 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/deploy-artifacts/runtime-nav-page-formal.png +0 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/deploy-artifacts/runtime-nav-page.png +0 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/deploy-artifacts/runtime-page.png +0 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/env/drill.sandbox.yaml +4 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/nexus-project.json.tpl +25 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/package.json.tpl +26 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/preview/drill-code-extension-page.html +31 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/scripts/build-component.mjs +12 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/scripts/deploy-drill.mjs +341 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/src/components/drill-code-extension-page/index.js +70 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/src/metadata/drill-code-extension-page.manifest.json +63 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/src/tests/drill-code-extension-page.assertions.json +13 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/templates/empty/README.md.tpl +40 -0
- package/dist/nexus-cli/src/templates/project/templates/empty/nexus-project.json.tpl +32 -0
- package/dist/nexus-cli/src/templates/project/templates/empty/package.json.tpl +24 -0
- package/dist/nexus-cli/src/templates/project/templates/empty/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-education/README.md.tpl +36 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-education/nexus-project.json.tpl +37 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-education/package.json.tpl +24 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-education/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-finance/README.md.tpl +36 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-finance/nexus-project.json.tpl +37 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-finance/package.json.tpl +24 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-finance/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-healthcare/README.md.tpl +36 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-healthcare/nexus-project.json.tpl +37 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-healthcare/package.json.tpl +24 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-healthcare/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-partner-cloud/README.md.tpl +42 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-partner-cloud/nexus-project.json.tpl +36 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-partner-cloud/package.json.tpl +24 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-partner-cloud/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-retail/README.md.tpl +36 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-retail/nexus-project.json.tpl +37 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-retail/package.json.tpl +24 -0
- package/dist/nexus-cli/src/templates/project/templates/industry-retail/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/project/tsconfig.json.tpl +15 -0
- package/dist/nexus-cli/src/templates/test.ts.tpl +24 -0
- package/dist/nexus-cli/src/templates/trigger.ts.tpl +26 -0
- package/dist/nexus-cli/src/test-discovery.guard.test.d.ts +1 -0
- package/dist/nexus-cli/src/test-discovery.guard.test.js +83 -0
- package/dist/nexus-cli/src/test-discovery.guard.test.js.map +1 -0
- package/dist/nexus-cli/src/test-utils/target-context-fixture.d.ts +10 -0
- package/dist/nexus-cli/src/test-utils/target-context-fixture.js +49 -0
- package/dist/nexus-cli/src/test-utils/target-context-fixture.js.map +1 -0
- package/dist/nexus-cli/src/tests/revision-ledger/properties/generators.d.ts +8 -0
- package/dist/nexus-cli/src/tests/revision-ledger/properties/generators.js +85 -0
- package/dist/nexus-cli/src/tests/revision-ledger/properties/generators.js.map +1 -0
- package/dist/nexus-cli/src/utils/error-handler.d.ts +8 -0
- package/dist/nexus-cli/src/utils/error-handler.js +57 -0
- package/dist/nexus-cli/src/utils/error-handler.js.map +1 -0
- package/dist/nexus-cli/src/utils/logger.d.ts +6 -0
- package/dist/nexus-cli/src/utils/logger.js +14 -0
- package/dist/nexus-cli/src/utils/logger.js.map +1 -0
- package/dist/nexus-cli/src/utils/spinner.d.ts +2 -0
- package/dist/nexus-cli/src/utils/spinner.js +11 -0
- package/dist/nexus-cli/src/utils/spinner.js.map +1 -0
- package/dist/nexus-cli/src/utils/structured-error.d.ts +16 -0
- package/dist/nexus-cli/src/utils/structured-error.js +57 -0
- package/dist/nexus-cli/src/utils/structured-error.js.map +1 -0
- package/dist/nexus-cli/src/utils/table-formatter.d.ts +7 -0
- package/dist/nexus-cli/src/utils/table-formatter.js +31 -0
- package/dist/nexus-cli/src/utils/table-formatter.js.map +1 -0
- package/dist/shared/src/source-format/__tests__/page-source-file.properties.test.d.ts +1 -0
- package/dist/shared/src/source-format/__tests__/page-source-file.properties.test.js +167 -0
- package/dist/shared/src/source-format/__tests__/page-source-file.properties.test.js.map +1 -0
- package/dist/shared/src/source-format/index.d.ts +1 -0
- package/dist/shared/src/source-format/index.js +16 -0
- package/dist/shared/src/source-format/index.js.map +1 -0
- package/dist/shared/src/source-format/page-source-file.d.ts +53 -0
- package/dist/shared/src/source-format/page-source-file.js +214 -0
- package/dist/shared/src/source-format/page-source-file.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +39 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.2.1 - 2026-07-22
|
|
4
|
+
|
|
5
|
+
- Publish the official package under the available organization scope `@nexusclawhq/cli`; the executable remains `nexus`.
|
|
6
|
+
- Add one auditable, fail-closed `TargetContext` resolver for remote DX workflows.
|
|
7
|
+
- Resolve `defaultEnvironment` descriptors automatically and keep `defaultOrg` alias-only.
|
|
8
|
+
- Bind workspace UUID, org credential, and instance URL to the same target; reject mismatches before network I/O.
|
|
9
|
+
- Add target flags and redacted target summaries to pull, diff, install, workspace pull/push, promote, rollback, and replay paths.
|
|
10
|
+
- Ensure pull dry-run writes no source files or page baselines and preserve push conflict safeguards.
|
|
11
|
+
- Ship build provenance metadata and clean-machine package safeguards.
|
package/README.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# @nexusclawhq/cli
|
|
2
|
+
|
|
3
|
+
NexusClaw developer CLI for authenticated workspace source, package, and deployment workflows.
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
npm install --global @nexusclawhq/cli
|
|
7
|
+
nexus --version
|
|
8
|
+
nexus org login-web --instance-url https://your-nexusclaw.example --alias dev
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Remote DX commands resolve one fail-closed target from `--workspace-id`, `--target-org`, the selected environment descriptor, and the authenticated org credential. `defaultOrg` is always an org alias and is never sent as a workspace ID.
|
|
12
|
+
|
|
13
|
+
Node.js 18 or newer is required. Credentials are encrypted under `~/.nexusclaw` by default; set `NEXUS_CLI_HOME` to use an isolated credential directory in CI.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"packageName": "@nexusclawhq/cli",
|
|
3
|
+
"version": "0.2.1",
|
|
4
|
+
"gitSha": "fef75898b6fb7a76b839bb379665d911b70e250c",
|
|
5
|
+
"ciRunId": "29895567648",
|
|
6
|
+
"contentDigest": "sha256:f4a32d2c47d1a7afbdea808003a59413bca9989a3e7e0162c78357d6b42bbca8",
|
|
7
|
+
"generatedAt": "2026-07-22T06:09:28.643Z"
|
|
8
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { AuthoringDiagnostic } from '../index';
|
|
2
|
+
/** A capability call extracted from the source. */
|
|
3
|
+
export interface ExtractedCapabilityCall {
|
|
4
|
+
readonly namespace: 'records' | 'connectors' | 'ai';
|
|
5
|
+
readonly method: string;
|
|
6
|
+
/** The key field that identifies the capability (objectApiName / bindingKey / policyKey). */
|
|
7
|
+
readonly keyField: string | null;
|
|
8
|
+
}
|
|
9
|
+
export interface CapabilityExtractionResult {
|
|
10
|
+
readonly calls: ReadonlyArray<ExtractedCapabilityCall>;
|
|
11
|
+
readonly diagnostics: ReadonlyArray<AuthoringDiagnostic>;
|
|
12
|
+
}
|
|
13
|
+
/** Declared capabilities from the export descriptor (for extracted-vs-declared comparison). */
|
|
14
|
+
export interface DeclaredCapabilities {
|
|
15
|
+
readonly records?: ReadonlyArray<{
|
|
16
|
+
objectApiName: string;
|
|
17
|
+
operations: ReadonlyArray<string>;
|
|
18
|
+
}>;
|
|
19
|
+
readonly connectors?: ReadonlyArray<{
|
|
20
|
+
bindingKey: string;
|
|
21
|
+
operations: ReadonlyArray<string>;
|
|
22
|
+
}>;
|
|
23
|
+
readonly ai?: ReadonlyArray<{
|
|
24
|
+
policyKey: string;
|
|
25
|
+
outputSchemaRef: string;
|
|
26
|
+
}>;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Extract capability calls from an ACTION source + enforce direct-literal
|
|
30
|
+
* rules (design §7.3, tasks 3.9).
|
|
31
|
+
*/
|
|
32
|
+
export declare function extractCapabilities(source: string): CapabilityExtractionResult;
|
|
33
|
+
/**
|
|
34
|
+
* Compare extracted capabilities against declared capabilities (task 3.10).
|
|
35
|
+
* Both undeclared (used but not declared) AND unused (declared but not called)
|
|
36
|
+
* are errors.
|
|
37
|
+
*/
|
|
38
|
+
export declare function compareCapabilities(extracted: CapabilityExtractionResult, declared: DeclaredCapabilities): AuthoringDiagnostic[];
|
package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/analysis/capability-extractor.js
ADDED
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.extractCapabilities = extractCapabilities;
|
|
37
|
+
exports.compareCapabilities = compareCapabilities;
|
|
38
|
+
/**
|
|
39
|
+
* Capability extractor — §7.3 capability syntax + extracted-vs-declared
|
|
40
|
+
* comparison (tasks 3.9 / 3.10).
|
|
41
|
+
*
|
|
42
|
+
* Extracts every `ctx.records.<method>()`, `ctx.connectors.call(...)`, and
|
|
43
|
+
* `ctx.ai.generate(...)` call from an ACTION source, enforcing the frozen
|
|
44
|
+
* direct-literal rules:
|
|
45
|
+
* - capability calls must be direct member access on `ctx` (no
|
|
46
|
+
* aliasing / destructuring / bracket / computed names);
|
|
47
|
+
* - every capability call argument must be an inline object literal (no spread
|
|
48
|
+
* / identifier / factory / computed keys);
|
|
49
|
+
* - `objectApiName` / field names / `bindingKey` / `operation` / `policyKey`
|
|
50
|
+
* / `outputSchemaRef` must be string literals;
|
|
51
|
+
* - capability Promises must be directly `await`ed (no Promise.all/race/any/
|
|
52
|
+
* allSettled, no storing/passing host-call Promises);
|
|
53
|
+
* - extracted vs declared capabilities compared exactly; undeclared AND unused
|
|
54
|
+
* are both errors.
|
|
55
|
+
*/
|
|
56
|
+
const ts = __importStar(require("typescript"));
|
|
57
|
+
function isCtxIdentifier(node) {
|
|
58
|
+
return ts.isIdentifier(node) && node.text === 'ctx';
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Extract capability calls from an ACTION source + enforce direct-literal
|
|
62
|
+
* rules (design §7.3, tasks 3.9).
|
|
63
|
+
*/
|
|
64
|
+
function extractCapabilities(source) {
|
|
65
|
+
const sourceFile = ts.createSourceFile('action.ts', source, ts.ScriptTarget.ES2022, true);
|
|
66
|
+
const calls = [];
|
|
67
|
+
const diagnostics = [];
|
|
68
|
+
const report = (node, message, code = 'CODE_CAPABILITY_CALL_MUST_BE_INLINE') => {
|
|
69
|
+
const { line, character } = sourceFile.getLineAndCharacterOfPosition(node.getStart());
|
|
70
|
+
diagnostics.push({
|
|
71
|
+
code,
|
|
72
|
+
severity: 'error',
|
|
73
|
+
file: 'action.ts',
|
|
74
|
+
line: line + 1,
|
|
75
|
+
column: character + 1,
|
|
76
|
+
message,
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Check whether a node is `ctx.<namespace>.<method>(...)` — the ONLY valid
|
|
81
|
+
* capability call form.
|
|
82
|
+
*/
|
|
83
|
+
function visit(node) {
|
|
84
|
+
if (ts.isAwaitExpression(node)) {
|
|
85
|
+
// The operand should be a capability call or a pure expression.
|
|
86
|
+
visit(node.expression);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
if (ts.isCallExpression(node)) {
|
|
90
|
+
const expr = node.expression;
|
|
91
|
+
// ctx.records.get(...) → CallExpression(PropertyAccessExpression(PropertyAccessExpression(ctx, records), get), args)
|
|
92
|
+
// expr = PropertyAccessExpression(inner=ctx.records, name=get)
|
|
93
|
+
if (ts.isPropertyAccessExpression(expr)) {
|
|
94
|
+
const method = expr.name.text;
|
|
95
|
+
const inner = expr.expression; // ctx.records (PropertyAccessExpression)
|
|
96
|
+
if (ts.isPropertyAccessExpression(inner) && isCtxIdentifier(inner.expression)) {
|
|
97
|
+
const namespace = inner.name.text;
|
|
98
|
+
if (namespace === 'records' || namespace === 'connectors' || namespace === 'ai') {
|
|
99
|
+
// Valid capability namespace. Extract the key field + enforce literal args.
|
|
100
|
+
const keyField = extractKeyField(node, namespace, method);
|
|
101
|
+
calls.push({ namespace, method, keyField });
|
|
102
|
+
// Enforce: arguments must be inline object literals (no spread/identifier).
|
|
103
|
+
enforceLiteralArgs(node, report);
|
|
104
|
+
enforceFrozenLiteralFields(node, namespace, report);
|
|
105
|
+
// Enforce: the call must be directly awaited (parent is AwaitExpression).
|
|
106
|
+
enforceDirectlyAwaited(node, report);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
else if (ts.isElementAccessExpression(expr)) {
|
|
111
|
+
const inner = expr.expression;
|
|
112
|
+
if (ts.isPropertyAccessExpression(inner) && isCtxIdentifier(inner.expression)) {
|
|
113
|
+
const namespace = inner.name.text;
|
|
114
|
+
if (namespace === 'records' || namespace === 'connectors' || namespace === 'ai') {
|
|
115
|
+
report(expr, 'bracket/computed capability method access is forbidden');
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
// Detect aliasing: `const r = ctx.records;` or `const { records } = ctx;`
|
|
121
|
+
detectAliasing(node, report);
|
|
122
|
+
ts.forEachChild(node, visit);
|
|
123
|
+
}
|
|
124
|
+
visit(sourceFile);
|
|
125
|
+
// Deduplicate calls by (namespace, method, keyField).
|
|
126
|
+
const seen = new Set();
|
|
127
|
+
const unique = calls.filter((c) => {
|
|
128
|
+
const k = `${c.namespace}.${c.method}.${c.keyField ?? ''}`;
|
|
129
|
+
if (seen.has(k))
|
|
130
|
+
return false;
|
|
131
|
+
seen.add(k);
|
|
132
|
+
return true;
|
|
133
|
+
});
|
|
134
|
+
return { calls: unique, diagnostics };
|
|
135
|
+
}
|
|
136
|
+
/** Extract the identifying key field from a capability call's arguments. */
|
|
137
|
+
function extractKeyField(call, namespace, _method) {
|
|
138
|
+
const firstArg = call.arguments[0];
|
|
139
|
+
if (!firstArg || !ts.isObjectLiteralExpression(firstArg))
|
|
140
|
+
return null;
|
|
141
|
+
const keyPropName = namespace === 'records' ? 'objectApiName' :
|
|
142
|
+
namespace === 'connectors' ? 'bindingKey' :
|
|
143
|
+
'policyKey';
|
|
144
|
+
for (const prop of firstArg.properties) {
|
|
145
|
+
if (ts.isPropertyAssignment(prop) && prop.name.getText() === keyPropName && ts.isStringLiteral(prop.initializer)) {
|
|
146
|
+
return prop.initializer.text;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
return null;
|
|
150
|
+
}
|
|
151
|
+
/** Enforce that capability call arguments are inline object literals (§7.3). */
|
|
152
|
+
function enforceLiteralArgs(call, report) {
|
|
153
|
+
for (const arg of call.arguments) {
|
|
154
|
+
if (!ts.isObjectLiteralExpression(arg)) {
|
|
155
|
+
report(arg, 'capability call argument must be an inline object literal');
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
for (const prop of arg.properties) {
|
|
159
|
+
if (ts.isSpreadAssignment(prop)) {
|
|
160
|
+
report(prop, 'spread in capability call argument is forbidden');
|
|
161
|
+
}
|
|
162
|
+
if (!ts.isPropertyAssignment(prop) || ts.isComputedPropertyName(prop.name)) {
|
|
163
|
+
report(prop, 'computed property name in capability call argument is forbidden');
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
function findProperty(object, name) {
|
|
169
|
+
return object.properties.find((prop) => ts.isPropertyAssignment(prop)
|
|
170
|
+
&& !ts.isComputedPropertyName(prop.name)
|
|
171
|
+
&& (ts.isIdentifier(prop.name) || ts.isStringLiteral(prop.name))
|
|
172
|
+
&& prop.name.text === name);
|
|
173
|
+
}
|
|
174
|
+
/** Enforce the descriptor-relevant literal fields frozen by design §7.3. */
|
|
175
|
+
function enforceFrozenLiteralFields(call, namespace, report) {
|
|
176
|
+
const arg = call.arguments[0];
|
|
177
|
+
if (!arg || !ts.isObjectLiteralExpression(arg))
|
|
178
|
+
return;
|
|
179
|
+
const requiredStrings = namespace === 'records'
|
|
180
|
+
? ['objectApiName']
|
|
181
|
+
: namespace === 'connectors'
|
|
182
|
+
? ['bindingKey', 'operation']
|
|
183
|
+
: ['policyKey', 'outputSchemaRef'];
|
|
184
|
+
for (const name of requiredStrings) {
|
|
185
|
+
const prop = findProperty(arg, name);
|
|
186
|
+
if (!prop || !ts.isStringLiteral(prop.initializer)) {
|
|
187
|
+
report(prop?.initializer ?? arg, `${name} must be an inline string literal`);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
if (namespace !== 'records')
|
|
191
|
+
return;
|
|
192
|
+
const select = findProperty(arg, 'select');
|
|
193
|
+
if (select && (!ts.isArrayLiteralExpression(select.initializer)
|
|
194
|
+
|| select.initializer.elements.some((entry) => !ts.isStringLiteral(entry)))) {
|
|
195
|
+
report(select.initializer, 'record select fields must be an inline string-literal array');
|
|
196
|
+
}
|
|
197
|
+
const orderBy = findProperty(arg, 'orderBy');
|
|
198
|
+
if (orderBy && ts.isArrayLiteralExpression(orderBy.initializer)) {
|
|
199
|
+
for (const entry of orderBy.initializer.elements) {
|
|
200
|
+
if (!ts.isObjectLiteralExpression(entry)) {
|
|
201
|
+
report(entry, 'record orderBy entries must be inline object literals');
|
|
202
|
+
continue;
|
|
203
|
+
}
|
|
204
|
+
const field = findProperty(entry, 'field');
|
|
205
|
+
if (!field || !ts.isStringLiteral(field.initializer)) {
|
|
206
|
+
report(field?.initializer ?? entry, 'record orderBy field must be an inline string literal');
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
const where = findProperty(arg, 'where');
|
|
211
|
+
if (where)
|
|
212
|
+
enforceInlineFilter(where.initializer, report);
|
|
213
|
+
}
|
|
214
|
+
function enforceInlineFilter(node, report) {
|
|
215
|
+
if (!ts.isObjectLiteralExpression(node)) {
|
|
216
|
+
report(node, 'record where filter must be an inline object literal');
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
const op = findProperty(node, 'op');
|
|
220
|
+
if (!op || !ts.isStringLiteral(op.initializer)) {
|
|
221
|
+
report(op?.initializer ?? node, 'record filter op must be an inline string literal');
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
if (op.initializer.text === 'and' || op.initializer.text === 'or') {
|
|
225
|
+
const filters = findProperty(node, 'filters');
|
|
226
|
+
if (!filters || !ts.isArrayLiteralExpression(filters.initializer)) {
|
|
227
|
+
report(filters?.initializer ?? node, 'record filters must be an inline array');
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
for (const filter of filters.initializer.elements)
|
|
231
|
+
enforceInlineFilter(filter, report);
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
const field = findProperty(node, 'field');
|
|
235
|
+
if (!field || !ts.isStringLiteral(field.initializer)) {
|
|
236
|
+
report(field?.initializer ?? node, 'record filter field must be an inline string literal');
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
/** Enforce that a capability call is directly awaited (§7.3). */
|
|
240
|
+
function enforceDirectlyAwaited(call, report) {
|
|
241
|
+
const parent = call.parent;
|
|
242
|
+
if (!parent || !ts.isAwaitExpression(parent)) {
|
|
243
|
+
let current = parent;
|
|
244
|
+
while (current && !ts.isFunctionLike(current)) {
|
|
245
|
+
if (ts.isCallExpression(current)
|
|
246
|
+
&& ts.isPropertyAccessExpression(current.expression)
|
|
247
|
+
&& current.expression.expression.getText() === 'Promise'
|
|
248
|
+
&& ['all', 'race', 'any', 'allSettled'].includes(current.expression.name.text)) {
|
|
249
|
+
report(call, 'concurrent host capability calls are forbidden', 'CODE_CONCURRENT_HOST_CALL_FORBIDDEN');
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
current = current.parent;
|
|
253
|
+
}
|
|
254
|
+
report(call, 'capability call must be directly awaited (Promise must not be stored, passed or returned)');
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
/** Detect capability aliasing (§7.3): `const r = ctx.records` or destructuring. */
|
|
258
|
+
function detectAliasing(node, report) {
|
|
259
|
+
if (ts.isVariableDeclaration(node) && node.initializer) {
|
|
260
|
+
if (ts.isPropertyAccessExpression(node.initializer) && isCtxIdentifier(node.initializer.expression)) {
|
|
261
|
+
const ns = node.initializer.name.text;
|
|
262
|
+
if (ns === 'records' || ns === 'connectors' || ns === 'ai') {
|
|
263
|
+
report(node, `aliasing ctx.${ns} is forbidden (use ctx.${ns} directly)`);
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
if (ts.isVariableDeclaration(node) && node.initializer && isCtxIdentifier(node.initializer) && ts.isObjectBindingPattern(node.name)) {
|
|
268
|
+
for (const elem of node.name.elements) {
|
|
269
|
+
if (ts.isBindingElement(elem) && (elem.name.getText() === 'records' || elem.name.getText() === 'connectors' || elem.name.getText() === 'ai')) {
|
|
270
|
+
report(node, `destructuring ctx.{${elem.name.getText()}} is forbidden (use ctx.${elem.name.getText()} directly)`);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Compare extracted capabilities against declared capabilities (task 3.10).
|
|
277
|
+
* Both undeclared (used but not declared) AND unused (declared but not called)
|
|
278
|
+
* are errors.
|
|
279
|
+
*/
|
|
280
|
+
function compareCapabilities(extracted, declared) {
|
|
281
|
+
const diagnostics = [];
|
|
282
|
+
// --- Records: undeclared objectApiName + unused declared ---
|
|
283
|
+
const usedRecordObjects = new Set(extracted.calls.filter((c) => c.namespace === 'records').map((c) => c.keyField).filter(Boolean));
|
|
284
|
+
const declaredRecordObjects = new Set((declared.records ?? []).map((r) => r.objectApiName));
|
|
285
|
+
for (const used of usedRecordObjects) {
|
|
286
|
+
if (!declaredRecordObjects.has(used)) {
|
|
287
|
+
diagnostics.push({ code: 'CODE_CAPABILITY_UNDECLARED', severity: 'error', message: `records access to undeclared objectApiName '${used}'` });
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
for (const declared_ of declaredRecordObjects) {
|
|
291
|
+
if (!usedRecordObjects.has(declared_)) {
|
|
292
|
+
diagnostics.push({ code: 'CODE_CAPABILITY_NOT_ALLOWED', severity: 'warning', message: `declared records objectApiName '${declared_}' is never used` });
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
// --- Connectors: undeclared bindingKey + unused declared ---
|
|
296
|
+
const usedBindingKeys = new Set(extracted.calls.filter((c) => c.namespace === 'connectors').map((c) => c.keyField).filter(Boolean));
|
|
297
|
+
const declaredBindingKeys = new Set((declared.connectors ?? []).map((c) => c.bindingKey));
|
|
298
|
+
for (const used of usedBindingKeys) {
|
|
299
|
+
if (!declaredBindingKeys.has(used)) {
|
|
300
|
+
diagnostics.push({ code: 'CODE_CAPABILITY_UNDECLARED', severity: 'error', message: `connector call to undeclared bindingKey '${used}'` });
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
for (const declared_ of declaredBindingKeys) {
|
|
304
|
+
if (!usedBindingKeys.has(declared_)) {
|
|
305
|
+
diagnostics.push({ code: 'CODE_CAPABILITY_NOT_ALLOWED', severity: 'warning', message: `declared connector bindingKey '${declared_}' is never used` });
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
// --- AI: undeclared policyKey + unused declared ---
|
|
309
|
+
const usedPolicyKeys = new Set(extracted.calls.filter((c) => c.namespace === 'ai').map((c) => c.keyField).filter(Boolean));
|
|
310
|
+
const declaredPolicyKeys = new Set((declared.ai ?? []).map((a) => a.policyKey));
|
|
311
|
+
for (const used of usedPolicyKeys) {
|
|
312
|
+
if (!declaredPolicyKeys.has(used)) {
|
|
313
|
+
diagnostics.push({ code: 'CODE_CAPABILITY_UNDECLARED', severity: 'error', message: `AI call to undeclared policyKey '${used}'` });
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
for (const declared_ of declaredPolicyKeys) {
|
|
317
|
+
if (!usedPolicyKeys.has(declared_)) {
|
|
318
|
+
diagnostics.push({ code: 'CODE_CAPABILITY_NOT_ALLOWED', severity: 'warning', message: `declared AI policyKey '${declared_}' is never used` });
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
return diagnostics;
|
|
322
|
+
}
|
|
323
|
+
//# sourceMappingURL=capability-extractor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability-extractor.js","sourceRoot":"","sources":["../../src/analysis/capability-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { AuthoringDiagnostic } from '../index';
|
|
2
|
+
/**
|
|
3
|
+
* Analyze an ACTION source for forbidden constructs (design §7.3).
|
|
4
|
+
* Returns diagnostics for every violation found.
|
|
5
|
+
*/
|
|
6
|
+
export declare function analyzeDeniedConstructs(source: string): AuthoringDiagnostic[];
|
package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/analysis/code-static-analysis.js
ADDED
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.analyzeDeniedConstructs = analyzeDeniedConstructs;
|
|
37
|
+
/**
|
|
38
|
+
* Static analyzer — §7.3 deny list (executable-asset task 3.9).
|
|
39
|
+
*
|
|
40
|
+
* Rejects every forbidden construct from an ACTION source via AST traversal.
|
|
41
|
+
* This is defense-in-depth that runs BEFORE the verified-isolate boundary; it
|
|
42
|
+
* never substitutes for real-cluster escape evidence (§7.3 line 888).
|
|
43
|
+
*
|
|
44
|
+
* The deny list (frozen by design §7.3):
|
|
45
|
+
* - non-type import, dynamic import, `require`;
|
|
46
|
+
* - `eval`, `Function` constructor, WebAssembly;
|
|
47
|
+
* - process / global / module manipulation;
|
|
48
|
+
* - `Date.now` / `new Date()` without host clock;
|
|
49
|
+
* - `Math.random` / crypto randomness;
|
|
50
|
+
* - fetch / XMLHttpRequest / WebSocket / net / http / https / dns / tls;
|
|
51
|
+
* - fs / path / os / child_process / worker_threads / vm;
|
|
52
|
+
* - prototype mutation, constructor-chain escape, `__proto__`;
|
|
53
|
+
* - string/code generation intended for execution.
|
|
54
|
+
*/
|
|
55
|
+
const ts = __importStar(require("typescript"));
|
|
56
|
+
/** Forbidden global identifiers (property access or free variable). */
|
|
57
|
+
const FORBIDDEN_GLOBALS = new Set([
|
|
58
|
+
'process',
|
|
59
|
+
'global',
|
|
60
|
+
'globalThis',
|
|
61
|
+
'module',
|
|
62
|
+
'exports',
|
|
63
|
+
'require',
|
|
64
|
+
'__dirname',
|
|
65
|
+
'__filename',
|
|
66
|
+
'Buffer',
|
|
67
|
+
'fetch',
|
|
68
|
+
'XMLHttpRequest',
|
|
69
|
+
'WebSocket',
|
|
70
|
+
'setTimeout',
|
|
71
|
+
'setInterval',
|
|
72
|
+
'setImmediate',
|
|
73
|
+
]);
|
|
74
|
+
/** Forbidden property names accessed on any object. */
|
|
75
|
+
const FORBIDDEN_PROPERTIES = new Set([
|
|
76
|
+
'__proto__',
|
|
77
|
+
'constructor',
|
|
78
|
+
'prototype',
|
|
79
|
+
]);
|
|
80
|
+
/** Forbidden module specifiers in import/require. */
|
|
81
|
+
const FORBIDDEN_MODULES = new Set([
|
|
82
|
+
'fs',
|
|
83
|
+
'path',
|
|
84
|
+
'os',
|
|
85
|
+
'child_process',
|
|
86
|
+
'worker_threads',
|
|
87
|
+
'vm',
|
|
88
|
+
'net',
|
|
89
|
+
'http',
|
|
90
|
+
'https',
|
|
91
|
+
'dns',
|
|
92
|
+
'tls',
|
|
93
|
+
'crypto',
|
|
94
|
+
'url',
|
|
95
|
+
'querystring',
|
|
96
|
+
'stream',
|
|
97
|
+
'zlib',
|
|
98
|
+
'util',
|
|
99
|
+
]);
|
|
100
|
+
/** Forbidden global constructors (called as `new X(...)` or `X(...)`). */
|
|
101
|
+
const FORBIDDEN_CALLEES = new Set([
|
|
102
|
+
'Function',
|
|
103
|
+
'AsyncFunction',
|
|
104
|
+
'GeneratorFunction',
|
|
105
|
+
'WebAssembly',
|
|
106
|
+
'eval',
|
|
107
|
+
]);
|
|
108
|
+
/** Convert a TS node to file/line/column. */
|
|
109
|
+
function nodeLocation(sourceFile, node) {
|
|
110
|
+
const { line, character } = sourceFile.getLineAndCharacterOfPosition(node.getStart());
|
|
111
|
+
return { line: line + 1, column: character + 1 };
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Analyze an ACTION source for forbidden constructs (design §7.3).
|
|
115
|
+
* Returns diagnostics for every violation found.
|
|
116
|
+
*/
|
|
117
|
+
function analyzeDeniedConstructs(source) {
|
|
118
|
+
const sourceFile = ts.createSourceFile('action.ts', source, ts.ScriptTarget.ES2022, true);
|
|
119
|
+
const diagnostics = [];
|
|
120
|
+
function report(node, code, message) {
|
|
121
|
+
const loc = nodeLocation(sourceFile, node);
|
|
122
|
+
diagnostics.push({
|
|
123
|
+
code,
|
|
124
|
+
severity: 'error',
|
|
125
|
+
file: 'action.ts',
|
|
126
|
+
line: loc.line,
|
|
127
|
+
column: loc.column,
|
|
128
|
+
message,
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
function visit(node) {
|
|
132
|
+
// --- Import / require / dynamic import ---
|
|
133
|
+
if (ts.isImportDeclaration(node)) {
|
|
134
|
+
const isTypeOnly = node.importClause?.isTypeOnly ?? false;
|
|
135
|
+
if (!isTypeOnly) {
|
|
136
|
+
report(node, 'CODE_IMPORT_FORBIDDEN', 'non-type import is forbidden (only `import type` from the SDK is allowed)');
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
// Even type-only imports: check the module specifier.
|
|
140
|
+
const moduleText = ts.isStringLiteral(node.moduleSpecifier) ? node.moduleSpecifier.text : '';
|
|
141
|
+
if (moduleText && isForbiddenModule(moduleText)) {
|
|
142
|
+
report(node, 'CODE_IMPORT_FORBIDDEN', `import from forbidden module '${moduleText}'`);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
if (ts.isCallExpression(node) && node.expression.getText() === 'require') {
|
|
147
|
+
report(node, 'CODE_IMPORT_FORBIDDEN', 'require() is forbidden');
|
|
148
|
+
}
|
|
149
|
+
if (ts.isCallExpression(node) && node.expression.kind === ts.SyntaxKind.ImportKeyword) {
|
|
150
|
+
report(node, 'CODE_IMPORT_FORBIDDEN', 'dynamic import() is forbidden');
|
|
151
|
+
}
|
|
152
|
+
// --- eval / Function constructor / WebAssembly ---
|
|
153
|
+
if (ts.isCallExpression(node) || ts.isNewExpression(node)) {
|
|
154
|
+
const calleeText = node.expression.getText();
|
|
155
|
+
if (FORBIDDEN_CALLEES.has(calleeText)) {
|
|
156
|
+
report(node, 'CODE_STATIC_ANALYSIS_FAILED', `'${calleeText}' constructor/eval is forbidden (code generation)`);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
// --- Date.now / new Date() / Math.random ---
|
|
160
|
+
if (ts.isCallExpression(node)) {
|
|
161
|
+
const expr = node.expression;
|
|
162
|
+
if (ts.isPropertyAccessExpression(expr)) {
|
|
163
|
+
const fullText = `${expr.expression.getText()}.${expr.name.text}`;
|
|
164
|
+
if (fullText === 'Date.now') {
|
|
165
|
+
report(node, 'CODE_STATIC_ANALYSIS_FAILED', 'Date.now() is forbidden (use ctx.clock.executionStartedAt)');
|
|
166
|
+
}
|
|
167
|
+
if (fullText === 'Math.random') {
|
|
168
|
+
report(node, 'CODE_STATIC_ANALYSIS_FAILED', 'Math.random() is forbidden (no host randomness)');
|
|
169
|
+
}
|
|
170
|
+
if (fullText === 'crypto.getRandomValues' || fullText === 'crypto.randomBytes') {
|
|
171
|
+
report(node, 'CODE_STATIC_ANALYSIS_FAILED', 'crypto randomness is forbidden');
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
if (ts.isNewExpression(node) && node.expression.getText() === 'Date') {
|
|
176
|
+
report(node, 'CODE_STATIC_ANALYSIS_FAILED', 'new Date() is forbidden (use ctx.clock.executionStartedAt)');
|
|
177
|
+
}
|
|
178
|
+
// --- Forbidden globals (free identifiers) ---
|
|
179
|
+
if (ts.isIdentifier(node) && FORBIDDEN_GLOBALS.has(node.text)) {
|
|
180
|
+
// Only flag when it's used as a free variable, not a property name.
|
|
181
|
+
const parent = node.parent;
|
|
182
|
+
if (parent && !ts.isPropertyAccessExpression(parent) && !ts.isPropertyAssignment(parent) && !ts.isPropertySignature(parent)) {
|
|
183
|
+
// Don't flag if it's a function/method parameter shadowing the global.
|
|
184
|
+
if (!isParameterName(node)) {
|
|
185
|
+
report(node, 'CODE_STATIC_ANALYSIS_FAILED', `'${node.text}' global is forbidden`);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
// --- __proto__ / constructor / prototype property access ---
|
|
190
|
+
if (ts.isPropertyAccessExpression(node) || ts.isElementAccessExpression(node)) {
|
|
191
|
+
const propName = ts.isPropertyAccessExpression(node) ? node.name.text : (ts.isStringLiteral(node.argumentExpression) ? node.argumentExpression.text : '');
|
|
192
|
+
if (FORBIDDEN_PROPERTIES.has(propName)) {
|
|
193
|
+
report(node, 'CODE_STATIC_ANALYSIS_FAILED', `'${propName}' property access is forbidden (prototype escape)`);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
// --- Promise.all / race / any / allSettled (capability combinators) ---
|
|
197
|
+
if (ts.isCallExpression(node) && ts.isPropertyAccessExpression(node.expression)) {
|
|
198
|
+
const method = node.expression.name.text;
|
|
199
|
+
if (['all', 'race', 'any', 'allSettled'].includes(method) && node.expression.expression.getText() === 'Promise') {
|
|
200
|
+
report(node, 'CODE_STATIC_ANALYSIS_FAILED', `Promise.${method} is forbidden (capability calls must be directly awaited)`);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
ts.forEachChild(node, visit);
|
|
204
|
+
}
|
|
205
|
+
visit(sourceFile);
|
|
206
|
+
return diagnostics;
|
|
207
|
+
}
|
|
208
|
+
function isForbiddenModule(specifier) {
|
|
209
|
+
// Node built-in or node: prefix.
|
|
210
|
+
if (specifier.startsWith('node:'))
|
|
211
|
+
return true;
|
|
212
|
+
return FORBIDDEN_MODULES.has(specifier);
|
|
213
|
+
}
|
|
214
|
+
function isParameterName(node) {
|
|
215
|
+
let current = node.parent;
|
|
216
|
+
while (current) {
|
|
217
|
+
if ((ts.isParameter(current) || ts.isVariableDeclaration(current) || ts.isBindingElement(current)) &&
|
|
218
|
+
(current.name === node || (ts.isArrayBindingPattern(current.name) || ts.isObjectBindingPattern(current.name)))) {
|
|
219
|
+
return true;
|
|
220
|
+
}
|
|
221
|
+
current = current.parent;
|
|
222
|
+
}
|
|
223
|
+
return false;
|
|
224
|
+
}
|
|
225
|
+
//# sourceMappingURL=code-static-analysis.js.map
|