apexrest 1.2.0 → 1.3.0-beta.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.
Files changed (151) hide show
  1. package/README.md +9 -3
  2. package/README.uk.md +9 -3
  3. package/dist/codex-compat/plugins/apexrest-apex/.codex-plugin/plugin.json +1 -1
  4. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aanalytics%2Fstatus-summary%401.0.0.json +19 -0
  5. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Acrud%2Freport-dialog%401.0.0.json +19 -0
  6. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aread%2Fdetail%401.0.0.json +19 -0
  7. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aread%2Ffiltered-list%401.0.0.json +19 -0
  8. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aread%2Fhistory%401.0.0.json +19 -0
  9. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/evidence/block%3Aread%2Fmaster-detail%401.0.0.json +19 -0
  10. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/generator.json +5 -0
  11. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/manifest.json +29 -0
  12. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/analytics/status-summary/1.0.0/block.yaml +59 -0
  13. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/analytics/status-summary/1.0.0/renderer.json +14 -0
  14. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/crud/report-dialog/1.0.0/block.yaml +66 -0
  15. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/crud/report-dialog/1.0.0/renderer.json +14 -0
  16. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/detail/1.0.0/block.yaml +59 -0
  17. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/detail/1.0.0/renderer.json +14 -0
  18. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/filtered-list/1.0.0/block.yaml +59 -0
  19. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/filtered-list/1.0.0/renderer.json +14 -0
  20. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/history/1.0.0/block.yaml +59 -0
  21. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/history/1.0.0/renderer.json +14 -0
  22. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/master-detail/1.0.0/block.yaml +59 -0
  23. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/packages/read/master-detail/1.0.0/renderer.json +14 -0
  24. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/profiles.json +10 -0
  25. package/dist/codex-compat/plugins/apexrest-apex/resources/blocks/revocations.json +1 -0
  26. package/dist/codex-compat/plugins/apexrest-apex/resources/blueprints/crm.yaml +172 -0
  27. package/dist/codex-compat/plugins/apexrest-apex/resources/blueprints/index.json +12 -0
  28. package/dist/codex-compat/plugins/apexrest-apex/resources/blueprints/service-desk.yaml +120 -0
  29. package/dist/codex-compat/plugins/apexrest-apex/resources/panel/index.html +7 -0
  30. package/dist/codex-compat/plugins/apexrest-apex/resources/panel/panel.js +234 -2
  31. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-allocation.schema.json +33 -0
  32. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-block.schema.json +208 -0
  33. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-blueprint.schema.json +664 -0
  34. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-command.schema.json +106 -0
  35. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-contract.schema.json +174 -0
  36. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-diagnostic.schema.json +26 -0
  37. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-entity.schema.json +141 -0
  38. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-evidence.schema.json +95 -0
  39. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-field.schema.json +53 -0
  40. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-instance.schema.json +117 -0
  41. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-lock.schema.json +54 -0
  42. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-operation.schema.json +55 -0
  43. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-owner.schema.json +105 -0
  44. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-parameters.schema.json +61 -0
  45. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-plan.schema.json +1010 -0
  46. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-renderer.schema.json +69 -0
  47. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/composer-state.schema.json +146 -0
  48. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/deploy-plan.schema.json +760 -169
  49. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/operations.schema.json +486 -0
  50. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/project.schema.json +13 -0
  51. package/dist/codex-compat/plugins/apexrest-apex/resources/schemas/sync-state.schema.json +238 -0
  52. package/dist/codex-compat/plugins/apexrest-apex/resources/third-party/node_modules__yaml__LICENSE +13 -0
  53. package/dist/codex-compat/plugins/apexrest-apex/runtime/apexrest.mjs +21 -11
  54. package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-2BBNJVKW.mjs +1996 -0
  55. package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-HOKFFGSZ.mjs → chunk-33GE2NWZ.mjs} +1 -1
  56. package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-5JI3XEAK.mjs +14 -0
  57. package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-2ZUNLCLK.mjs → chunk-BAHECVGO.mjs} +30 -10
  58. package/dist/{runtime/chunk-SPZVXAM5.mjs → codex-compat/plugins/apexrest-apex/runtime/chunk-CYPFCUNE.mjs} +7 -4
  59. package/dist/{runtime/chunk-3MDDJFXN.mjs → codex-compat/plugins/apexrest-apex/runtime/chunk-EBBEN4AV.mjs} +29 -6
  60. package/dist/{runtime/chunk-NDZ2RWQU.mjs → codex-compat/plugins/apexrest-apex/runtime/chunk-ESDVN7DS.mjs} +3 -2
  61. package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-AQZLLQ3D.mjs → chunk-FTTPESNK.mjs} +2 -2
  62. package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-S24BD6PY.mjs → chunk-G3KR57BY.mjs} +1 -1
  63. package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-TXVQLYTH.mjs → chunk-HKJVCGQQ.mjs} +118 -87
  64. package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-WK5GP4ES.mjs → chunk-KQ5IDT7Z.mjs} +2 -2
  65. package/dist/{runtime/chunk-7RZW5QV2.mjs → codex-compat/plugins/apexrest-apex/runtime/chunk-RWGJITHZ.mjs} +5 -5
  66. package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-IX6V6ZGW.mjs → chunk-WXP75UUP.mjs} +5 -5
  67. package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-YPLIIQ4Y.mjs +10233 -0
  68. package/dist/codex-compat/plugins/apexrest-apex/runtime/{chunk-QIVPMPU3.mjs → chunk-YQHHPRJH.mjs} +1 -1
  69. package/dist/codex-compat/plugins/apexrest-apex/runtime/mcp.mjs +7 -7
  70. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-apexlang/SKILL.md +1 -1
  71. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-compose/SKILL.md +18 -0
  72. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-compose/agents/openai.yaml +4 -0
  73. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-compose/references/workflow.md +15 -0
  74. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-deploy/SKILL.md +3 -1
  75. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-menu/SKILL.md +3 -1
  76. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-menu/references/cli-catalog.md +8 -1
  77. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-project/SKILL.md +2 -0
  78. package/dist/codex-compat/plugins/apexrest-apex/skills/apexrest-work/SKILL.md +3 -1
  79. package/dist/resources/blocks/evidence/block%3Aanalytics%2Fstatus-summary%401.0.0.json +19 -0
  80. package/dist/resources/blocks/evidence/block%3Acrud%2Freport-dialog%401.0.0.json +19 -0
  81. package/dist/resources/blocks/evidence/block%3Aread%2Fdetail%401.0.0.json +19 -0
  82. package/dist/resources/blocks/evidence/block%3Aread%2Ffiltered-list%401.0.0.json +19 -0
  83. package/dist/resources/blocks/evidence/block%3Aread%2Fhistory%401.0.0.json +19 -0
  84. package/dist/resources/blocks/evidence/block%3Aread%2Fmaster-detail%401.0.0.json +19 -0
  85. package/dist/resources/blocks/generator.json +5 -0
  86. package/dist/resources/blocks/manifest.json +29 -0
  87. package/dist/resources/blocks/packages/analytics/status-summary/1.0.0/block.yaml +59 -0
  88. package/dist/resources/blocks/packages/analytics/status-summary/1.0.0/renderer.json +14 -0
  89. package/dist/resources/blocks/packages/crud/report-dialog/1.0.0/block.yaml +66 -0
  90. package/dist/resources/blocks/packages/crud/report-dialog/1.0.0/renderer.json +14 -0
  91. package/dist/resources/blocks/packages/read/detail/1.0.0/block.yaml +59 -0
  92. package/dist/resources/blocks/packages/read/detail/1.0.0/renderer.json +14 -0
  93. package/dist/resources/blocks/packages/read/filtered-list/1.0.0/block.yaml +59 -0
  94. package/dist/resources/blocks/packages/read/filtered-list/1.0.0/renderer.json +14 -0
  95. package/dist/resources/blocks/packages/read/history/1.0.0/block.yaml +59 -0
  96. package/dist/resources/blocks/packages/read/history/1.0.0/renderer.json +14 -0
  97. package/dist/resources/blocks/packages/read/master-detail/1.0.0/block.yaml +59 -0
  98. package/dist/resources/blocks/packages/read/master-detail/1.0.0/renderer.json +14 -0
  99. package/dist/resources/blocks/profiles.json +10 -0
  100. package/dist/resources/blocks/revocations.json +1 -0
  101. package/dist/resources/blueprints/crm.yaml +172 -0
  102. package/dist/resources/blueprints/index.json +12 -0
  103. package/dist/resources/blueprints/service-desk.yaml +120 -0
  104. package/dist/resources/panel/index.html +7 -0
  105. package/dist/resources/panel/panel.js +234 -2
  106. package/dist/resources/schemas/composer-allocation.schema.json +33 -0
  107. package/dist/resources/schemas/composer-block.schema.json +208 -0
  108. package/dist/resources/schemas/composer-blueprint.schema.json +664 -0
  109. package/dist/resources/schemas/composer-command.schema.json +106 -0
  110. package/dist/resources/schemas/composer-contract.schema.json +174 -0
  111. package/dist/resources/schemas/composer-diagnostic.schema.json +26 -0
  112. package/dist/resources/schemas/composer-entity.schema.json +141 -0
  113. package/dist/resources/schemas/composer-evidence.schema.json +95 -0
  114. package/dist/resources/schemas/composer-field.schema.json +53 -0
  115. package/dist/resources/schemas/composer-instance.schema.json +117 -0
  116. package/dist/resources/schemas/composer-lock.schema.json +54 -0
  117. package/dist/resources/schemas/composer-operation.schema.json +55 -0
  118. package/dist/resources/schemas/composer-owner.schema.json +105 -0
  119. package/dist/resources/schemas/composer-parameters.schema.json +61 -0
  120. package/dist/resources/schemas/composer-plan.schema.json +1010 -0
  121. package/dist/resources/schemas/composer-renderer.schema.json +69 -0
  122. package/dist/resources/schemas/composer-state.schema.json +146 -0
  123. package/dist/resources/schemas/deploy-plan.schema.json +760 -169
  124. package/dist/resources/schemas/operations.schema.json +486 -0
  125. package/dist/resources/schemas/project.schema.json +13 -0
  126. package/dist/resources/schemas/sync-state.schema.json +238 -0
  127. package/dist/resources/third-party/node_modules__yaml__LICENSE +13 -0
  128. package/dist/runtime/apexrest.mjs +21 -11
  129. package/dist/runtime/chunk-2BBNJVKW.mjs +1996 -0
  130. package/dist/runtime/{chunk-HOKFFGSZ.mjs → chunk-33GE2NWZ.mjs} +1 -1
  131. package/dist/runtime/chunk-5JI3XEAK.mjs +14 -0
  132. package/dist/runtime/{chunk-2ZUNLCLK.mjs → chunk-BAHECVGO.mjs} +30 -10
  133. package/dist/{codex-compat/plugins/apexrest-apex/runtime/chunk-SPZVXAM5.mjs → runtime/chunk-CYPFCUNE.mjs} +7 -4
  134. package/dist/{codex-compat/plugins/apexrest-apex/runtime/chunk-3MDDJFXN.mjs → runtime/chunk-EBBEN4AV.mjs} +29 -6
  135. package/dist/{codex-compat/plugins/apexrest-apex/runtime/chunk-NDZ2RWQU.mjs → runtime/chunk-ESDVN7DS.mjs} +3 -2
  136. package/dist/runtime/{chunk-AQZLLQ3D.mjs → chunk-FTTPESNK.mjs} +2 -2
  137. package/dist/runtime/{chunk-S24BD6PY.mjs → chunk-G3KR57BY.mjs} +1 -1
  138. package/dist/runtime/{chunk-TXVQLYTH.mjs → chunk-HKJVCGQQ.mjs} +118 -87
  139. package/dist/runtime/{chunk-WK5GP4ES.mjs → chunk-KQ5IDT7Z.mjs} +2 -2
  140. package/dist/{codex-compat/plugins/apexrest-apex/runtime/chunk-7RZW5QV2.mjs → runtime/chunk-RWGJITHZ.mjs} +5 -5
  141. package/dist/runtime/{chunk-IX6V6ZGW.mjs → chunk-WXP75UUP.mjs} +5 -5
  142. package/dist/runtime/chunk-YPLIIQ4Y.mjs +10233 -0
  143. package/dist/runtime/{chunk-QIVPMPU3.mjs → chunk-YQHHPRJH.mjs} +1 -1
  144. package/dist/runtime/mcp.mjs +7 -7
  145. package/package.json +10 -3
  146. package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-4MYHJ2IU.mjs +0 -1208
  147. package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-BD2AVCFU.mjs +0 -367
  148. package/dist/codex-compat/plugins/apexrest-apex/runtime/chunk-YLXJ6H4J.mjs +0 -14
  149. package/dist/runtime/chunk-4MYHJ2IU.mjs +0 -1208
  150. package/dist/runtime/chunk-BD2AVCFU.mjs +0 -367
  151. package/dist/runtime/chunk-YLXJ6H4J.mjs +0 -14
