apexrest 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +90 -134
- package/dist/codex-compat/.claude-plugin/marketplace.json +20 -0
- package/dist/codex-compat/plugins/apexrest-apex/.claude-plugin/plugin.json +28 -0
- package/dist/codex-compat/plugins/apexrest-apex/.codex-plugin/plugin.json +7 -7
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aanalytics%2Fstatus-summary%401.0.0.json +19 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Acrud%2Freport-dialog%401.0.0.json +19 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aread%2Fdetail%401.0.0.json +19 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aread%2Ffiltered-list%401.0.0.json +19 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aread%2Fhistory%401.0.0.json +19 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aread%2Fmaster-detail%401.0.0.json +19 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/generator.json +5 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/manifest.json +29 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/analytics/status-summary/1.0.0/block.yaml +59 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/analytics/status-summary/1.0.0/renderer.json +14 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/crud/report-dialog/1.0.0/block.yaml +66 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/crud/report-dialog/1.0.0/renderer.json +14 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/detail/1.0.0/block.yaml +59 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/detail/1.0.0/renderer.json +14 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/filtered-list/1.0.0/block.yaml +59 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/filtered-list/1.0.0/renderer.json +14 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/history/1.0.0/block.yaml +59 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/history/1.0.0/renderer.json +14 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/master-detail/1.0.0/block.yaml +59 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/master-detail/1.0.0/renderer.json +14 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/profiles.json +10 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/revocations.json +1 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blueprints/crm.yaml +172 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blueprints/index.json +12 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/blueprints/service-desk.yaml +120 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-allocation.schema.json +33 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-block.schema.json +208 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-blueprint.schema.json +665 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-command.schema.json +106 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-contract.schema.json +174 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-diagnostic.schema.json +26 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-entity.schema.json +142 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-evidence.schema.json +95 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-field.schema.json +54 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-instance.schema.json +117 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-lock.schema.json +54 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-operation.schema.json +55 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-owner.schema.json +105 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-parameters.schema.json +61 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-plan.schema.json +1011 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-renderer.schema.json +69 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-state.schema.json +146 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/deploy-plan.schema.json +754 -169
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/operations.schema.json +525 -256
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/policy.schema.json +21 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/project.schema.json +17 -7
- package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/sync-state.schema.json +238 -0
- package/dist/codex-compat/plugins/apexrest-apex/resources/templates/blank-app/README.md +0 -2
- package/dist/codex-compat/plugins/apexrest-apex/resources/templates/customer-crm/README.md +1 -3
- package/dist/codex-compat/plugins/apexrest-apex/resources/templates/existing-app/README.md +0 -2
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__yaml__LICENSE +13 -0
- package/dist/codex-compat/plugins/apexrest-apex/runtime/apexrest.mjs +81 -45
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-5PCC7GZM.mjs +4090 -0
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-BVPAS3TD.mjs +18 -0
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-CVMECW6D.mjs +65 -0
- package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-3MDDJFXN.mjs → chunk-JYN3YHP3.mjs} +4220 -10616
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-KGTE7Q5Y.mjs +23 -0
- package/dist/{runtime/chunk-HOKFFGSZ.mjs → codex-compat/plugins/apexrest-apex/runtime/chunk-KKRFM7Q7.mjs} +21 -4
- package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-2VBZESVC.mjs → chunk-MNU54A7W.mjs} +7 -1
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-N4C2SKCN.mjs +6912 -0
- package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-WK5GP4ES.mjs → chunk-P3CVQAZW.mjs} +822 -102
- package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-2ZUNLCLK.mjs → chunk-QKYF6N6U.mjs} +210 -112
- package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-S24BD6PY.mjs → chunk-RBJJNQ5O.mjs} +7 -7
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-TMSMKVRP.mjs +10367 -0
- package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-2Z3BZF66.mjs → chunk-WPS3CSQJ.mjs} +124 -11
- package/dist/codex-compat/plugins/apexrest-apex/runtime/mcp.mjs +5 -10
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-apexlang/SKILL.md +22 -25
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-apexlang/agents/openai.yaml +3 -3
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-apexlang/references/component-routes.md +1 -5
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-pattern-catalog/SKILL.md +4 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-pattern-catalog/agents/openai.yaml +1 -1
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-pattern-catalog/references/capture-and-curation.md +2 -2
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-safety/SKILL.md +18 -0
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-safety/agents/openai.yaml +4 -0
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-setup/SKILL.md +20 -10
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-setup/agents/openai.yaml +3 -3
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-work/SKILL.md +11 -6
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-work/agents/openai.yaml +3 -3
- package/dist/resources/blocks/evidence/block%3Aanalytics%2Fstatus-summary%401.0.0.json +19 -0
- package/dist/resources/blocks/evidence/block%3Acrud%2Freport-dialog%401.0.0.json +19 -0
- package/dist/resources/blocks/evidence/block%3Aread%2Fdetail%401.0.0.json +19 -0
- package/dist/resources/blocks/evidence/block%3Aread%2Ffiltered-list%401.0.0.json +19 -0
- package/dist/resources/blocks/evidence/block%3Aread%2Fhistory%401.0.0.json +19 -0
- package/dist/resources/blocks/evidence/block%3Aread%2Fmaster-detail%401.0.0.json +19 -0
- package/dist/resources/blocks/generator.json +5 -0
- package/dist/resources/blocks/manifest.json +29 -0
- package/dist/resources/blocks/packages/analytics/status-summary/1.0.0/block.yaml +59 -0
- package/dist/resources/blocks/packages/analytics/status-summary/1.0.0/renderer.json +14 -0
- package/dist/resources/blocks/packages/crud/report-dialog/1.0.0/block.yaml +66 -0
- package/dist/resources/blocks/packages/crud/report-dialog/1.0.0/renderer.json +14 -0
- package/dist/resources/blocks/packages/read/detail/1.0.0/block.yaml +59 -0
- package/dist/resources/blocks/packages/read/detail/1.0.0/renderer.json +14 -0
- package/dist/resources/blocks/packages/read/filtered-list/1.0.0/block.yaml +59 -0
- package/dist/resources/blocks/packages/read/filtered-list/1.0.0/renderer.json +14 -0
- package/dist/resources/blocks/packages/read/history/1.0.0/block.yaml +59 -0
- package/dist/resources/blocks/packages/read/history/1.0.0/renderer.json +14 -0
- package/dist/resources/blocks/packages/read/master-detail/1.0.0/block.yaml +59 -0
- package/dist/resources/blocks/packages/read/master-detail/1.0.0/renderer.json +14 -0
- package/dist/resources/blocks/profiles.json +10 -0
- package/dist/resources/blocks/revocations.json +1 -0
- package/dist/resources/blueprints/crm.yaml +172 -0
- package/dist/resources/blueprints/index.json +12 -0
- package/dist/resources/blueprints/service-desk.yaml +120 -0
- package/dist/resources/schemas/composer-allocation.schema.json +33 -0
- package/dist/resources/schemas/composer-block.schema.json +208 -0
- package/dist/resources/schemas/composer-blueprint.schema.json +665 -0
- package/dist/resources/schemas/composer-command.schema.json +106 -0
- package/dist/resources/schemas/composer-contract.schema.json +174 -0
- package/dist/resources/schemas/composer-diagnostic.schema.json +26 -0
- package/dist/resources/schemas/composer-entity.schema.json +142 -0
- package/dist/resources/schemas/composer-evidence.schema.json +95 -0
- package/dist/resources/schemas/composer-field.schema.json +54 -0
- package/dist/resources/schemas/composer-instance.schema.json +117 -0
- package/dist/resources/schemas/composer-lock.schema.json +54 -0
- package/dist/resources/schemas/composer-operation.schema.json +55 -0
- package/dist/resources/schemas/composer-owner.schema.json +105 -0
- package/dist/resources/schemas/composer-parameters.schema.json +61 -0
- package/dist/resources/schemas/composer-plan.schema.json +1011 -0
- package/dist/resources/schemas/composer-renderer.schema.json +69 -0
- package/dist/resources/schemas/composer-state.schema.json +146 -0
- package/dist/resources/schemas/deploy-plan.schema.json +754 -169
- package/dist/resources/schemas/operations.schema.json +525 -256
- package/dist/resources/schemas/policy.schema.json +21 -0
- package/dist/resources/schemas/project.schema.json +17 -7
- package/dist/resources/schemas/sync-state.schema.json +238 -0
- package/dist/resources/templates/blank-app/README.md +0 -2
- package/dist/resources/templates/customer-crm/README.md +1 -3
- package/dist/resources/templates/existing-app/README.md +0 -2
- package/dist/resources/third-party/node_modules__yaml__LICENSE +13 -0
- package/dist/runtime/apexrest.mjs +81 -45
- package/dist/runtime/chunk-5PCC7GZM.mjs +4090 -0
- package/dist/runtime/chunk-BVPAS3TD.mjs +18 -0
- package/dist/runtime/chunk-CVMECW6D.mjs +65 -0
- package/dist/runtime/{chunk-3MDDJFXN.mjs → chunk-JYN3YHP3.mjs} +4220 -10616
- package/dist/runtime/chunk-KGTE7Q5Y.mjs +23 -0
- package/dist/{codex-compat/plugins/apexrest-apex/runtime/chunk-HOKFFGSZ.mjs → runtime/chunk-KKRFM7Q7.mjs} +21 -4
- package/dist/runtime/{chunk-2VBZESVC.mjs → chunk-MNU54A7W.mjs} +7 -1
- package/dist/runtime/chunk-N4C2SKCN.mjs +6912 -0
- package/dist/runtime/{chunk-WK5GP4ES.mjs → chunk-P3CVQAZW.mjs} +822 -102
- package/dist/runtime/{chunk-2ZUNLCLK.mjs → chunk-QKYF6N6U.mjs} +210 -112
- package/dist/runtime/{chunk-S24BD6PY.mjs → chunk-RBJJNQ5O.mjs} +7 -7
- package/dist/runtime/chunk-TMSMKVRP.mjs +10367 -0
- package/dist/runtime/{chunk-2Z3BZF66.mjs → chunk-WPS3CSQJ.mjs} +124 -11
- package/dist/runtime/mcp.mjs +5 -10
- package/package.json +14 -7
- package/README.uk.md +0 -206
- package/dist/codex-compat/plugins/apexrest-apex/resources/panel/index.html +0 -61
- package/dist/codex-compat/plugins/apexrest-apex/resources/panel/panel.css +0 -627
- package/dist/codex-compat/plugins/apexrest-apex/resources/panel/panel.js +0 -629
- package/dist/codex-compat/plugins/apexrest-apex/resources/templates/blank-app/README.uk.md +0 -5
- package/dist/codex-compat/plugins/apexrest-apex/resources/templates/customer-crm/README.uk.md +0 -7
- package/dist/codex-compat/plugins/apexrest-apex/resources/templates/database-control/install.sql +0 -17
- package/dist/codex-compat/plugins/apexrest-apex/resources/templates/existing-app/README.uk.md +0 -9
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__@playwright__test__LICENSE +0 -202
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__@playwright__test__NOTICE +0 -5
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__@types__node__LICENSE +0 -21
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__@types__yauzl__LICENSE +0 -21
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__@typescript__typescript-darwin-arm64__LICENSE +0 -55
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__@typescript__typescript-darwin-arm64__NOTICE.txt +0 -436
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__esbuild__LICENSE.md +0 -21
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__fflate__LICENSE +0 -21
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__marked__LICENSE +0 -44
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__playwright-core__LICENSE +0 -202
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__playwright-core__NOTICE +0 -5
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__playwright__LICENSE +0 -202
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__playwright__NOTICE +0 -5
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__prettier__LICENSE +0 -7
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__typescript__LICENSE +0 -55
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__typescript__NOTICE.txt +0 -436
- package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__undici-types__LICENSE +0 -21
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-4MYHJ2IU.mjs +0 -1208
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-7RZW5QV2.mjs +0 -992
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-AQZLLQ3D.mjs +0 -203
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-BD2AVCFU.mjs +0 -367
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-IX6V6ZGW.mjs +0 -18
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-NDZ2RWQU.mjs +0 -13
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-QIVPMPU3.mjs +0 -14
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-SPZVXAM5.mjs +0 -147
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-TLYYCRQA.mjs +0 -329
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-TXVQLYTH.mjs +0 -1271
- package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-YLXJ6H4J.mjs +0 -14
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-database/SKILL.md +0 -9
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-database/agents/openai.yaml +0 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-debug/SKILL.md +0 -9
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-debug/agents/openai.yaml +0 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-deploy/SKILL.md +0 -19
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-deploy/agents/openai.yaml +0 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-install-dependencies/SKILL.md +0 -38
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-install-dependencies/agents/openai.yaml +0 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-menu/SKILL.md +0 -28
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-menu/agents/openai.yaml +0 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-menu/references/cli-catalog.md +0 -23
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-panel/SKILL.md +0 -14
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-panel/agents/openai.yaml +0 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-project/SKILL.md +0 -9
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-project/agents/openai.yaml +0 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-review/SKILL.md +0 -11
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-review/agents/openai.yaml +0 -4
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-test/SKILL.md +0 -29
- package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-test/agents/openai.yaml +0 -4
- package/dist/resources/panel/index.html +0 -61
- package/dist/resources/panel/panel.css +0 -627
- package/dist/resources/panel/panel.js +0 -629
- package/dist/resources/templates/blank-app/README.uk.md +0 -5
- package/dist/resources/templates/customer-crm/README.uk.md +0 -7
- package/dist/resources/templates/database-control/install.sql +0 -17
- package/dist/resources/templates/existing-app/README.uk.md +0 -9
- package/dist/resources/third-party/node_modules__@playwright__test__LICENSE +0 -202
- package/dist/resources/third-party/node_modules__@playwright__test__NOTICE +0 -5
- package/dist/resources/third-party/node_modules__@types__node__LICENSE +0 -21
- package/dist/resources/third-party/node_modules__@types__yauzl__LICENSE +0 -21
- package/dist/resources/third-party/node_modules__@typescript__typescript-darwin-arm64__LICENSE +0 -55
- package/dist/resources/third-party/node_modules__@typescript__typescript-darwin-arm64__NOTICE.txt +0 -436
- package/dist/resources/third-party/node_modules__esbuild__LICENSE.md +0 -21
- package/dist/resources/third-party/node_modules__fflate__LICENSE +0 -21
- package/dist/resources/third-party/node_modules__marked__LICENSE +0 -44
- package/dist/resources/third-party/node_modules__playwright-core__LICENSE +0 -202
- package/dist/resources/third-party/node_modules__playwright-core__NOTICE +0 -5
- package/dist/resources/third-party/node_modules__playwright__LICENSE +0 -202
- package/dist/resources/third-party/node_modules__playwright__NOTICE +0 -5
- package/dist/resources/third-party/node_modules__prettier__LICENSE +0 -7
- package/dist/resources/third-party/node_modules__typescript__LICENSE +0 -55
- package/dist/resources/third-party/node_modules__typescript__NOTICE.txt +0 -436
- package/dist/resources/third-party/node_modules__undici-types__LICENSE +0 -21
- package/dist/runtime/chunk-4MYHJ2IU.mjs +0 -1208
- package/dist/runtime/chunk-7RZW5QV2.mjs +0 -992
- package/dist/runtime/chunk-AQZLLQ3D.mjs +0 -203
- package/dist/runtime/chunk-BD2AVCFU.mjs +0 -367
- package/dist/runtime/chunk-IX6V6ZGW.mjs +0 -18
- package/dist/runtime/chunk-NDZ2RWQU.mjs +0 -13
- package/dist/runtime/chunk-QIVPMPU3.mjs +0 -14
- package/dist/runtime/chunk-SPZVXAM5.mjs +0 -147
- package/dist/runtime/chunk-TLYYCRQA.mjs +0 -329
- package/dist/runtime/chunk-TXVQLYTH.mjs +0 -1271
- package/dist/runtime/chunk-YLXJ6H4J.mjs +0 -14
|
@@ -42,6 +42,27 @@
|
|
|
42
42
|
"planDigest": {
|
|
43
43
|
"type": "string",
|
|
44
44
|
"pattern": "^[a-f0-9]{64}$"
|
|
45
|
+
},
|
|
46
|
+
"note": {
|
|
47
|
+
"type": "string",
|
|
48
|
+
"maxLength": 2000
|
|
49
|
+
},
|
|
50
|
+
"grantedBy": {
|
|
51
|
+
"type": "string",
|
|
52
|
+
"enum": [
|
|
53
|
+
"user",
|
|
54
|
+
"ship"
|
|
55
|
+
]
|
|
56
|
+
},
|
|
57
|
+
"grantedAt": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"format": "date-time",
|
|
60
|
+
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
|
|
61
|
+
},
|
|
62
|
+
"workerPid": {
|
|
63
|
+
"type": "integer",
|
|
64
|
+
"exclusiveMinimum": 0,
|
|
65
|
+
"maximum": 9007199254740991
|
|
45
66
|
}
|
|
46
67
|
},
|
|
47
68
|
"required": [
|
|
@@ -140,13 +140,6 @@
|
|
|
140
140
|
"expectedMarker": {
|
|
141
141
|
"type": "string",
|
|
142
142
|
"minLength": 1
|
|
143
|
-
},
|
|
144
|
-
"deploymentControl": {
|
|
145
|
-
"type": "string",
|
|
146
|
-
"enum": [
|
|
147
|
-
"local",
|
|
148
|
-
"database"
|
|
149
|
-
]
|
|
150
143
|
}
|
|
151
144
|
},
|
|
152
145
|
"required": [
|
|
@@ -215,6 +208,23 @@
|
|
|
215
208
|
],
|
|
216
209
|
"additionalProperties": false
|
|
217
210
|
},
|
|
211
|
+
"deploymentControl": {
|
|
212
|
+
"type": "string",
|
|
213
|
+
"const": "local"
|
|
214
|
+
},
|
|
215
|
+
"composer": {
|
|
216
|
+
"type": "object",
|
|
217
|
+
"properties": {
|
|
218
|
+
"allowSourceOnly": {
|
|
219
|
+
"default": false,
|
|
220
|
+
"type": "boolean"
|
|
221
|
+
}
|
|
222
|
+
},
|
|
223
|
+
"required": [
|
|
224
|
+
"allowSourceOnly"
|
|
225
|
+
],
|
|
226
|
+
"additionalProperties": false
|
|
227
|
+
},
|
|
218
228
|
"artifacts": {
|
|
219
229
|
"type": "object",
|
|
220
230
|
"properties": {
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"schemaVersion": {
|
|
6
|
+
"type": "number",
|
|
7
|
+
"const": 1
|
|
8
|
+
},
|
|
9
|
+
"syncId": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"format": "uuid",
|
|
12
|
+
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
|
|
13
|
+
},
|
|
14
|
+
"revision": {
|
|
15
|
+
"type": "integer",
|
|
16
|
+
"minimum": 0,
|
|
17
|
+
"maximum": 9007199254740991
|
|
18
|
+
},
|
|
19
|
+
"projectRoot": {
|
|
20
|
+
"type": "string"
|
|
21
|
+
},
|
|
22
|
+
"projectId": {
|
|
23
|
+
"type": "string"
|
|
24
|
+
},
|
|
25
|
+
"environment": {
|
|
26
|
+
"type": "string"
|
|
27
|
+
},
|
|
28
|
+
"targetDigest": {
|
|
29
|
+
"type": "string",
|
|
30
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
31
|
+
},
|
|
32
|
+
"target": {
|
|
33
|
+
"type": "object",
|
|
34
|
+
"propertyNames": {
|
|
35
|
+
"type": "string"
|
|
36
|
+
},
|
|
37
|
+
"additionalProperties": {}
|
|
38
|
+
},
|
|
39
|
+
"sourceDir": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"minLength": 1,
|
|
42
|
+
"maxLength": 1024
|
|
43
|
+
},
|
|
44
|
+
"toolchainDigest": {
|
|
45
|
+
"type": "string",
|
|
46
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
47
|
+
},
|
|
48
|
+
"runtimeVersion": {
|
|
49
|
+
"type": "string"
|
|
50
|
+
},
|
|
51
|
+
"compilerVersion": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"minLength": 1
|
|
54
|
+
},
|
|
55
|
+
"exportedAt": {
|
|
56
|
+
"type": "string",
|
|
57
|
+
"format": "date-time",
|
|
58
|
+
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
|
|
59
|
+
},
|
|
60
|
+
"baseline": {
|
|
61
|
+
"type": "object",
|
|
62
|
+
"properties": {
|
|
63
|
+
"directory": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"minLength": 1,
|
|
66
|
+
"maxLength": 1024
|
|
67
|
+
},
|
|
68
|
+
"files": {
|
|
69
|
+
"type": "object",
|
|
70
|
+
"propertyNames": {
|
|
71
|
+
"type": "string",
|
|
72
|
+
"minLength": 1,
|
|
73
|
+
"maxLength": 1024
|
|
74
|
+
},
|
|
75
|
+
"additionalProperties": {
|
|
76
|
+
"type": "string",
|
|
77
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
"digest": {
|
|
81
|
+
"type": "string",
|
|
82
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
"required": [
|
|
86
|
+
"directory",
|
|
87
|
+
"files",
|
|
88
|
+
"digest"
|
|
89
|
+
],
|
|
90
|
+
"additionalProperties": false
|
|
91
|
+
},
|
|
92
|
+
"backup": {
|
|
93
|
+
"type": "object",
|
|
94
|
+
"properties": {
|
|
95
|
+
"backupId": {
|
|
96
|
+
"type": "string",
|
|
97
|
+
"format": "uuid",
|
|
98
|
+
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
|
|
99
|
+
},
|
|
100
|
+
"checksum": {
|
|
101
|
+
"type": "string",
|
|
102
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
"required": [
|
|
106
|
+
"backupId",
|
|
107
|
+
"checksum"
|
|
108
|
+
],
|
|
109
|
+
"additionalProperties": false
|
|
110
|
+
},
|
|
111
|
+
"observedMetadata": {
|
|
112
|
+
"type": "object",
|
|
113
|
+
"properties": {
|
|
114
|
+
"lastUpdatedOn": {
|
|
115
|
+
"type": [
|
|
116
|
+
"string",
|
|
117
|
+
"null"
|
|
118
|
+
]
|
|
119
|
+
},
|
|
120
|
+
"lastUpdatedBy": {
|
|
121
|
+
"type": [
|
|
122
|
+
"string",
|
|
123
|
+
"null"
|
|
124
|
+
]
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
"required": [
|
|
128
|
+
"lastUpdatedOn",
|
|
129
|
+
"lastUpdatedBy"
|
|
130
|
+
],
|
|
131
|
+
"additionalProperties": false
|
|
132
|
+
},
|
|
133
|
+
"lastSuccessfulImport": {
|
|
134
|
+
"anyOf": [
|
|
135
|
+
{
|
|
136
|
+
"type": "object",
|
|
137
|
+
"properties": {
|
|
138
|
+
"at": {
|
|
139
|
+
"type": "string",
|
|
140
|
+
"format": "date-time",
|
|
141
|
+
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
|
|
142
|
+
},
|
|
143
|
+
"runId": {
|
|
144
|
+
"type": "string",
|
|
145
|
+
"format": "uuid",
|
|
146
|
+
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
|
|
147
|
+
},
|
|
148
|
+
"snapshot": {
|
|
149
|
+
"type": "object",
|
|
150
|
+
"properties": {
|
|
151
|
+
"directory": {
|
|
152
|
+
"type": "string",
|
|
153
|
+
"minLength": 1,
|
|
154
|
+
"maxLength": 1024
|
|
155
|
+
},
|
|
156
|
+
"files": {
|
|
157
|
+
"type": "object",
|
|
158
|
+
"propertyNames": {
|
|
159
|
+
"type": "string",
|
|
160
|
+
"minLength": 1,
|
|
161
|
+
"maxLength": 1024
|
|
162
|
+
},
|
|
163
|
+
"additionalProperties": {
|
|
164
|
+
"type": "string",
|
|
165
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
"digest": {
|
|
169
|
+
"type": "string",
|
|
170
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
"required": [
|
|
174
|
+
"directory",
|
|
175
|
+
"files",
|
|
176
|
+
"digest"
|
|
177
|
+
],
|
|
178
|
+
"additionalProperties": false
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
"required": [
|
|
182
|
+
"at",
|
|
183
|
+
"runId",
|
|
184
|
+
"snapshot"
|
|
185
|
+
],
|
|
186
|
+
"additionalProperties": false
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"type": "null"
|
|
190
|
+
}
|
|
191
|
+
]
|
|
192
|
+
},
|
|
193
|
+
"status": {
|
|
194
|
+
"type": "string",
|
|
195
|
+
"enum": [
|
|
196
|
+
"ready",
|
|
197
|
+
"importing",
|
|
198
|
+
"verification_failed",
|
|
199
|
+
"outcome_unknown",
|
|
200
|
+
"invalidated"
|
|
201
|
+
]
|
|
202
|
+
},
|
|
203
|
+
"importingRunId": {
|
|
204
|
+
"anyOf": [
|
|
205
|
+
{
|
|
206
|
+
"type": "string",
|
|
207
|
+
"format": "uuid",
|
|
208
|
+
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"type": "null"
|
|
212
|
+
}
|
|
213
|
+
]
|
|
214
|
+
}
|
|
215
|
+
},
|
|
216
|
+
"required": [
|
|
217
|
+
"schemaVersion",
|
|
218
|
+
"syncId",
|
|
219
|
+
"revision",
|
|
220
|
+
"projectRoot",
|
|
221
|
+
"projectId",
|
|
222
|
+
"environment",
|
|
223
|
+
"targetDigest",
|
|
224
|
+
"target",
|
|
225
|
+
"sourceDir",
|
|
226
|
+
"toolchainDigest",
|
|
227
|
+
"runtimeVersion",
|
|
228
|
+
"compilerVersion",
|
|
229
|
+
"exportedAt",
|
|
230
|
+
"baseline",
|
|
231
|
+
"backup",
|
|
232
|
+
"observedMetadata",
|
|
233
|
+
"lastSuccessfulImport",
|
|
234
|
+
"status",
|
|
235
|
+
"importingRunId"
|
|
236
|
+
],
|
|
237
|
+
"additionalProperties": false
|
|
238
|
+
}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
1
|
# Blank application
|
|
2
2
|
|
|
3
|
-
English | [Українська](README.uk.md)
|
|
4
|
-
|
|
5
3
|
This is a real Oracle SQLcl-generated starter reference with its original `.apex/apexlang.json`. New projects run the real generator; they do not fabricate metadata from this fixture. Requires SQLcl 26.1.2+ and Java 21. Authentication remains the Oracle starter default. Local compilation has been verified; deployment requires an explicitly configured APEX 26.1+ workspace/schema.
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# Customer CRM
|
|
2
2
|
|
|
3
|
-
English | [Українська](README.uk.md)
|
|
4
|
-
|
|
5
3
|
A real APEXlang overlay on the Oracle-generated starter: customers report (page 10), dashboard (20), modal form (80), server validation package/trigger, immutable table migration, utPLSQL tests and authenticated browser CRUD with unique synthetic records. It retains default authentication; configure a dedicated test account through authorized APEX administration. No password or ORDS endpoint is included.
|
|
6
4
|
|
|
7
|
-
`project init ./crm --template customer-crm` generates fresh Oracle metadata and applies the reviewed overlay. Local SQLcl compilation passed on 26.1.2 with MMD 26.1.0+3102. Live target deployment, test selectors and SQL results still need integration evidence. Required suites are SQL and E2E. Configure the environment and authorized test grants, provide utPLSQL for the SQL suite, then authenticate interactively.
|
|
5
|
+
`project init ./crm --template customer-crm` generates fresh Oracle metadata and applies the reviewed overlay. Local SQLcl compilation passed on 26.1.2 with MMD 26.1.0+3102. Live target deployment, test selectors and SQL results still need integration evidence. Required suites are SQL and E2E. Configure the environment and authorized test grants, provide utPLSQL for the SQL suite, then authenticate interactively.
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# Adopt an existing application
|
|
2
2
|
|
|
3
|
-
English | [Українська](README.uk.md)
|
|
4
|
-
|
|
5
3
|
Create an `existing-app` project skeleton, configure the exact existing test target and named read connection, then run `project adopt --env dev --app-id ID`. It exports through a private staging directory and installs only into a new source directory. If that directory exists, adoption fails with LOCAL_EDITS_CONFLICT; local edits are preserved. For later exports use a fresh `apex export --env dev --output review/export-UUID` directory.
|
|
6
4
|
|
|
7
5
|
Keep `.apex`, Oracle IDs, shared LOVs, authentication and all page files under version control. `apex diff --env dev` compares source file hashes with a fresh Oracle export. It is a textual inventory, not proof of complete semantic component coverage. SQLcl exports use original IDs and omit export timestamps; no invented normalization removes metadata.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Copyright Eemeli Aro <eemeli@gmail.com>
|
|
2
|
+
|
|
3
|
+
Permission to use, copy, modify, and/or distribute this software for any purpose
|
|
4
|
+
with or without fee is hereby granted, provided that the above copyright notice
|
|
5
|
+
and this permission notice appear in all copies.
|
|
6
|
+
|
|
7
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
8
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
|
9
|
+
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
10
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
|
11
|
+
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
|
12
|
+
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
|
|
13
|
+
THIS SOFTWARE.
|
|
@@ -2,20 +2,21 @@
|
|
|
2
2
|
import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
dispatch,
|
|
5
|
+
executeJob,
|
|
6
|
+
failQueuedJob,
|
|
7
|
+
internalOperations,
|
|
5
8
|
schemas
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
} from "./chunk-BD2AVCFU.mjs";
|
|
10
|
-
import "./chunk-4MYHJ2IU.mjs";
|
|
11
|
-
import "./chunk-S24BD6PY.mjs";
|
|
9
|
+
} from "./chunk-5PCC7GZM.mjs";
|
|
10
|
+
import "./chunk-TMSMKVRP.mjs";
|
|
11
|
+
import "./chunk-RBJJNQ5O.mjs";
|
|
12
12
|
import {
|
|
13
13
|
loadProject
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-N4C2SKCN.mjs";
|
|
15
|
+
import "./chunk-JYN3YHP3.mjs";
|
|
15
16
|
import {
|
|
16
17
|
Fault,
|
|
17
18
|
failure
|
|
18
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-WPS3CSQJ.mjs";
|
|
19
20
|
|
|
20
21
|
// packages/cli/src/main.ts
|
|
21
22
|
var argv = process.argv.slice(2);
|
|
@@ -30,29 +31,36 @@ var positional = {
|
|
|
30
31
|
"jobs.cancel": ["id"],
|
|
31
32
|
"artifacts.read": ["id"]
|
|
32
33
|
};
|
|
34
|
+
var groupAliases = { job: "jobs", reference: "docs" };
|
|
35
|
+
var variadic = { "docs.search": "query" };
|
|
33
36
|
function operationFrom(args) {
|
|
34
|
-
const first = args[0];
|
|
35
|
-
if (["doctor", "version", "setup"].includes(first ?? "")) return { op: first, start: 1 };
|
|
37
|
+
const first = groupAliases[args[0] ?? ""] ?? args[0];
|
|
38
|
+
if (["doctor", "version", "setup", "ship", "status"].includes(first ?? "")) return { op: first, start: 1 };
|
|
36
39
|
if (first === "test" && ["unit", "sql", "api", "e2e", "all"].includes(args[1] ?? ""))
|
|
37
40
|
return { op: "test.run", start: 2, suite: args[1] };
|
|
38
|
-
return { op:
|
|
41
|
+
return { op: [first, args[1]].join("."), start: 2 };
|
|
39
42
|
}
|
|
43
|
+
var listed = (op) => !internalOperations.includes(op);
|
|
40
44
|
var selected = operationFrom(argv);
|
|
45
|
+
function knownHelpTarget() {
|
|
46
|
+
const first = argv[0] ?? "";
|
|
47
|
+
return first.startsWith("-") || ["mcp", "test"].includes(first) || selected.op in schemas || // A command group alone (apexrest deploy --help) lists the general help.
|
|
48
|
+
(argv[1] ?? "-").startsWith("-") && Object.keys(schemas).some((op) => op.startsWith((groupAliases[first] ?? first) + "."));
|
|
49
|
+
}
|
|
41
50
|
function help() {
|
|
42
51
|
const key = selected.op;
|
|
43
52
|
const lines = [
|
|
44
53
|
"APEXREST for Codex \u2014 independent Oracle APEX developer tools",
|
|
45
54
|
"Usage: apexrest [command] [options]",
|
|
46
|
-
"Run apexrest in a terminal to manage tools, plugins and saved SQLcl connections.",
|
|
47
|
-
" tui [--project PATH] Open the terminal UI explicitly",
|
|
48
|
-
" panel tui [--project PATH] Live development panel inside Codex CLI",
|
|
49
55
|
"",
|
|
50
|
-
...Object.keys(schemas).filter((x) => x !== "test.run").map((x) => " " + x.replace(".", " ")),
|
|
56
|
+
...Object.keys(schemas).filter((x) => x !== "test.run" && listed(x)).map((x) => " " + x.replace(".", " ")),
|
|
51
57
|
" test unit|sql|api|e2e|all [--env NAME]",
|
|
58
|
+
" job status|cancel <id> (alias of jobs ...)",
|
|
52
59
|
" mcp",
|
|
53
60
|
"",
|
|
54
61
|
"--json emits one structured JSON result; diagnostics use stderr.",
|
|
55
62
|
"Use --project PATH for project operations. Environment never defaults.",
|
|
63
|
+
"ship --env NAME --mode plan|apply --user-request TEXT validates, plans and (apply) imports with a plan-bound grant.",
|
|
56
64
|
"Exit codes: 0 success, 1 failed, 2 input, 3 dependency, 4 approval, 5 conflict, 6 unknown/cancelled."
|
|
57
65
|
];
|
|
58
66
|
if (schemas[key])
|
|
@@ -64,10 +72,19 @@ function help() {
|
|
|
64
72
|
),
|
|
65
73
|
...(positional[key] ?? []).map((p) => " <" + p + ">")
|
|
66
74
|
);
|
|
75
|
+
if (key === "apex.sync")
|
|
76
|
+
lines.push(
|
|
77
|
+
"",
|
|
78
|
+
"--env NAME --action init|status|refresh|invalidate",
|
|
79
|
+
"status is local only. init reuses a valid baseline; refresh refuses dirty sources.",
|
|
80
|
+
"The initial SQL backup restores the baseline only. Interrupted imports require reconciliation."
|
|
81
|
+
);
|
|
82
|
+
if (key === "apex.diff")
|
|
83
|
+
lines.push("", "--comparison auto|live: auto uses an active local checkpoint; live explicitly exports.");
|
|
67
84
|
if (key === "docs.search")
|
|
68
85
|
lines.push(
|
|
69
86
|
"",
|
|
70
|
-
"--corpus apexlang|components|patterns selects the offline catalog (default: apexlang).",
|
|
87
|
+
"--corpus apexlang|components|patterns|blocks|blueprints selects the offline catalog (default: apexlang).",
|
|
71
88
|
"Filter with --kind, --family and --version; follow nextResultOffset using --offset for more hits."
|
|
72
89
|
);
|
|
73
90
|
if (key === "docs.read")
|
|
@@ -76,16 +93,31 @@ function help() {
|
|
|
76
93
|
"Read a result ID, grammar:production-name, component: ID or pattern: ID.",
|
|
77
94
|
"Follow nextOffset using --offset; catalog navigationOffset recovers all dependency links."
|
|
78
95
|
);
|
|
79
|
-
if (key === "panel.
|
|
96
|
+
if (key === "panel.status")
|
|
80
97
|
lines.push(
|
|
81
98
|
"",
|
|
82
|
-
"
|
|
83
|
-
|
|
99
|
+
"Read-only local snapshot: settings, connections, Git changes, sync state, jobs and deployment journal.",
|
|
100
|
+
"No server, worker, job or database call is started. Same as: apexrest status --detail project --project PATH --json"
|
|
84
101
|
);
|
|
85
102
|
if (key === "jobs.status")
|
|
86
103
|
lines.push(
|
|
87
|
-
"Use --wait-seconds
|
|
104
|
+
"Use --wait-seconds N (up to 120) to wait for an existing job without repeated status calls (default: immediate)."
|
|
105
|
+
);
|
|
106
|
+
if (key === "ship")
|
|
107
|
+
lines.push(
|
|
108
|
+
"",
|
|
109
|
+
"mode plan: validate with the Oracle compiler, read the target and write .apexrest/plans/ship-<id>.json for review.",
|
|
110
|
+
"mode apply: non-production only. Records a deploy grant bound to this project, target and plan digest with the",
|
|
111
|
+
"user's literal --user-request, imports with backup/drift/identity checks, verifies, runs required suites, then",
|
|
112
|
+
"removes the grant. Production targets require the protected CI approval path (deploy apply)."
|
|
113
|
+
);
|
|
114
|
+
if (key === "status")
|
|
115
|
+
lines.push(
|
|
116
|
+
"",
|
|
117
|
+
"--detail doctor probes local tools; --detail project (default) prints the read-only project snapshot."
|
|
88
118
|
);
|
|
119
|
+
if (key === "apex.validate")
|
|
120
|
+
lines.push("", "Runs in-process and returns structured diagnostics (file, line, column, type, hint).");
|
|
89
121
|
if (key === "dependencies.install")
|
|
90
122
|
lines.push(
|
|
91
123
|
"",
|
|
@@ -124,7 +156,7 @@ function help() {
|
|
|
124
156
|
"cli: SQLcl subprocess (default). mcp: official SQLcl stdio server (sql -mcp).",
|
|
125
157
|
"direct: Oracle listener connection (default). ords: SQLcl OREST over HTTP(S), without port 1521.",
|
|
126
158
|
"ORDS uses SQLcl CLI; select --mode cli with --database-transport ords.",
|
|
127
|
-
"Configure the ORDS URL, username and password for each reference using connection add
|
|
159
|
+
"Configure the ORDS URL, username and password for each reference using connection add.",
|
|
128
160
|
"--mcp-restrict-level 4|1: 4 is the default; 1 explicitly permits scripts but blocks host commands.",
|
|
129
161
|
"Saved in APEXREST_HOME/sqlcl.json. No connection, download or Codex registration is changed.",
|
|
130
162
|
"SQLcl MCP can write its own database audit log on connected operations. No silent CLI fallback."
|
|
@@ -132,28 +164,26 @@ function help() {
|
|
|
132
164
|
console.log(lines.join("\n"));
|
|
133
165
|
}
|
|
134
166
|
try {
|
|
135
|
-
if (argv.includes("--help") || argv.includes("-h"))
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
167
|
+
if (argv.includes("--help") || argv.includes("-h")) {
|
|
168
|
+
if (!knownHelpTarget())
|
|
169
|
+
throw new Fault(
|
|
170
|
+
"INVALID_INPUT",
|
|
171
|
+
`Unknown command: ${argv.filter((a) => !a.startsWith("-")).join(" ")}. Use apexrest --help.`,
|
|
172
|
+
2
|
|
173
|
+
);
|
|
174
|
+
help();
|
|
141
175
|
} else if (!argv.length) help();
|
|
142
|
-
else if (argv[0] === "
|
|
143
|
-
if (argv.length !== 2 && (argv.length !== 4 || argv[2] !== "--project" || !argv[3]))
|
|
144
|
-
throw new Fault("INVALID_INPUT", "Usage: apexrest panel tui [--project PATH]", 2);
|
|
145
|
-
const { runPanelTui } = await import("./chunk-SPZVXAM5.mjs");
|
|
146
|
-
await runPanelTui(argv[3] ?? process.cwd());
|
|
147
|
-
} else if (argv[0] === "--panel-worker") {
|
|
148
|
-
if (argv.length !== 2 || !argv[1]) throw new Fault("INVALID_INPUT", "Invalid panel worker request.", 2);
|
|
149
|
-
const { servePanel } = await import("./chunk-IX6V6ZGW.mjs");
|
|
150
|
-
await servePanel(argv[1]);
|
|
151
|
-
} else if (argv[0] === "--job-worker") {
|
|
176
|
+
else if (argv[0] === "--job-worker") {
|
|
152
177
|
if (argv.length !== 3) throw new Fault("INVALID_INPUT", "Invalid internal job request.", 2);
|
|
153
|
-
|
|
178
|
+
try {
|
|
179
|
+
await executeJob(await loadProject(argv[1]), argv[2], dispatch);
|
|
180
|
+
} catch (error) {
|
|
181
|
+
await failQueuedJob(argv[1], argv[2], error).catch(() => void 0);
|
|
182
|
+
throw error;
|
|
183
|
+
}
|
|
154
184
|
} else if (argv[0] === "mcp") {
|
|
155
185
|
if (argv.length !== 1) throw new Fault("INVALID_INPUT", "mcp accepts no arguments.", 2);
|
|
156
|
-
const { startMcp } = await import("./chunk-
|
|
186
|
+
const { startMcp } = await import("./chunk-QKYF6N6U.mjs");
|
|
157
187
|
await startMcp();
|
|
158
188
|
} else {
|
|
159
189
|
const selectedOp = argv[0] === "--version" ? { op: "version", start: 1 } : selected;
|
|
@@ -172,10 +202,12 @@ try {
|
|
|
172
202
|
"nativeOnly",
|
|
173
203
|
"keepRuntime",
|
|
174
204
|
"headed",
|
|
175
|
-
"saved"
|
|
205
|
+
"saved",
|
|
206
|
+
"workingCopy",
|
|
207
|
+
"includeUnresolved"
|
|
176
208
|
]);
|
|
177
209
|
const numbers = /* @__PURE__ */ new Set(["appId", "offset", "limit", "waitSeconds"]);
|
|
178
|
-
let index = 0;
|
|
210
|
+
let index = 0, rest;
|
|
179
211
|
for (let i = selectedOp.start; i < argv.length; i++) {
|
|
180
212
|
const token = argv[i];
|
|
181
213
|
if (token.startsWith("--")) {
|
|
@@ -188,12 +220,16 @@ try {
|
|
|
188
220
|
const value = argv[++i];
|
|
189
221
|
if (!value || value.startsWith("--"))
|
|
190
222
|
throw new Fault("INVALID_INPUT", `Missing value for ${token}`, 2);
|
|
191
|
-
input[name] =
|
|
223
|
+
input[name] = numbers.has(name) ? Number(value) : value;
|
|
192
224
|
}
|
|
193
225
|
} else {
|
|
194
|
-
const field = positional[selectedOp.op]?.[index
|
|
195
|
-
if (
|
|
196
|
-
|
|
226
|
+
const field = positional[selectedOp.op]?.[index];
|
|
227
|
+
if (field && !(field in input)) {
|
|
228
|
+
index++;
|
|
229
|
+
input[field] = token;
|
|
230
|
+
if (variadic[selectedOp.op] === field) rest = field;
|
|
231
|
+
} else if (!field && rest) input[rest] = input[rest] + " " + token;
|
|
232
|
+
else throw new Fault("INVALID_INPUT", `Unexpected argument: ${token}`, 2);
|
|
197
233
|
}
|
|
198
234
|
}
|
|
199
235
|
const result = await dispatch(selectedOp.op, input);
|