package/README.md CHANGED
@@ -16,7 +16,9 @@ APEXREST connects native Codex skills and MCP tools to Oracle SQLcl. Generate AP
16
16
 
17
17
  ![APEXREST connects a Codex request to APEXlang source, a verified deployment plan, Oracle APEX and runtime checks.](docs/assets/overview.svg)
18
18
 
19
- > **Release `1.2.0`.** Work directly in your current Codex session with 18 MCP tools and 13 focused skills. Codex owns the conversation and its execution; APEXREST handles Oracle/APEX operations. Programmatic job waiting, metadata batches, concise project inspection and focused references reduce routine tool exchanges. See [release notes](docs/release-notes.md) for changes and evidence limits. Independent tooling; not an official Oracle or OpenAI product.
19
+ > **`1.3.0-beta.1` candidate.** The current source has 21 MCP tools and 14 focused skills, including experimental Composer and working-copy workflows. Local checks do not establish live Oracle behavior. See [release notes](docs/release-notes.md) for changes and evidence limits. Independent tooling; not an official Oracle or OpenAI product.
20
+
21
+ The current source checkout implements `apex sync` for the [single-editor working-copy cycle](docs/existing-app.md). This change has local verification; connected Oracle and authenticated browser checks remain open. npm installation does not update an active Codex plugin cache.
20
22
 
21
23
  Describe the change in Codex chat or use `$apexrest-work`. Implementation starts in the same context without a plugin startup call. See the [chat workflow](docs/chat-workflow.md) and [Codex integration](docs/codex-integration.md). Choose **Codex in-app browser / External system browser** for APEX verification in Settings.
22
24
 
@@ -56,7 +58,7 @@ The [Cloud setup guide](docs/codex-cloud.md) covers CLI + ORDS in a configured c
56
58
 
57
59
  ## Install from npm
58
60
 
59
- Use Node 24 LTS (supported range: Node 24–26). Install [apexrest](https://www.npmjs.com/package/apexrest) from npm. This package version is `1.2.0`; the commands below use `latest`. See [release notes](docs/release-notes.md) for distribution and verification status.
61
+ Use Node 24 LTS (supported range: Node 24–26). Install [apexrest](https://www.npmjs.com/package/apexrest) from npm. The commands below use the stable `latest` tag; this source tree is the `1.3.0-beta.1` candidate. See [release notes](docs/release-notes.md) for distribution and verification status.
60
62
 
61
63
  Install the CLI globally and check its version:
62
64
 
@@ -76,7 +78,7 @@ npx apexrest --version
76
78
  npx apexrest
77
79
  ```
78
80
 
79
- To pin this version, use `npm install -g apexrest@1.2.0`. npm includes the built runtime, so no Git checkout or local build is needed. The repository installation below remains available.
81
+ To pin the stable version, use `npm install -g apexrest@1.2.0`. Once the beta is published, opt in with `npm install -g apexrest@1.3.0-beta.1`. npm includes the built runtime, so no Git checkout or local build is needed. The repository installation below remains available.
80
82
 
81
83
  ## Install with the terminal menu
82
84
 
@@ -204,3 +206,7 @@ After source or resource changes, run `npm run plugin:sync` to refresh the check
204
206
  - [Publisher setup](docs/publishing.md): protected release workflow and outstanding prerequisites.
205
207
 
206
208
  Report reproducible bugs through [GitHub issues](https://github.com/apexrest-dev/apexrest-codex/issues), with sanitized diagnostics. Follow [SECURITY.md](SECURITY.md) for sensitive reports. Licensed under [Apache-2.0](LICENSE).
209
+
210
+ ## Composer — local development implementation
211
+
212
+ Compose local APEXlang source from exact blocks and explicit dataset/API contracts. Panel Catalog shows a reviewed diff; plan/materialize run locally through existing jobs/artifacts and deployment safeguards. See [Composer](docs/composer.md). Blocks are experimental; live qualification is a separate stage.
package/README.uk.md CHANGED
@@ -16,7 +16,9 @@ APEXREST поєднує нативні навички Codex та інструм
16
16
 
17
17
  ![APEXREST поєднує запит у Codex із кодом APEXlang, перевіреним планом розгортання, Oracle APEX та перевірками виконання.](docs/assets/overview.uk.svg)
18
18
 
19
- > **Випуск `1.2.0`.** Працюйте безпосередньо в поточній сесії Codex з 18 MCP-інструментами та 13 спеціалізованими skills. Codex керує розмовою й виконанням; APEXREST виконує операції Oracle/APEX. Програмне очікування завдань, пакетні метадані, стисла перевірка проєкту й цільова довідка скорочують рутинні виклики. Зміни й межі доказів — у [примітках до випуску](docs/release-notes.uk.md). Незалежні інструменти; це не офіційний продукт Oracle чи OpenAI.
19
+ > **Кандидат `1.3.0-beta.1`.** Поточні джерела містять 21 MCP-інструмент і 14 спеціалізованих skills, зокрема експериментальні процеси Composer і робочої копії. Локальні перевірки не доводять поведінку в живому Oracle. Зміни й межі доказів — у [примітках до випуску](docs/release-notes.uk.md). Незалежні інструменти; це не офіційний продукт Oracle чи OpenAI.
20
+
21
+ Поточний checkout реалізує `apex sync` для [циклу з одним редактором](docs/existing-app.uk.md). Зміну перевірено локально; підключені перевірки Oracle й автентифікованого браузера залишаються відкритими. Встановлення з npm не оновлює активний кеш плагіна Codex.
20
22
 
21
23
  Опишіть зміну в чаті Codex або використовуйте `$apexrest-work`. Реалізація починається в тому самому контексті без виклику запуску плагіна. Дивіться [сценарій чату](docs/chat-workflow.uk.md) та [інтеграцію Codex](docs/codex-integration.uk.md). Для перевірки APEX оберіть **Codex in-app browser / External system browser** у Settings.
22
24
 
@@ -56,7 +58,7 @@ connect -orest app_user@https://example.com/ords/app_user/
56
58
 
57
59
  ## Встановлення з npm
58
60
 
59
- Використовуйте Node 24 LTS (підтримуваний діапазон: Node 24–26). Встановіть [apexrest](https://www.npmjs.com/package/apexrest) з npm. Версія цього пакета — `1.2.0`; наведені нижче команди використовують `latest`. Стан розповсюдження й перевірок — у [примітках до випуску](docs/release-notes.uk.md).
61
+ Використовуйте Node 24 LTS (підтримуваний діапазон: Node 24–26). Встановіть [apexrest](https://www.npmjs.com/package/apexrest) з npm. Наведені нижче команди використовують стабільний тег `latest`; ці джерела є кандидатом `1.3.0-beta.1`. Стан розповсюдження й перевірок — у [примітках до випуску](docs/release-notes.uk.md).
60
62
 
61
63
  Встановіть CLI глобально та перевірте версію:
62
64
 
@@ -76,7 +78,7 @@ npx apexrest --version
76
78
  npx apexrest
77
79
  ```
78
80
 
79
- Щоб зафіксувати цю версію, використовуйте `npm install -g apexrest@1.2.0`. npm містить готове середовище виконання, тому копія Git-репозиторію чи локальне збирання не потрібні. Наведене нижче встановлення з репозиторію також доступне.
81
+ Щоб зафіксувати стабільну версію, використовуйте `npm install -g apexrest@1.2.0`. Після публікації бета-версії встановіть її явно через `npm install -g apexrest@1.3.0-beta.1`. npm містить готове середовище виконання, тому копія Git-репозиторію чи локальне збирання не потрібні. Наведене нижче встановлення з репозиторію також доступне.
80
82
 
81
83
  ## Встановлення через термінал
82
84
 
@@ -204,3 +206,7 @@ npm run test:packaging
204
206
  - [Налаштування публікації](docs/publishing.uk.md): захищений процес випуску й відкриті передумови.
205
207
 
206
208
  Повідомляйте про відтворювані помилки через [GitHub issues](https://github.com/apexrest-dev/apexrest-codex/issues), додавши очищену діагностику. Для чутливих повідомлень дотримуйтеся [SECURITY.uk.md](SECURITY.uk.md). Ліцензія — [Apache-2.0](LICENSE).
209
+
210
+ ## Composer — локальна development реалізація
211
+
212
+ Складайте local APEXlang sources із exact blocks та explicit dataset/API contracts. Catalog у панелі показує reviewed diff; plan/materialize працюють локально через чинні jobs/artifacts і deployment safeguards. Дивіться [Composer](docs/composer.uk.md). Блоки experimental; live qualification є окремим етапом.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "apexrest-apex",
3
- "version": "1.2.0",
3
+ "version": "1.3.0-beta.1",
4
4
  "description": "Develop, deploy and test Oracle APEX applications with Codex.",
5
5
  "author": {
6
6
  "name": "APEXREST",
@@ -0,0 +1,19 @@
1
+ [
2
+ {
3
+ "schemaVersion": 1,
4
+ "kind": "compiler",
5
+ "status": "passed",
6
+ "sourceDigest": "a38b31d68964a3175d17af8598b81c6d2c0d90f4143cc33c4f6c94febc913d3f",
7
+ "generatorDigest": "b6664f483ba51882e81ccb44bccbd2f99d8b94f74ce58f5bb10297209fa7c196",
8
+ "configurationDigest": "4b5d1204a620cea10ca6e8253e7e68dd9677d9be73bacac4271126898ce95400",
9
+ "fixtureDigest": "e81e5fdbbf8203d148e3c70e958cd40b14ccc95de6541b60b000d2d7a195959c",
10
+ "profile": "profile:apex261-ut261-mmd3102",
11
+ "tool": "SQLcl: Release 26.1.2.0 Production Build: 26.1.2.132.1334; MMD 26.1.0+3102",
12
+ "runner": "local",
13
+ "timestamp": "2026-09-29T17:58:15.026524+00:00",
14
+ "artifacts": [
15
+ "docs/evidence/composer-local.json"
16
+ ],
17
+ "reason": "Real offline SQLcl validation of complete crm fixture containing this block. No live SQL, import, DML or browser qualification."
18
+ }
19
+ ]
@@ -0,0 +1,19 @@
1
+ [
2
+ {
3
+ "schemaVersion": 1,
4
+ "kind": "compiler",
5
+ "status": "passed",
6
+ "sourceDigest": "3f22afdd45513ac6819f0be2562a3525f5971265cd4de22f183c607d3ced2431",
7
+ "generatorDigest": "b6664f483ba51882e81ccb44bccbd2f99d8b94f74ce58f5bb10297209fa7c196",
8
+ "configurationDigest": "4b5d1204a620cea10ca6e8253e7e68dd9677d9be73bacac4271126898ce95400",
9
+ "fixtureDigest": "e81e5fdbbf8203d148e3c70e958cd40b14ccc95de6541b60b000d2d7a195959c",
10
+ "profile": "profile:apex261-ut261-mmd3102",
11
+ "tool": "SQLcl: Release 26.1.2.0 Production Build: 26.1.2.132.1334; MMD 26.1.0+3102",
12
+ "runner": "local",
13
+ "timestamp": "2026-09-29T17:58:15.028028+00:00",
14
+ "artifacts": [
15
+ "docs/evidence/composer-local.json"
16
+ ],
17
+ "reason": "Real offline SQLcl validation of complete crm fixture containing this block. No live SQL, import, DML or browser qualification."
18
+ }
19
+ ]
@@ -0,0 +1,19 @@
1
+ [
2
+ {
3
+ "schemaVersion": 1,
4
+ "kind": "compiler",
5
+ "status": "passed",
6
+ "sourceDigest": "fd38f4d780ae0a9af3b77e9375ebd26f86391092505c55bd5a16090eb662f7e6",
7
+ "generatorDigest": "b6664f483ba51882e81ccb44bccbd2f99d8b94f74ce58f5bb10297209fa7c196",
8
+ "configurationDigest": "4b5d1204a620cea10ca6e8253e7e68dd9677d9be73bacac4271126898ce95400",
9
+ "fixtureDigest": "83171baefa7b1cf5cbab5bd9d63b95dc5ae56223626e30175a27c4136eb19ff9",
10
+ "profile": "profile:apex261-ut261-mmd3102",
11
+ "tool": "SQLcl: Release 26.1.2.0 Production Build: 26.1.2.132.1334; MMD 26.1.0+3102",
12
+ "runner": "local",
13
+ "timestamp": "2026-09-29T17:58:15.027755+00:00",
14
+ "artifacts": [
15
+ "docs/evidence/composer-local.json"
16
+ ],
17
+ "reason": "Real offline SQLcl validation of complete library fixture containing this block. No live SQL, import, DML or browser qualification."
18
+ }
19
+ ]
@@ -0,0 +1,19 @@
1
+ [
2
+ {
3
+ "schemaVersion": 1,
4
+ "kind": "compiler",
5
+ "status": "passed",
6
+ "sourceDigest": "fec688afd7be366569f71dac270d619fb813ccb7d99b218450f4e5da80fa21f9",
7
+ "generatorDigest": "b6664f483ba51882e81ccb44bccbd2f99d8b94f74ce58f5bb10297209fa7c196",
8
+ "configurationDigest": "4b5d1204a620cea10ca6e8253e7e68dd9677d9be73bacac4271126898ce95400",
9
+ "fixtureDigest": "83171baefa7b1cf5cbab5bd9d63b95dc5ae56223626e30175a27c4136eb19ff9",
10
+ "profile": "profile:apex261-ut261-mmd3102",
11
+ "tool": "SQLcl: Release 26.1.2.0 Production Build: 26.1.2.132.1334; MMD 26.1.0+3102",
12
+ "runner": "local",
13
+ "timestamp": "2026-09-29T17:58:15.027399+00:00",
14
+ "artifacts": [
15
+ "docs/evidence/composer-local.json"
16
+ ],
17
+ "reason": "Real offline SQLcl validation of complete library fixture containing this block. No live SQL, import, DML or browser qualification."
18
+ }
19
+ ]
@@ -0,0 +1,19 @@
1
+ [
2
+ {
3
+ "schemaVersion": 1,
4
+ "kind": "compiler",
5
+ "status": "passed",
6
+ "sourceDigest": "94ea76606df9425b94f4cb2cf5e59cadd17f607eec32bc3445b1ab9cab7b69bc",
7
+ "generatorDigest": "b6664f483ba51882e81ccb44bccbd2f99d8b94f74ce58f5bb10297209fa7c196",
8
+ "configurationDigest": "4b5d1204a620cea10ca6e8253e7e68dd9677d9be73bacac4271126898ce95400",
9
+ "fixtureDigest": "83171baefa7b1cf5cbab5bd9d63b95dc5ae56223626e30175a27c4136eb19ff9",
10
+ "profile": "profile:apex261-ut261-mmd3102",
11
+ "tool": "SQLcl: Release 26.1.2.0 Production Build: 26.1.2.132.1334; MMD 26.1.0+3102",
12
+ "runner": "local",
13
+ "timestamp": "2026-09-29T17:58:15.028409+00:00",
14
+ "artifacts": [
15
+ "docs/evidence/composer-local.json"
16
+ ],
17
+ "reason": "Real offline SQLcl validation of complete library fixture containing this block. No live SQL, import, DML or browser qualification."
18
+ }
19
+ ]
@@ -0,0 +1,19 @@
1
+ [
2
+ {
3
+ "schemaVersion": 1,
4
+ "kind": "compiler",
5
+ "status": "passed",
6
+ "sourceDigest": "fd87eceab2d2737bbf49a5f5478dc4618181cb1e67ec74e0e789f1bcb47b01f5",
7
+ "generatorDigest": "b6664f483ba51882e81ccb44bccbd2f99d8b94f74ce58f5bb10297209fa7c196",
8
+ "configurationDigest": "4b5d1204a620cea10ca6e8253e7e68dd9677d9be73bacac4271126898ce95400",
9
+ "fixtureDigest": "83171baefa7b1cf5cbab5bd9d63b95dc5ae56223626e30175a27c4136eb19ff9",
10
+ "profile": "profile:apex261-ut261-mmd3102",
11
+ "tool": "SQLcl: Release 26.1.2.0 Production Build: 26.1.2.132.1334; MMD 26.1.0+3102",
12
+ "runner": "local",
13
+ "timestamp": "2026-09-29T17:58:15.027015+00:00",
14
+ "artifacts": [
15
+ "docs/evidence/composer-local.json"
16
+ ],
17
+ "reason": "Real offline SQLcl validation of complete library fixture containing this block. No live SQL, import, DML or browser qualification."
18
+ }
19
+ ]
@@ -0,0 +1,5 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "generatorVersion": "1",
4
+ "runtimeSourceDigest": "b6664f483ba51882e81ccb44bccbd2f99d8b94f74ce58f5bb10297209fa7c196"
5
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "packages": [
4
+ {
5
+ "path": "packages/analytics/status-summary/1.0.0",
6
+ "digest": "a38b31d68964a3175d17af8598b81c6d2c0d90f4143cc33c4f6c94febc913d3f"
7
+ },
8
+ {
9
+ "path": "packages/crud/report-dialog/1.0.0",
10
+ "digest": "3f22afdd45513ac6819f0be2562a3525f5971265cd4de22f183c607d3ced2431"
11
+ },
12
+ {
13
+ "path": "packages/read/detail/1.0.0",
14
+ "digest": "fd38f4d780ae0a9af3b77e9375ebd26f86391092505c55bd5a16090eb662f7e6"
15
+ },
16
+ {
17
+ "path": "packages/read/filtered-list/1.0.0",
18
+ "digest": "fec688afd7be366569f71dac270d619fb813ccb7d99b218450f4e5da80fa21f9"
19
+ },
20
+ {
21
+ "path": "packages/read/history/1.0.0",
22
+ "digest": "94ea76606df9425b94f4cb2cf5e59cadd17f607eec32bc3445b1ab9cab7b69bc"
23
+ },
24
+ {
25
+ "path": "packages/read/master-detail/1.0.0",
26
+ "digest": "fd87eceab2d2737bbf49a5f5478dc4618181cb1e67ec74e0e789f1bcb47b01f5"
27
+ }
28
+ ]
29
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "id": "block:analytics/status-summary",
4
+ "version": "1.0.0",
5
+ "kind": "block",
6
+ "name": "Status summary",
7
+ "aliases": [
8
+ "підсумки",
9
+ "статус",
10
+ "cards"
11
+ ],
12
+ "status": "experimental",
13
+ "license": "Apache-2.0",
14
+ "origin": "apexrest-dev/apexrest-codex",
15
+ "recipeRefs": [
16
+ "component:reports/interactive-report/recipes/basic",
17
+ "component:regions/cards/recipes/basic"
18
+ ],
19
+ "compatibility": {
20
+ "profileRefs": [
21
+ "profile:apex261-ut261-mmd3102"
22
+ ]
23
+ },
24
+ "renderer": "status-summary",
25
+ "ports": {
26
+ "inputs": [
27
+ "records"
28
+ ],
29
+ "outputs": []
30
+ },
31
+ "requires": {
32
+ "blocks": [],
33
+ "capabilities": [
34
+ "key",
35
+ "readAuthorization"
36
+ ]
37
+ },
38
+ "source": {
39
+ "files": [
40
+ "renderer.json"
41
+ ]
42
+ },
43
+ "effects": {
44
+ "local": [
45
+ "reviewed application source and tracked Composer state"
46
+ ],
47
+ "deployment": [
48
+ "full application import through existing policy-aware pipeline"
49
+ ],
50
+ "applicationRuntime": [
51
+ "read scoped records"
52
+ ],
53
+ "authentication": "preserve"
54
+ },
55
+ "limitations": [
56
+ "Experimental; live Oracle and authenticated browser qualification not run.",
57
+ "Only reviewed scalar contracts; no automatic DDL or business-table writes."
58
+ ]
59
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "renderer": "status-summary",
4
+ "escape": "native-plain-text",
5
+ "transaction": "caller-owned",
6
+ "savedPayload": [
7
+ "entityRef",
8
+ "recordKey",
9
+ "recordVersion",
10
+ "operation",
11
+ "originInstance",
12
+ "correlationId"
13
+ ]
14
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "id": "block:crud/report-dialog",
4
+ "version": "1.0.0",
5
+ "kind": "block",
6
+ "name": "Report and API dialog",
7
+ "aliases": [
8
+ "CRUD",
9
+ "список",
10
+ "форма",
11
+ "CRM"
12
+ ],
13
+ "status": "experimental",
14
+ "license": "Apache-2.0",
15
+ "origin": "apexrest-dev/apexrest-codex",
16
+ "recipeRefs": [
17
+ "component:reports/interactive-report/recipes/basic",
18
+ "component:regions/cards/recipes/basic"
19
+ ],
20
+ "compatibility": {
21
+ "profileRefs": [
22
+ "profile:apex261-ut261-mmd3102"
23
+ ]
24
+ },
25
+ "renderer": "report-dialog",
26
+ "ports": {
27
+ "inputs": [
28
+ "records",
29
+ "saveRecord"
30
+ ],
31
+ "outputs": [
32
+ "saved"
33
+ ]
34
+ },
35
+ "requires": {
36
+ "blocks": [],
37
+ "capabilities": [
38
+ "key",
39
+ "readAuthorization",
40
+ "optimisticLock",
41
+ "writeAuthorization"
42
+ ]
43
+ },
44
+ "source": {
45
+ "files": [
46
+ "renderer.json"
47
+ ]
48
+ },
49
+ "effects": {
50
+ "local": [
51
+ "reviewed application source and tracked Composer state"
52
+ ],
53
+ "deployment": [
54
+ "full application import through existing policy-aware pipeline"
55
+ ],
56
+ "applicationRuntime": [
57
+ "read scoped records",
58
+ "invoke bound PL/SQL API on explicit save"
59
+ ],
60
+ "authentication": "preserve"
61
+ },
62
+ "limitations": [
63
+ "Experimental; live Oracle and authenticated browser qualification not run.",
64
+ "Only reviewed scalar contracts; no automatic DDL or business-table writes."
65
+ ]
66
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "renderer": "report-dialog",
4
+ "escape": "native-plain-text",
5
+ "transaction": "caller-owned",
6
+ "savedPayload": [
7
+ "entityRef",
8
+ "recordKey",
9
+ "recordVersion",
10
+ "operation",
11
+ "originInstance",
12
+ "correlationId"
13
+ ]
14
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "id": "block:read/detail",
4
+ "version": "1.0.0",
5
+ "kind": "block",
6
+ "name": "Read-only detail",
7
+ "aliases": [
8
+ "картка",
9
+ "деталі",
10
+ "detail"
11
+ ],
12
+ "status": "experimental",
13
+ "license": "Apache-2.0",
14
+ "origin": "apexrest-dev/apexrest-codex",
15
+ "recipeRefs": [
16
+ "component:reports/interactive-report/recipes/basic",
17
+ "component:regions/cards/recipes/basic"
18
+ ],
19
+ "compatibility": {
20
+ "profileRefs": [
21
+ "profile:apex261-ut261-mmd3102"
22
+ ]
23
+ },
24
+ "renderer": "read-only-detail",
25
+ "ports": {
26
+ "inputs": [
27
+ "records"
28
+ ],
29
+ "outputs": []
30
+ },
31
+ "requires": {
32
+ "blocks": [],
33
+ "capabilities": [
34
+ "key",
35
+ "readAuthorization"
36
+ ]
37
+ },
38
+ "source": {
39
+ "files": [
40
+ "renderer.json"
41
+ ]
42
+ },
43
+ "effects": {
44
+ "local": [
45
+ "reviewed application source and tracked Composer state"
46
+ ],
47
+ "deployment": [
48
+ "full application import through existing policy-aware pipeline"
49
+ ],
50
+ "applicationRuntime": [
51
+ "read scoped records"
52
+ ],
53
+ "authentication": "preserve"
54
+ },
55
+ "limitations": [
56
+ "Experimental; live Oracle and authenticated browser qualification not run.",
57
+ "Only reviewed scalar contracts; no automatic DDL or business-table writes."
58
+ ]
59
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "renderer": "read-only-detail",
4
+ "escape": "native-plain-text",
5
+ "transaction": "caller-owned",
6
+ "savedPayload": [
7
+ "entityRef",
8
+ "recordKey",
9
+ "recordVersion",
10
+ "operation",
11
+ "originInstance",
12
+ "correlationId"
13
+ ]
14
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "id": "block:read/filtered-list",
4
+ "version": "1.0.0",
5
+ "kind": "block",
6
+ "name": "Filtered list",
7
+ "aliases": [
8
+ "відбір",
9
+ "фільтр",
10
+ "report"
11
+ ],
12
+ "status": "experimental",
13
+ "license": "Apache-2.0",
14
+ "origin": "apexrest-dev/apexrest-codex",
15
+ "recipeRefs": [
16
+ "component:reports/interactive-report/recipes/basic",
17
+ "component:regions/cards/recipes/basic"
18
+ ],
19
+ "compatibility": {
20
+ "profileRefs": [
21
+ "profile:apex261-ut261-mmd3102"
22
+ ]
23
+ },
24
+ "renderer": "filtered-list",
25
+ "ports": {
26
+ "inputs": [
27
+ "records"
28
+ ],
29
+ "outputs": []
30
+ },
31
+ "requires": {
32
+ "blocks": [],
33
+ "capabilities": [
34
+ "key",
35
+ "readAuthorization"
36
+ ]
37
+ },
38
+ "source": {
39
+ "files": [
40
+ "renderer.json"
41
+ ]
42
+ },
43
+ "effects": {
44
+ "local": [
45
+ "reviewed application source and tracked Composer state"
46
+ ],
47
+ "deployment": [
48
+ "full application import through existing policy-aware pipeline"
49
+ ],
50
+ "applicationRuntime": [
51
+ "read scoped records"
52
+ ],
53
+ "authentication": "preserve"
54
+ },
55
+ "limitations": [
56
+ "Experimental; live Oracle and authenticated browser qualification not run.",
57
+ "Only reviewed scalar contracts; no automatic DDL or business-table writes."
58
+ ]
59
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "renderer": "filtered-list",
4
+ "escape": "native-plain-text",
5
+ "transaction": "caller-owned",
6
+ "savedPayload": [
7
+ "entityRef",
8
+ "recordKey",
9
+ "recordVersion",
10
+ "operation",
11
+ "originInstance",
12
+ "correlationId"
13
+ ]
14
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "id": "block:read/history",
4
+ "version": "1.0.0",
5
+ "kind": "block",
6
+ "name": "History timeline",
7
+ "aliases": [
8
+ "історія",
9
+ "timeline",
10
+ "журнал"
11
+ ],
12
+ "status": "experimental",
13
+ "license": "Apache-2.0",
14
+ "origin": "apexrest-dev/apexrest-codex",
15
+ "recipeRefs": [
16
+ "component:reports/interactive-report/recipes/basic",
17
+ "component:regions/cards/recipes/basic"
18
+ ],
19
+ "compatibility": {
20
+ "profileRefs": [
21
+ "profile:apex261-ut261-mmd3102"
22
+ ]
23
+ },
24
+ "renderer": "history-timeline",
25
+ "ports": {
26
+ "inputs": [
27
+ "records"
28
+ ],
29
+ "outputs": []
30
+ },
31
+ "requires": {
32
+ "blocks": [],
33
+ "capabilities": [
34
+ "key",
35
+ "readAuthorization"
36
+ ]
37
+ },
38
+ "source": {
39
+ "files": [
40
+ "renderer.json"
41
+ ]
42
+ },
43
+ "effects": {
44
+ "local": [
45
+ "reviewed application source and tracked Composer state"
46
+ ],
47
+ "deployment": [
48
+ "full application import through existing policy-aware pipeline"
49
+ ],
50
+ "applicationRuntime": [
51
+ "read scoped records"
52
+ ],
53
+ "authentication": "preserve"
54
+ },
55
+ "limitations": [
56
+ "Experimental; live Oracle and authenticated browser qualification not run.",
57
+ "Only reviewed scalar contracts; no automatic DDL or business-table writes."
58
+ ]
59
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "renderer": "history-timeline",
4
+ "escape": "native-plain-text",
5
+ "transaction": "caller-owned",
6
+ "savedPayload": [
7
+ "entityRef",
8
+ "recordKey",
9
+ "recordVersion",
10
+ "operation",
11
+ "originInstance",
12
+ "correlationId"
13
+ ]
14
+ }