gina 0.6.13 → 0.6.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (590) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +28 -22
  3. package/ROADMAP.md +3 -2
  4. package/framework/v0.6.14/VERSION +1 -0
  5. package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.js +9 -6
  6. package/framework/{v0.6.13 → v0.6.14}/core/config.js +9 -4
  7. package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.js +208 -42
  8. package/framework/{v0.6.13 → v0.6.14}/core/gna.js +25 -1
  9. package/framework/{v0.6.13 → v0.6.14}/core/server.js +66 -2
  10. package/framework/{v0.6.13 → v0.6.14}/lib/cmd/secrets/check.js +220 -168
  11. package/framework/v0.6.14/lib/cmd/secrets/scan.js +264 -0
  12. package/framework/{v0.6.13 → v0.6.14}/lib/collection/src/main.js +9 -6
  13. package/framework/{v0.6.13 → v0.6.14}/lib/secrets/src/backends/env.js +41 -1
  14. package/framework/v0.6.14/lib/secrets/src/backends/exec.js +253 -0
  15. package/framework/{v0.6.13 → v0.6.14}/lib/secrets/src/backends/file.js +5 -27
  16. package/framework/v0.6.14/lib/secrets/src/declaration.js +303 -0
  17. package/framework/{v0.6.13 → v0.6.14}/lib/secrets/src/main.js +107 -54
  18. package/framework/v0.6.14/lib/secrets/src/sources.js +325 -0
  19. package/framework/{v0.6.13 → v0.6.14}/package.json +1 -1
  20. package/gna.js +4 -4
  21. package/llms.txt +6 -4
  22. package/package.json +3 -3
  23. package/schema/settings.json +21 -0
  24. package/framework/v0.6.13/VERSION +0 -1
  25. package/framework/v0.6.13/lib/cmd/secrets/scan.js +0 -448
  26. /package/framework/{v0.6.13 → v0.6.14}/AUTHORS +0 -0
  27. /package/framework/{v0.6.13 → v0.6.14}/LICENSE +0 -0
  28. /package/framework/{v0.6.13 → v0.6.14}/core/asset/html/nolayout.html +0 -0
  29. /package/framework/{v0.6.13 → v0.6.14}/core/asset/html/static.html +0 -0
  30. /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/android-chrome-192x192.png +0 -0
  31. /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/android-chrome-512x512.png +0 -0
  32. /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/apple-touch-icon.png +0 -0
  33. /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/favicon-16x16.png +0 -0
  34. /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/favicon-32x32.png +0 -0
  35. /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/favicon.ico +0 -0
  36. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/README.md +0 -0
  37. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
  38. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
  39. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
  40. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  41. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
  42. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
  43. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
  44. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
  45. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
  46. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
  47. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/index.html +0 -0
  48. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +0 -0
  49. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +0 -0
  50. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
  51. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -0
  52. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  53. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  54. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
  55. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
  56. /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
  57. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/ai/index.js +0 -0
  58. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/ai/lib/connector.js +0 -0
  59. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/index.js +0 -0
  60. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/connector.js +0 -0
  61. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  62. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/connector.v4.js +0 -0
  63. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/n1ql.js +0 -0
  64. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/session-store.js +0 -0
  65. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  66. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  67. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/storage-store.js +0 -0
  68. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/duckdb/index.js +0 -0
  69. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/duckdb/lib/connector.js +0 -0
  70. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/index.js +0 -0
  71. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/lib/connector.js +0 -0
  72. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/lib/job-store.js +0 -0
  73. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
  74. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/lib/session-store.js +0 -0
  75. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mysql/index.js +0 -0
  76. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mysql/lib/connector.js +0 -0
  77. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/param-redact.js +0 -0
  78. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/postgresql/index.js +0 -0
  79. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/postgresql/lib/connector.js +0 -0
  80. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/index.js +0 -0
  81. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/connector.js +0 -0
  82. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/job-store.js +0 -0
  83. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/kv-store.js +0 -0
  84. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/render-cache-store.js +0 -0
  85. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/session-store.js +0 -0
  86. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/scylladb/index.js +0 -0
  87. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/scylladb/lib/connector.js +0 -0
  88. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/scylladb/lib/session-store.js +0 -0
  89. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sql-parser.js +0 -0
  90. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/index.js +0 -0
  91. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/lib/connector.js +0 -0
  92. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/lib/job-store.js +0 -0
  93. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/lib/kv-store.js +0 -0
  94. /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/lib/session-store.js +0 -0
  95. /package/framework/{v0.6.13 → v0.6.14}/core/content.encoding +0 -0
  96. /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.framework.js +0 -0
  97. /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-json.js +0 -0
  98. /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-nunjucks-async.js +0 -0
  99. /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-nunjucks.js +0 -0
  100. /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-stream.js +0 -0
  101. /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-swig-async.js +0 -0
  102. /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-swig.js +0 -0
  103. /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-v1.js +0 -0
  104. /package/framework/{v0.6.13 → v0.6.14}/core/controller/index.js +0 -0
  105. /package/framework/{v0.6.13 → v0.6.14}/core/controller/inspector-window-emit.js +0 -0
  106. /package/framework/{v0.6.13 → v0.6.14}/core/controller/release-banner.js +0 -0
  107. /package/framework/{v0.6.13 → v0.6.14}/core/dev/index.js +0 -0
  108. /package/framework/{v0.6.13 → v0.6.14}/core/dev/lib/class.js +0 -0
  109. /package/framework/{v0.6.13 → v0.6.14}/core/dev/lib/factory.js +0 -0
  110. /package/framework/{v0.6.13 → v0.6.14}/core/dev/lib/tools.js +0 -0
  111. /package/framework/{v0.6.13 → v0.6.14}/core/locales/README.md +0 -0
  112. /package/framework/{v0.6.13 → v0.6.14}/core/locales/currency.json +0 -0
  113. /package/framework/{v0.6.13 → v0.6.14}/core/locales/dist/language/en.json +0 -0
  114. /package/framework/{v0.6.13 → v0.6.14}/core/locales/dist/language/fr.json +0 -0
  115. /package/framework/{v0.6.13 → v0.6.14}/core/locales/dist/region/en.json +0 -0
  116. /package/framework/{v0.6.13 → v0.6.14}/core/locales/dist/region/fr.json +0 -0
  117. /package/framework/{v0.6.13 → v0.6.14}/core/locales/index.js +0 -0
  118. /package/framework/{v0.6.13 → v0.6.14}/core/mime.types +0 -0
  119. /package/framework/{v0.6.13 → v0.6.14}/core/model/entity.js +0 -0
  120. /package/framework/{v0.6.13 → v0.6.14}/core/model/index.js +0 -0
  121. /package/framework/{v0.6.13 → v0.6.14}/core/model/template/entityFactory.js +0 -0
  122. /package/framework/{v0.6.13 → v0.6.14}/core/model/template/index.js +0 -0
  123. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/README.md +0 -0
  124. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/index.js +0 -0
  125. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/csrf/README.md +0 -0
  126. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/csrf/package.json +0 -0
  127. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/csrf/src/main.js +0 -0
  128. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/README.md +0 -0
  129. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coep/README.md +0 -0
  130. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coep/package.json +0 -0
  131. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
  132. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coop/README.md +0 -0
  133. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coop/package.json +0 -0
  134. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
  135. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/corp/README.md +0 -0
  136. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/corp/package.json +0 -0
  137. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
  138. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/csp/README.md +0 -0
  139. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/csp/package.json +0 -0
  140. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/csp/src/main.js +0 -0
  141. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
  142. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
  143. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
  144. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hsts/README.md +0 -0
  145. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hsts/package.json +0 -0
  146. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
  147. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
  148. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
  149. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
  150. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/package.json +0 -0
  151. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
  152. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
  153. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
  154. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/src/main.js +0 -0
  155. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
  156. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
  157. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
  158. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
  159. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
  160. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
  161. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
  162. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
  163. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
  164. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
  165. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
  166. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
  167. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
  168. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
  169. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
  170. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
  171. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
  172. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
  173. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/session/README.md +0 -0
  174. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/session/package.json +0 -0
  175. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/session/src/main.js +0 -0
  176. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/storage/README.md +0 -0
  177. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/storage/build.json +0 -0
  178. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/storage/package.json +0 -0
  179. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/storage/src/main.js +0 -0
  180. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/README.md +0 -0
  181. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/build.json +0 -0
  182. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/package.json +0 -0
  183. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/src/form-validator.js +0 -0
  184. /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/src/main.js +0 -0
  185. /package/framework/{v0.6.13 → v0.6.14}/core/router.js +0 -0
  186. /package/framework/{v0.6.13 → v0.6.14}/core/server.express.js +0 -0
  187. /package/framework/{v0.6.13 → v0.6.14}/core/server.isaac.js +0 -0
  188. /package/framework/{v0.6.13 → v0.6.14}/core/status.codes +0 -0
  189. /package/framework/{v0.6.13 → v0.6.14}/core/template/_gitignore +0 -0
  190. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/app.json +0 -0
  191. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/connectors.json +0 -0
  192. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/routing.json +0 -0
  193. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/settings.json +0 -0
  194. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  195. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/templates.json +0 -0
  196. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/watchers.json +0 -0
  197. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  198. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  199. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  200. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/index.js +0 -0
  201. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/locales/en.json +0 -0
  202. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  203. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  204. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/css/home.css +0 -0
  205. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  206. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  207. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/js/components/x-checklist.js +0 -0
  208. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  209. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
  210. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/readme.md +0 -0
  211. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/sw.js +0 -0
  212. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  213. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  214. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  215. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  216. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/includes/x-checklist.html +0 -0
  217. /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  218. /package/framework/{v0.6.13 → v0.6.14}/core/template/command/gina.bat.tpl +0 -0
  219. /package/framework/{v0.6.13 → v0.6.14}/core/template/command/gina.tpl +0 -0
  220. /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/env.json +0 -0
  221. /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/manifest.json +0 -0
  222. /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/package.json +0 -0
  223. /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/settings.json +0 -0
  224. /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/statics.json +0 -0
  225. /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/templates.json +0 -0
  226. /package/framework/{v0.6.13 → v0.6.14}/core/template/error/client/json/401.json +0 -0
  227. /package/framework/{v0.6.13 → v0.6.14}/core/template/error/client/json/403.json +0 -0
  228. /package/framework/{v0.6.13 → v0.6.14}/core/template/error/client/json/404.json +0 -0
  229. /package/framework/{v0.6.13 → v0.6.14}/core/template/error/server/html/50x.html +0 -0
  230. /package/framework/{v0.6.13 → v0.6.14}/core/template/error/server/json/500.json +0 -0
  231. /package/framework/{v0.6.13 → v0.6.14}/core/template/error/server/json/503.json +0 -0
  232. /package/framework/{v0.6.13 → v0.6.14}/core/template/extensions/logger/config.json +0 -0
  233. /package/framework/{v0.6.13 → v0.6.14}/helpers/console.js +0 -0
  234. /package/framework/{v0.6.13 → v0.6.14}/helpers/context.js +0 -0
  235. /package/framework/{v0.6.13 → v0.6.14}/helpers/data/LICENSE +0 -0
  236. /package/framework/{v0.6.13 → v0.6.14}/helpers/data/README.md +0 -0
  237. /package/framework/{v0.6.13 → v0.6.14}/helpers/data/package.json +0 -0
  238. /package/framework/{v0.6.13 → v0.6.14}/helpers/data/src/main.js +0 -0
  239. /package/framework/{v0.6.13 → v0.6.14}/helpers/dateFormat.js +0 -0
  240. /package/framework/{v0.6.13 → v0.6.14}/helpers/index.js +0 -0
  241. /package/framework/{v0.6.13 → v0.6.14}/helpers/json/LICENSE +0 -0
  242. /package/framework/{v0.6.13 → v0.6.14}/helpers/json/README.md +0 -0
  243. /package/framework/{v0.6.13 → v0.6.14}/helpers/json/package.json +0 -0
  244. /package/framework/{v0.6.13 → v0.6.14}/helpers/json/src/main.js +0 -0
  245. /package/framework/{v0.6.13 → v0.6.14}/helpers/path.js +0 -0
  246. /package/framework/{v0.6.13 → v0.6.14}/helpers/plugins/README.md +0 -0
  247. /package/framework/{v0.6.13 → v0.6.14}/helpers/plugins/package.json +0 -0
  248. /package/framework/{v0.6.13 → v0.6.14}/helpers/plugins/src/api-error.js +0 -0
  249. /package/framework/{v0.6.13 → v0.6.14}/helpers/plugins/src/main.js +0 -0
  250. /package/framework/{v0.6.13 → v0.6.14}/helpers/prototypes.js +0 -0
  251. /package/framework/{v0.6.13 → v0.6.14}/helpers/task.js +0 -0
  252. /package/framework/{v0.6.13 → v0.6.14}/helpers/text.js +0 -0
  253. /package/framework/{v0.6.13 → v0.6.14}/lib/admin/package.json +0 -0
  254. /package/framework/{v0.6.13 → v0.6.14}/lib/admin/src/main.js +0 -0
  255. /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/README.md +0 -0
  256. /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/build.json +0 -0
  257. /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/package.json +0 -0
  258. /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/src/dep/jszip.min.js +0 -0
  259. /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/src/main.js +0 -0
  260. /package/framework/{v0.6.13 → v0.6.14}/lib/async/package.json +0 -0
  261. /package/framework/{v0.6.13 → v0.6.14}/lib/async/src/main.js +0 -0
  262. /package/framework/{v0.6.13 → v0.6.14}/lib/audit/package.json +0 -0
  263. /package/framework/{v0.6.13 → v0.6.14}/lib/audit/src/main.js +0 -0
  264. /package/framework/{v0.6.13 → v0.6.14}/lib/audit-store.js +0 -0
  265. /package/framework/{v0.6.13 → v0.6.14}/lib/authn/package.json +0 -0
  266. /package/framework/{v0.6.13 → v0.6.14}/lib/authn/src/lockout.js +0 -0
  267. /package/framework/{v0.6.13 → v0.6.14}/lib/authn/src/main.js +0 -0
  268. /package/framework/{v0.6.13 → v0.6.14}/lib/authn/src/totp.js +0 -0
  269. /package/framework/{v0.6.13 → v0.6.14}/lib/authz-gate/package.json +0 -0
  270. /package/framework/{v0.6.13 → v0.6.14}/lib/authz-gate/src/main.js +0 -0
  271. /package/framework/{v0.6.13 → v0.6.14}/lib/cache/README.md +0 -0
  272. /package/framework/{v0.6.13 → v0.6.14}/lib/cache/build.json +0 -0
  273. /package/framework/{v0.6.13 → v0.6.14}/lib/cache/package.json +0 -0
  274. /package/framework/{v0.6.13 → v0.6.14}/lib/cache/src/main.js +0 -0
  275. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/aliases.json +0 -0
  276. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/audit/arguments.json +0 -0
  277. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/audit/help.txt +0 -0
  278. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/audit/verify.js +0 -0
  279. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/add.js +0 -0
  280. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/arguments.json +0 -0
  281. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/build.js +0 -0
  282. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/copy.js +0 -0
  283. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/cp.js +0 -0
  284. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/help.js +0 -0
  285. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/help.txt +0 -0
  286. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/inc/name-rewrite.js +0 -0
  287. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/list.js +0 -0
  288. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/man.js +0 -0
  289. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/mcp-start.js +0 -0
  290. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/mcp.js +0 -0
  291. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/oas.js +0 -0
  292. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/openapi.js +0 -0
  293. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/remove.js +0 -0
  294. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/rename.js +0 -0
  295. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/restart.js +0 -0
  296. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/rm.js +0 -0
  297. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/start.js +0 -0
  298. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/status.js +0 -0
  299. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/stop.js +0 -0
  300. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/types.js +0 -0
  301. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/cache/arguments.json +0 -0
  302. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/cache/clear.js +0 -0
  303. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/cache/help.txt +0 -0
  304. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/cache/stats.js +0 -0
  305. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/add.js +0 -0
  306. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/arguments.json +0 -0
  307. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/help.js +0 -0
  308. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/help.txt +0 -0
  309. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/infer.js +0 -0
  310. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/list.js +0 -0
  311. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/migrate.js +0 -0
  312. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/models.js +0 -0
  313. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/remove.js +0 -0
  314. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/rm.js +0 -0
  315. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/test.js +0 -0
  316. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/arguments.json +0 -0
  317. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/help.js +0 -0
  318. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/help.txt +0 -0
  319. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/man.js +0 -0
  320. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/ps.js +0 -0
  321. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/stop.js +0 -0
  322. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/add.js +0 -0
  323. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/arguments.json +0 -0
  324. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/help.txt +0 -0
  325. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/args.js +0 -0
  326. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/namespace.js +0 -0
  327. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/reference-rewrite.js +0 -0
  328. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/reference-scan.js +0 -0
  329. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/scaffold.js +0 -0
  330. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/remove.js +0 -0
  331. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/rename.js +0 -0
  332. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/rm.js +0 -0
  333. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/add.js +0 -0
  334. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/get.js +0 -0
  335. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/help.js +0 -0
  336. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/help.txt +0 -0
  337. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/link-dev.js +0 -0
  338. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/list.js +0 -0
  339. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/remove.js +0 -0
  340. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/rm.js +0 -0
  341. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/set.js +0 -0
  342. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/unset.js +0 -0
  343. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/use.js +0 -0
  344. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/add.js +0 -0
  345. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/arguments.json +0 -0
  346. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/build.js +0 -0
  347. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/dot.js +0 -0
  348. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/get.js +0 -0
  349. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/help.js +0 -0
  350. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/help.txt +0 -0
  351. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/init.js +0 -0
  352. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/link-node-modules.js +0 -0
  353. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/link.js +0 -0
  354. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/list.js +0 -0
  355. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/man.js +0 -0
  356. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/msg.json +0 -0
  357. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/open.js +0 -0
  358. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/remove.js +0 -0
  359. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/reset.js +0 -0
  360. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/restart.js +0 -0
  361. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/set.js +0 -0
  362. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/start.js +0 -0
  363. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/status.js +0 -0
  364. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/stop.js +0 -0
  365. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/tail.js +0 -0
  366. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/update.js +0 -0
  367. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/version.js +0 -0
  368. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/gina-dev.1.md +0 -0
  369. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/gina-framework.1.md +0 -0
  370. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/gina.1.md +0 -0
  371. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/helper.js +0 -0
  372. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/add.js +0 -0
  373. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/arguments.json +0 -0
  374. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/export.js +0 -0
  375. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/help.js +0 -0
  376. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/help.txt +0 -0
  377. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/import.js +0 -0
  378. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/scan.js +0 -0
  379. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/_host.js +0 -0
  380. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/arguments.json +0 -0
  381. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/build.js +0 -0
  382. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/help.js +0 -0
  383. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/help.txt +0 -0
  384. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/list.js +0 -0
  385. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/man.js +0 -0
  386. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/rm.js +0 -0
  387. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/run.js +0 -0
  388. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/index.js +0 -0
  389. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/inspector/help.js +0 -0
  390. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/inspector/help.txt +0 -0
  391. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/inspector/open.js +0 -0
  392. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/man-render.js +0 -0
  393. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/arguments.json +0 -0
  394. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/help.js +0 -0
  395. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/help.txt +0 -0
  396. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/kill.js +0 -0
  397. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/list.js +0 -0
  398. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/msg.json +0 -0
  399. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/help.js +0 -0
  400. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/help.txt +0 -0
  401. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/inc/scan.js +0 -0
  402. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/list.js +0 -0
  403. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/reset.js +0 -0
  404. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/set.js +0 -0
  405. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/add.js +0 -0
  406. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/arguments.json +0 -0
  407. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/backup.js +0 -0
  408. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/build.js +0 -0
  409. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/help.js +0 -0
  410. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/help.txt +0 -0
  411. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/import.js +0 -0
  412. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/list.js +0 -0
  413. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/man.js +0 -0
  414. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/move.js +0 -0
  415. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/remove.js +0 -0
  416. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/rename.js +0 -0
  417. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/restart.js +0 -0
  418. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/restore.js +0 -0
  419. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/rm.js +0 -0
  420. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/start.js +0 -0
  421. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/status.js +0 -0
  422. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/stop.js +0 -0
  423. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/arguments.json +0 -0
  424. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/help.js +0 -0
  425. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/help.txt +0 -0
  426. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/list.js +0 -0
  427. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/remove.js +0 -0
  428. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/set.js +0 -0
  429. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/add.js +0 -0
  430. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/help.js +0 -0
  431. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/help.txt +0 -0
  432. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/link-local.js +0 -0
  433. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/link-production.js +0 -0
  434. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/list.js +0 -0
  435. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/remove.js +0 -0
  436. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/rm.js +0 -0
  437. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/use.js +0 -0
  438. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/secrets/arguments.json +0 -0
  439. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/secrets/help.js +0 -0
  440. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/secrets/help.txt +0 -0
  441. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/help.js +0 -0
  442. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/help.txt +0 -0
  443. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/list.js +0 -0
  444. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/man.js +0 -0
  445. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/start.js +0 -0
  446. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/arguments.json +0 -0
  447. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/gc.js +0 -0
  448. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/help.txt +0 -0
  449. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/stats.js +0 -0
  450. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/verify.js +0 -0
  451. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/view/add.js +0 -0
  452. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd-status-format/package.json +0 -0
  453. /package/framework/{v0.6.13 → v0.6.14}/lib/cmd-status-format/src/main.js +0 -0
  454. /package/framework/{v0.6.13 → v0.6.14}/lib/collection/README.md +0 -0
  455. /package/framework/{v0.6.13 → v0.6.14}/lib/collection/build.json +0 -0
  456. /package/framework/{v0.6.13 → v0.6.14}/lib/collection/package.json +0 -0
  457. /package/framework/{v0.6.13 → v0.6.14}/lib/config.js +0 -0
  458. /package/framework/{v0.6.13 → v0.6.14}/lib/connector-config/package.json +0 -0
  459. /package/framework/{v0.6.13 → v0.6.14}/lib/connector-config/src/main.js +0 -0
  460. /package/framework/{v0.6.13 → v0.6.14}/lib/connector-error/package.json +0 -0
  461. /package/framework/{v0.6.13 → v0.6.14}/lib/connector-error/src/main.js +0 -0
  462. /package/framework/{v0.6.13 → v0.6.14}/lib/connector-registry/package.json +0 -0
  463. /package/framework/{v0.6.13 → v0.6.14}/lib/connector-registry/src/main.js +0 -0
  464. /package/framework/{v0.6.13 → v0.6.14}/lib/cron/README.md +0 -0
  465. /package/framework/{v0.6.13 → v0.6.14}/lib/cron/package.json +0 -0
  466. /package/framework/{v0.6.13 → v0.6.14}/lib/cron/src/main.js +0 -0
  467. /package/framework/{v0.6.13 → v0.6.14}/lib/domain/LICENSE +0 -0
  468. /package/framework/{v0.6.13 → v0.6.14}/lib/domain/README.md +0 -0
  469. /package/framework/{v0.6.13 → v0.6.14}/lib/domain/package.json +0 -0
  470. /package/framework/{v0.6.13 → v0.6.14}/lib/domain/src/main.js +0 -0
  471. /package/framework/{v0.6.13 → v0.6.14}/lib/dto/package.json +0 -0
  472. /package/framework/{v0.6.13 → v0.6.14}/lib/dto/src/main.js +0 -0
  473. /package/framework/{v0.6.13 → v0.6.14}/lib/dto-pipe/package.json +0 -0
  474. /package/framework/{v0.6.13 → v0.6.14}/lib/dto-pipe/src/main.js +0 -0
  475. /package/framework/{v0.6.13 → v0.6.14}/lib/dto-types/package.json +0 -0
  476. /package/framework/{v0.6.13 → v0.6.14}/lib/dto-types/src/main.js +0 -0
  477. /package/framework/{v0.6.13 → v0.6.14}/lib/generator/index.js +0 -0
  478. /package/framework/{v0.6.13 → v0.6.14}/lib/i18n/package.json +0 -0
  479. /package/framework/{v0.6.13 → v0.6.14}/lib/i18n/src/main.js +0 -0
  480. /package/framework/{v0.6.13 → v0.6.14}/lib/image-build/package.json +0 -0
  481. /package/framework/{v0.6.13 → v0.6.14}/lib/image-build/src/main.js +0 -0
  482. /package/framework/{v0.6.13 → v0.6.14}/lib/index.js +0 -0
  483. /package/framework/{v0.6.13 → v0.6.14}/lib/inherits/LICENSE +0 -0
  484. /package/framework/{v0.6.13 → v0.6.14}/lib/inherits/README.md +0 -0
  485. /package/framework/{v0.6.13 → v0.6.14}/lib/inherits/package.json +0 -0
  486. /package/framework/{v0.6.13 → v0.6.14}/lib/inherits/src/main.js +0 -0
  487. /package/framework/{v0.6.13 → v0.6.14}/lib/inspector-events/package.json +0 -0
  488. /package/framework/{v0.6.13 → v0.6.14}/lib/inspector-events/src/main.js +0 -0
  489. /package/framework/{v0.6.13 → v0.6.14}/lib/inspector-redact/package.json +0 -0
  490. /package/framework/{v0.6.13 → v0.6.14}/lib/inspector-redact/src/main.js +0 -0
  491. /package/framework/{v0.6.13 → v0.6.14}/lib/instrument/package.json +0 -0
  492. /package/framework/{v0.6.13 → v0.6.14}/lib/instrument/src/main.js +0 -0
  493. /package/framework/{v0.6.13 → v0.6.14}/lib/job/package.json +0 -0
  494. /package/framework/{v0.6.13 → v0.6.14}/lib/job/src/main.js +0 -0
  495. /package/framework/{v0.6.13 → v0.6.14}/lib/job-store.js +0 -0
  496. /package/framework/{v0.6.13 → v0.6.14}/lib/json-config-header/package.json +0 -0
  497. /package/framework/{v0.6.13 → v0.6.14}/lib/json-config-header/src/main.js +0 -0
  498. /package/framework/{v0.6.13 → v0.6.14}/lib/kv/package.json +0 -0
  499. /package/framework/{v0.6.13 → v0.6.14}/lib/kv/src/main.js +0 -0
  500. /package/framework/{v0.6.13 → v0.6.14}/lib/kv-store.js +0 -0
  501. /package/framework/{v0.6.13 → v0.6.14}/lib/loading-state/package.json +0 -0
  502. /package/framework/{v0.6.13 → v0.6.14}/lib/loading-state/src/main.js +0 -0
  503. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/README.md +0 -0
  504. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/package.json +0 -0
  505. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/default/index.js +0 -0
  506. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/file/index.js +0 -0
  507. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  508. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  509. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/mq/index.js +0 -0
  510. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/mq/listener.js +0 -0
  511. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/mq/speaker.js +0 -0
  512. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/helper.js +0 -0
  513. /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/main.js +0 -0
  514. /package/framework/{v0.6.13 → v0.6.14}/lib/maintenance/package.json +0 -0
  515. /package/framework/{v0.6.13 → v0.6.14}/lib/maintenance/src/main.js +0 -0
  516. /package/framework/{v0.6.13 → v0.6.14}/lib/math/index.js +0 -0
  517. /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-dispatch/package.json +0 -0
  518. /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-dispatch/src/main.js +0 -0
  519. /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-http/package.json +0 -0
  520. /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-http/src/main.js +0 -0
  521. /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-server/package.json +0 -0
  522. /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-server/src/main.js +0 -0
  523. /package/framework/{v0.6.13 → v0.6.14}/lib/merge/README.md +0 -0
  524. /package/framework/{v0.6.13 → v0.6.14}/lib/merge/package.json +0 -0
  525. /package/framework/{v0.6.13 → v0.6.14}/lib/merge/src/main.js +0 -0
  526. /package/framework/{v0.6.13 → v0.6.14}/lib/metrics/package.json +0 -0
  527. /package/framework/{v0.6.13 → v0.6.14}/lib/metrics/src/main.js +0 -0
  528. /package/framework/{v0.6.13 → v0.6.14}/lib/model.js +0 -0
  529. /package/framework/{v0.6.13 → v0.6.14}/lib/net-locality/package.json +0 -0
  530. /package/framework/{v0.6.13 → v0.6.14}/lib/net-locality/src/main.js +0 -0
  531. /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-filters/README.md +0 -0
  532. /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-filters/package.json +0 -0
  533. /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-filters/src/main.js +0 -0
  534. /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-resolver/package.json +0 -0
  535. /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-resolver/src/main.js +0 -0
  536. /package/framework/{v0.6.13 → v0.6.14}/lib/proc.js +0 -0
  537. /package/framework/{v0.6.13 → v0.6.14}/lib/push/package.json +0 -0
  538. /package/framework/{v0.6.13 → v0.6.14}/lib/push/src/main.js +0 -0
  539. /package/framework/{v0.6.13 → v0.6.14}/lib/rate-limit/package.json +0 -0
  540. /package/framework/{v0.6.13 → v0.6.14}/lib/rate-limit/src/main.js +0 -0
  541. /package/framework/{v0.6.13 → v0.6.14}/lib/release-watch/package.json +0 -0
  542. /package/framework/{v0.6.13 → v0.6.14}/lib/release-watch/src/main.js +0 -0
  543. /package/framework/{v0.6.13 → v0.6.14}/lib/render-cache/package.json +0 -0
  544. /package/framework/{v0.6.13 → v0.6.14}/lib/render-cache/src/main.js +0 -0
  545. /package/framework/{v0.6.13 → v0.6.14}/lib/render-cache-store.js +0 -0
  546. /package/framework/{v0.6.13 → v0.6.14}/lib/routing/README.md +0 -0
  547. /package/framework/{v0.6.13 → v0.6.14}/lib/routing/build.json +0 -0
  548. /package/framework/{v0.6.13 → v0.6.14}/lib/routing/package.json +0 -0
  549. /package/framework/{v0.6.13 → v0.6.14}/lib/routing/src/main.js +0 -0
  550. /package/framework/{v0.6.13 → v0.6.14}/lib/routing/src/radix.js +0 -0
  551. /package/framework/{v0.6.13 → v0.6.14}/lib/routing-introspect/package.json +0 -0
  552. /package/framework/{v0.6.13 → v0.6.14}/lib/routing-introspect/src/main.js +0 -0
  553. /package/framework/{v0.6.13 → v0.6.14}/lib/secrets/package.json +0 -0
  554. /package/framework/{v0.6.13 → v0.6.14}/lib/secrets/src/env-file.js +0 -0
  555. /package/framework/{v0.6.13 → v0.6.14}/lib/session-store.js +0 -0
  556. /package/framework/{v0.6.13 → v0.6.14}/lib/shell.js +0 -0
  557. /package/framework/{v0.6.13 → v0.6.14}/lib/sqlite-driver.js +0 -0
  558. /package/framework/{v0.6.13 → v0.6.14}/lib/state.js +0 -0
  559. /package/framework/{v0.6.13 → v0.6.14}/lib/storage/package.json +0 -0
  560. /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/local-cas.js +0 -0
  561. /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/local-stream.js +0 -0
  562. /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/local.js +0 -0
  563. /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/main.js +0 -0
  564. /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/meta-store.js +0 -0
  565. /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/s3.js +0 -0
  566. /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/util.js +0 -0
  567. /package/framework/{v0.6.13 → v0.6.14}/lib/storage-store.js +0 -0
  568. /package/framework/{v0.6.13 → v0.6.14}/lib/swig-filters/README.md +0 -0
  569. /package/framework/{v0.6.13 → v0.6.14}/lib/swig-filters/package.json +0 -0
  570. /package/framework/{v0.6.13 → v0.6.14}/lib/swig-filters/src/main.js +0 -0
  571. /package/framework/{v0.6.13 → v0.6.14}/lib/swig-resolver/package.json +0 -0
  572. /package/framework/{v0.6.13 → v0.6.14}/lib/swig-resolver/src/main.js +0 -0
  573. /package/framework/{v0.6.13 → v0.6.14}/lib/template-loaders/package.json +0 -0
  574. /package/framework/{v0.6.13 → v0.6.14}/lib/template-loaders/src/loaders/http.js +0 -0
  575. /package/framework/{v0.6.13 → v0.6.14}/lib/template-loaders/src/loaders/memory.js +0 -0
  576. /package/framework/{v0.6.13 → v0.6.14}/lib/template-loaders/src/main.js +0 -0
  577. /package/framework/{v0.6.13 → v0.6.14}/lib/url/README.md +0 -0
  578. /package/framework/{v0.6.13 → v0.6.14}/lib/url/index.js +0 -0
  579. /package/framework/{v0.6.13 → v0.6.14}/lib/url/routing.json +0 -0
  580. /package/framework/{v0.6.13 → v0.6.14}/lib/uuid/package.json +0 -0
  581. /package/framework/{v0.6.13 → v0.6.14}/lib/uuid/src/main.js +0 -0
  582. /package/framework/{v0.6.13 → v0.6.14}/lib/validator.js +0 -0
  583. /package/framework/{v0.6.13 → v0.6.14}/lib/watcher/package.json +0 -0
  584. /package/framework/{v0.6.13 → v0.6.14}/lib/watcher/src/main.js +0 -0
  585. /package/framework/{v0.6.13 → v0.6.14}/lib/ws-framing/package.json +0 -0
  586. /package/framework/{v0.6.13 → v0.6.14}/lib/ws-framing/src/main.js +0 -0
  587. /package/framework/{v0.6.13 → v0.6.14}/lib/ws-query/package.json +0 -0
  588. /package/framework/{v0.6.13 → v0.6.14}/lib/ws-query/src/main.js +0 -0
  589. /package/framework/{v0.6.13 → v0.6.14}/lib/ws-session/package.json +0 -0
  590. /package/framework/{v0.6.13 → v0.6.14}/lib/ws-session/src/main.js +0 -0
@@ -1,4 +1,3 @@
1
- var fs = require('fs');
2
1
  var console = lib.logger;
3
2
 
4
3
  var CmdHelper = require('./../helper');
@@ -66,31 +65,17 @@ var CmdHelper = require('./../helper');
66
65
  * @param {object} cmd - The cmd dispatcher object (lib/cmd/index.js)
67
66
  */
68
67
  function Check(opt, cmd) {
69
- var self = { format: 'text', anyUnset: false, scopeName: null, envName: null, envFile: null, envMap: null };
68
+ var self = { format: 'text', anyUnset: false, anyError: false, scopeName: null, envName: null, envFile: null, envMap: null };
70
69
 
71
70
  var secrets = lib.secrets;
72
71
  var merge = lib.merge;
73
72
 
74
- /**
75
- * Matches any `${…}` token the substitution pass did not resolve. Mirrors
76
- * the guard in `lib/secrets/src/main.js` so this command rejects exactly
77
- * what the runtime would reject.
78
- *
79
- * @inner
80
- * @constant
81
- * @type {RegExp}
82
- */
83
- var UNRESOLVED_TOKEN = /\$\{[^}]*\}/;
84
-
85
- /**
86
- * Config files are JSON. The loader globs every `.json` in a config
87
- * dir; this matches that, then drops dotfiles and `* copy` siblings.
88
- *
89
- * @inner
90
- * @constant
91
- * @type {RegExp}
92
- */
93
- var JSON_EXT = /\.json$/;
73
+ // The declaration guards (entry shape, `secret:` placeholder, unresolved
74
+ // token, empty path segment) are consumed via secrets.validateFilePaths —
75
+ // the RUNTIME's own implementation (lib/secrets/src/declaration.js), not a
76
+ // local mirror. A hand-kept copy lived here and drifted twice (#B408: the
77
+ // trim and empty-segment guards never reached it, so this gate green-lit
78
+ // configs boot refuses); the local UNRESOLVED_TOKEN constant retired with it.
94
79
 
95
80
  /**
96
81
  * Parses `--format`, resolves project + optional bundle via CmdHelper,
@@ -105,6 +90,7 @@ function Check(opt, cmd) {
105
90
  if ( !isCmdConfigured() ) return false;
106
91
 
107
92
  self.anyUnset = false;
93
+ self.anyError = false;
108
94
 
109
95
  for (var i = 3, len = process.argv.length; i < len; i++) {
110
96
  var arg = process.argv[i];
@@ -154,7 +140,11 @@ function Check(opt, cmd) {
154
140
  return;
155
141
  }
156
142
  checkAll();
157
- process.exit(self.anyUnset ? 1 : 0);
143
+ // #B409 — declaration errors fail the gate too: the runtime
144
+ // refuses to boot on them, so an exit keyed on unset keys alone
145
+ // green-lit a config that cannot start whenever the environment
146
+ // happened to carry the keys.
147
+ process.exit((self.anyUnset || self.anyError) ? 1 : 0);
158
148
  return;
159
149
  }
160
150
 
@@ -176,12 +166,16 @@ function Check(opt, cmd) {
176
166
  checkProjectOnly(self.projectName);
177
167
  }
178
168
 
179
- process.exit(self.anyUnset ? 1 : 0);
169
+ // #B409 — same widening as the checkAll branch above.
170
+ process.exit((self.anyUnset || self.anyError) ? 1 : 0);
180
171
  };
181
172
 
182
173
  /**
183
- * Reads a JSON file with comment tolerance via `requireJSON`. Returns
184
- * `null` on any I/O or parse error.
174
+ * Delegates to `lib.secrets.readJsonSafe` rather than reading here: the
175
+ * scoped-settings and env.json reads below must tolerate exactly the
176
+ * comment shapes the shared walk tolerates, or the two sides could
177
+ * disagree about what a config file contains — the drift class the
178
+ * shared sources module exists to prevent.
185
179
  *
186
180
  * @inner
187
181
  * @private
@@ -189,12 +183,7 @@ function Check(opt, cmd) {
189
183
  * @returns {object|null}
190
184
  */
191
185
  var readJsonSafe = function (filePath) {
192
- try {
193
- if ( !fs.existsSync(filePath) ) return null;
194
- return requireJSON(filePath);
195
- } catch (e) {
196
- return null;
197
- }
186
+ return secrets.readJsonSafe(filePath);
198
187
  };
199
188
 
200
189
  /**
@@ -223,7 +212,7 @@ function Check(opt, cmd) {
223
212
 
224
213
  /**
225
214
  * Reads one named config file with the `--scope` overlay applied, using
226
- * the same merge direction as `collectKeysFromConfigDir` (scope wins,
215
+ * the same merge direction as the shared config-source walk (scope wins,
227
216
  * base back-fills, `override=false` stated explicitly).
228
217
  *
229
218
  * @inner
@@ -353,11 +342,16 @@ function Check(opt, cmd) {
353
342
  * readable files into one map, later entries winning — the same ordering
354
343
  * `lib/secrets/backends/file.js` applies.
355
344
  *
356
- * Validation mirrors `secrets.selectBackend` so this command accepts and
357
- * rejects exactly what a boot would: a non-string or empty entry, a
358
- * `${secret:…}` placeholder (unresolvable by definition — the backend that
359
- * would resolve it is the one being built), and any token the dictionary
360
- * did not know.
345
+ * Validation is `secrets.validateFilePaths` — the SAME implementation
346
+ * `secrets.selectBackend` runs at boot (lib/secrets/src/declaration.js),
347
+ * so this command accepts and rejects exactly what a boot would, by
348
+ * construction rather than by mirroring: a non-string or whitespace-only
349
+ * entry, a `${secret:…}` placeholder (unresolvable by definition — the
350
+ * backend that would resolve it is the one being built), any token the
351
+ * dictionary did not know, and an empty path segment (`//`). It runs on
352
+ * the POST-substitution values, as the runtime's does, and BEFORE any
353
+ * layer is read — the runtime reads no file on an invalid declaration,
354
+ * so neither does this report (#B408).
361
355
  *
362
356
  * @inner
363
357
  * @private
@@ -383,17 +377,6 @@ function Check(opt, cmd) {
383
377
  if (!raw.length) return out;
384
378
  out.declared = true;
385
379
 
386
- for (var i = 0; i < raw.length; i++) {
387
- if (typeof raw[i] !== 'string' || raw[i] === '') {
388
- out.errors.push('`settings.secrets.file` must be a non-empty string or an array of them');
389
- return out;
390
- }
391
- if (raw[i].indexOf('${secret:') > -1) {
392
- out.errors.push('`settings.secrets.file` cannot contain a `${secret:…}` placeholder');
393
- return out;
394
- }
395
- }
396
-
397
380
  var resolved;
398
381
  try {
399
382
  resolved = whisper(buildReps(projectPath, manifest, bundleName), JSON.clone(raw));
@@ -402,20 +385,27 @@ function Check(opt, cmd) {
402
385
  return out;
403
386
  }
404
387
 
388
+ // The runtime's own declaration guards, run before any layer read —
389
+ // one shared implementation, so this gate cannot drift lax again
390
+ // (#B408). On the unresolved-token verdict, append the CLI-only hint:
391
+ // the runtime reads --scope/--env from whatever launches the bundle,
392
+ // which an offline report cannot see (§14.3), so under-reading stays
393
+ // stricter than the runtime, never laxer.
394
+ var declErrors = secrets.validateFilePaths(resolved);
395
+ if (declErrors.length) {
396
+ var declMsg = declErrors[0].message;
397
+ if (declErrors[0].code === 'file-unresolved-token') {
398
+ declMsg += ' — pass --scope/--env if it names one, since the runtime'
399
+ + ' reads those from whatever launches the bundle';
400
+ }
401
+ out.errors.push(declMsg);
402
+ return out;
403
+ }
404
+
405
405
  var map = Object.create(null);
406
406
  var origin = Object.create(null);
407
407
  for (var p = 0; p < resolved.length; p++) {
408
408
  var path = resolved[p];
409
- if (UNRESOLVED_TOKEN.test(path)) {
410
- // Skip the whole tier rather than stat a literally-named path.
411
- // Under-reading can only make this gate stricter than the
412
- // runtime; guessing could make it laxer, which is the failure
413
- // this command exists to prevent.
414
- out.errors.push('unresolved token in `' + path + '`'
415
- + ' — pass --scope/--env if it names one, since the runtime'
416
- + ' reads those from whatever launches the bundle');
417
- return out;
418
- }
419
409
  var layerRead = secrets.readEnvFile(path);
420
410
  out.layers.push({
421
411
  path : path,
@@ -449,7 +439,9 @@ function Check(opt, cmd) {
449
439
  };
450
440
 
451
441
  /**
452
- * Loads `<projectPath>/manifest.json`. Returns `null` on failure.
442
+ * Delegates to `lib.secrets.loadManifest` — the same manifest read the
443
+ * shared config-source walk performs, so this command and the walk
444
+ * cannot disagree about what the manifest says.
453
445
  *
454
446
  * @inner
455
447
  * @private
@@ -457,13 +449,13 @@ function Check(opt, cmd) {
457
449
  * @returns {object|null}
458
450
  */
459
451
  var loadManifest = function (projectPath) {
460
- return readJsonSafe(_(projectPath + '/manifest.json', true));
452
+ return secrets.loadManifest(projectPath);
461
453
  };
462
454
 
463
455
  /**
464
- * Resolves a bundle's source-dir (relative to the project root) from
465
- * the manifest, mirroring `bundle:openapi`. Falls back to the bundle
466
- * name when `src` is absent.
456
+ * Delegates to `lib.secrets.resolveBundleSrc` — the same src lookup the
457
+ * shared walk uses, kept identical so the settings read below targets
458
+ * the directory the walk enumerated.
467
459
  *
468
460
  * @inner
469
461
  * @private
@@ -472,92 +464,106 @@ function Check(opt, cmd) {
472
464
  * @returns {string}
473
465
  */
474
466
  var resolveBundleSrc = function (manifest, bundleName) {
475
- if ( manifest && manifest.bundles && manifest.bundles[bundleName] && manifest.bundles[bundleName].src ) {
476
- return manifest.bundles[bundleName].src;
477
- }
478
- return bundleName;
467
+ return secrets.resolveBundleSrc(manifest, bundleName);
479
468
  };
480
469
 
481
- /**
482
- * Lists the `.json` files in `dir`, skipping dotfiles and `* copy`
483
- * siblings. Empty when the dir is absent.
484
- *
485
- * @inner
486
- * @private
487
- * @param {string} dir - Absolute config directory
488
- * @returns {string[]}
489
- */
490
- var listJsonFiles = function (dir) {
491
- if ( !fs.existsSync(dir) ) return [];
492
- var entries;
493
- try { entries = fs.readdirSync(dir); } catch (e) { return []; }
494
- var out = [];
495
- for (var i = 0; i < entries.length; i++) {
496
- var name = entries[i];
497
- if ( /^\./.test(name) ) continue;
498
- if ( /\s+copy/i.test(name) ) continue;
499
- if ( !JSON_EXT.test(name) ) continue;
500
- out.push(name);
501
- }
502
- out.sort();
503
- return out;
504
- };
470
+ // The config-dir walk itself (dir globbing, scope overlay, key
471
+ // enumeration) moved to lib/secrets' sources module, consumed by the
472
+ // checkers below via secrets.getProjectRequiredKeys — see that module's
473
+ // header for the walk semantics and the sharing rationale (#B263).
505
474
 
506
475
  /**
507
- * Reads every `.json` under `absDir`, enumerates its required secret
508
- * keys, and adds them to `keySet` (a null-proto set). Mutates `keySet`.
509
- *
510
- * When `--scope=<s>` is active, the sibling `<absDir>_<scope>/` dir is
511
- * read-only deep-merged over the base per config file (scope wins) before
512
- * enumeration — mirroring a deploy's per-scope overlay — so the keys are
513
- * the *effective* ones that scope will require. Read-only introspection;
514
- * never touches the runtime config loader.
476
+ * Resolves the declared `settings.secrets.exec` tier: whispers the spec,
477
+ * validates it through the SAME shared implementation the runtime uses
478
+ * (`secrets.validateExecSpec`), then RUNS the declared command through the
479
+ * runtime's own fetch (`secrets.fetchExecMap` — same timeout default, same
480
+ * SIGKILL bound, same output contract), so this gate's verdict matches a
481
+ * boot's by construction. A validate-only mirror was rejected at design
482
+ * time: it would report every exec-supplied key UNSET — the #B263
483
+ * false-RED shape this command was built to prevent.
515
484
  *
516
485
  * @inner
517
486
  * @private
518
- * @param {string} absDir - Absolute base config directory to read
519
- * @param {object} keySet - Mutable null-proto set; key name -> true
487
+ * @param {string} projectPath
488
+ * @param {object|null} manifest
489
+ * @param {string} bundleName
490
+ * @param {object} execSpec - The declared (pre-substitution) `settings.secrets.exec` value
491
+ * @returns {{tier:string, declared:boolean, layers:Array, map:(object|null), origin:(object|null), errors:string[], exec:(object|null)}}
520
492
  */
521
- var collectKeysFromConfigDir = function (absDir, keySet) {
522
- var scopeAbsDir = self.scopeName ? (absDir + '_' + self.scopeName) : null;
523
- var baseNames = listJsonFiles(absDir);
524
- var scopeNames = scopeAbsDir ? listJsonFiles(scopeAbsDir) : [];
525
-
526
- var names = baseNames.slice();
527
- for (var s = 0; s < scopeNames.length; s++) {
528
- if (names.indexOf(scopeNames[s]) < 0) names.push(scopeNames[s]);
529
- }
530
-
531
- for (var f = 0; f < names.length; f++) {
532
- var name = names[f];
533
- var baseContent = (baseNames.indexOf(name) > -1) ? readJsonSafe(_(absDir + '/' + name, true)) : null;
534
- var scopeContent = (scopeAbsDir && scopeNames.indexOf(name) > -1) ? readJsonSafe(_(scopeAbsDir + '/' + name, true)) : null;
535
- // scope deep-merges over base (scope wins); override=false is explicit (not
536
- // merge's default) so scope precedence stays correct even if lib/merge's
537
- // default override ever changes.
538
- var effective = scopeContent ? merge(JSON.clone(scopeContent), baseContent || {}, false) : baseContent;
539
- if (!effective) continue;
540
- var keys = secrets.getRequiredKeys(effective);
541
- for (var k = 0; k < keys.length; k++) {
542
- keySet[keys[k]] = true;
493
+ var resolveSecretsExecTier = function (projectPath, manifest, bundleName, execSpec) {
494
+ var out = { tier: 'exec', declared: true, layers: [], map: null, origin: null, errors: [], exec: null };
495
+
496
+ var resolvedSpec;
497
+ try {
498
+ resolvedSpec = whisper(buildReps(projectPath, manifest, bundleName), JSON.clone(execSpec));
499
+ } catch (whisperErr) {
500
+ out.errors.push('could not substitute tokens in `settings.secrets.exec`: ' + whisperErr.message);
501
+ return out;
502
+ }
503
+
504
+ var specErrors = secrets.validateExecSpec(resolvedSpec);
505
+ if (specErrors.length) {
506
+ var specMsg = specErrors[0].message;
507
+ if (specErrors[0].code === 'exec-command-unresolved-token') {
508
+ specMsg += ' — pass --scope/--env if it names one, since the runtime'
509
+ + ' reads those from whatever launches the bundle';
543
510
  }
511
+ out.errors.push(specMsg);
512
+ return out;
513
+ }
514
+
515
+ var map;
516
+ try {
517
+ map = secrets.fetchExecMap(resolvedSpec);
518
+ } catch (fetchErr) {
519
+ // The runtime REFUSES to boot on this — reporting it softer would
520
+ // green-light a config that cannot start (#B267's reasoning,
521
+ // exec edition).
522
+ out.errors.push(fetchErr.message + ' — the runtime REFUSES to boot on this');
523
+ return out;
544
524
  }
525
+
526
+ out.map = map;
527
+ out.exec = { command: resolvedSpec.command, keys: Object.keys(map).length };
528
+ return out;
545
529
  };
546
530
 
547
531
  /**
548
- * Computes the shared-config key set once per project. The loader
549
- * merges `shared/config/` into every bundle, so these keys are
550
- * required by each bundle.
532
+ * Resolves whichever secrets tier the bundle declares — the file chain or
533
+ * the exec bridge — after the shared block-level validation
534
+ * (`secrets.validateBlock`: block shape, unknown-key refusal, file/exec
535
+ * exclusivity), which runs BEFORE either tier is touched, exactly as the
536
+ * runtime's `selectBackend` does. Same result shape as
537
+ * `resolveSecretsFileChain`, plus `tier` (`null` | `'file'` | `'exec'`)
538
+ * and, for the exec tier, an `exec: {command, keys}` descriptor.
551
539
  *
552
540
  * @inner
553
541
  * @private
554
542
  * @param {string} projectPath
555
- * @returns {object} Null-proto set; key name -> true
543
+ * @param {object|null} manifest
544
+ * @param {string} bundleName
545
+ * @returns {{tier:(string|null), declared:boolean, layers:Array, map:(object|null), origin:(object|null), errors:string[], exec:(object|null)}}
556
546
  */
557
- var computeSharedKeys = function (projectPath) {
558
- var keySet = Object.create(null);
559
- collectKeysFromConfigDir(_(projectPath + '/shared/config', true), keySet);
560
- return keySet;
547
+ var resolveSecretsChain = function (projectPath, manifest, bundleName) {
548
+ var out = { tier: null, declared: false, layers: [], map: null, origin: null, errors: [], exec: null };
549
+
550
+ var settings = readEffectiveSettings(projectPath, manifest, bundleName);
551
+ var block = (settings && typeof settings === 'object') ? settings.secrets : undefined;
552
+ if (typeof block === 'undefined' || block === null) return out;
553
+
554
+ var blockErrors = secrets.validateBlock(block);
555
+ if (blockErrors.length) {
556
+ out.declared = true;
557
+ out.errors.push(blockErrors[0].message);
558
+ return out;
559
+ }
560
+ if (typeof block.exec !== 'undefined' && block.exec !== null) {
561
+ return resolveSecretsExecTier(projectPath, manifest, bundleName, block.exec);
562
+ }
563
+ var fileOut = resolveSecretsFileChain(projectPath, manifest, bundleName);
564
+ fileOut.tier = fileOut.declared ? 'file' : null;
565
+ fileOut.exec = null;
566
+ return fileOut;
561
567
  };
562
568
 
563
569
  /**
@@ -590,7 +596,14 @@ function Check(opt, cmd) {
590
596
  if (chain && chain.map) {
591
597
  var value = chain.map[key];
592
598
  if (typeof value === 'string' && value !== '') {
593
- return { set: true, source: 'file', from: chain.origin[key] };
599
+ // The declared tier — file or exec; `sourceLabel` passes any
600
+ // non-'file' source through verbatim, so 'exec' labels ride
601
+ // for free. `from` is a per-layer path, a file-tier concept.
602
+ return {
603
+ set: true,
604
+ source: (chain.tier === 'exec') ? 'exec' : 'file',
605
+ from: chain.origin ? chain.origin[key] : null
606
+ };
594
607
  }
595
608
  }
596
609
  return { set: false, source: null, from: null };
@@ -598,9 +611,11 @@ function Check(opt, cmd) {
598
611
 
599
612
  /**
600
613
  * Builds a check report for one bundle: every required key with its
601
- * `SET`/`UNSET` status against both tiers, plus the resolved
602
- * `settings.secrets.file` chain that formed the lower one. Flips
603
- * `self.anyUnset` when a key is missing.
614
+ * `SET`/`UNSET` status against both tiers, plus whichever declared tier
615
+ * formed the lower one — the resolved `settings.secrets.file` chain or
616
+ * the `settings.secrets.exec` fetch (mutually exclusive by validation).
617
+ * Flips `self.anyUnset` when a key is missing and `self.anyError` when
618
+ * the declaration itself would refuse the boot (#B409).
604
619
  *
605
620
  * The chain is resolved per bundle, not per project: `settings.json` is a
606
621
  * per-bundle file and a declared path may embed `${bundle}`.
@@ -610,20 +625,18 @@ function Check(opt, cmd) {
610
625
  * @param {string} projectPath
611
626
  * @param {object|null} manifest
612
627
  * @param {string} bundleName
613
- * @param {object} sharedKeys - Pre-computed shared key set
628
+ * @param {Object<string, string[]>} entryByKey - The bundle's walk entry map (shared keys already folded in)
614
629
  * @returns {{bundle:string, totalKeys:number, set:number, unset:number, keys:Array<{key:string, set:boolean, source:(string|null), from:(string|null)}>, secretsFile:object}}
615
630
  */
616
- var checkBundle = function (projectPath, manifest, bundleName, sharedKeys) {
617
- var keySet = Object.create(null);
618
- for (var sk in sharedKeys) {
619
- keySet[sk] = true;
620
- }
621
- var bundleSrc = resolveBundleSrc(manifest, bundleName);
622
- collectKeysFromConfigDir(_(projectPath + '/' + bundleSrc + '/config', true), keySet);
631
+ var checkBundle = function (projectPath, manifest, bundleName, entryByKey) {
632
+ var chain = resolveSecretsChain(projectPath, manifest, bundleName);
623
633
 
624
- var chain = resolveSecretsFileChain(projectPath, manifest, bundleName);
634
+ // #B409 — a declaration/fetch error means the runtime refuses to
635
+ // boot this bundle, so the gate must exit non-zero regardless of
636
+ // whether the environment happens to carry the keys.
637
+ if (chain.errors.length) { self.anyError = true; }
625
638
 
626
- var keys = Object.keys(keySet).sort();
639
+ var keys = Object.keys(entryByKey).sort();
627
640
  var statuses = [];
628
641
  var setCount = 0;
629
642
  for (var k = 0; k < keys.length; k++) {
@@ -638,11 +651,19 @@ function Check(opt, cmd) {
638
651
  unset : keys.length - setCount,
639
652
  keys : statuses,
640
653
  secretsFile : {
641
- declared : chain.declared,
654
+ declared : (chain.declared && chain.tier !== 'exec'),
642
655
  assumedScope : self.scopeAssumed || null,
643
656
  assumedEnv : self.envName || null,
644
657
  layers : chain.layers,
645
- errors : chain.errors
658
+ errors : (chain.tier === 'exec') ? [] : chain.errors
659
+ },
660
+ secretsExec : {
661
+ declared : (chain.tier === 'exec'),
662
+ assumedScope : self.scopeAssumed || null,
663
+ assumedEnv : self.envName || null,
664
+ command : (chain.exec) ? chain.exec.command : null,
665
+ keys : (chain.exec) ? chain.exec.keys : 0,
666
+ errors : (chain.tier === 'exec') ? chain.errors : []
646
667
  }
647
668
  };
648
669
  };
@@ -657,14 +678,13 @@ function Check(opt, cmd) {
657
678
  var report = { projects: [] };
658
679
  var names = Object.keys(self.projects).sort();
659
680
  for (var i = 0; i < names.length; i++) {
660
- var pp = self.projects[names[i]];
661
- var mf = loadManifest(pp.path);
662
- if (!mf || !mf.bundles) continue;
663
- var sharedKeys = computeSharedKeys(pp.path);
664
- var entry = { project: names[i], bundles: [] };
665
- var bnames = Object.keys(mf.bundles).sort();
666
- for (var b = 0; b < bnames.length; b++) {
667
- entry.bundles.push(checkBundle(pp.path, mf, bnames[b], sharedKeys));
681
+ var pp = self.projects[names[i]];
682
+ var walked = secrets.getProjectRequiredKeys(pp.path, { scope: self.scopeName });
683
+ if (!walked) continue;
684
+ var mf = loadManifest(pp.path); // still read here: the secrets-file chain needs it
685
+ var entry = { project: names[i], bundles: [] };
686
+ for (var b = 0; b < walked.bundles.length; b++) {
687
+ entry.bundles.push(checkBundle(pp.path, mf, walked.bundles[b].bundle, walked.bundles[b].byKey));
668
688
  }
669
689
  report.projects.push(entry);
670
690
  }
@@ -679,18 +699,17 @@ function Check(opt, cmd) {
679
699
  * @param {string} projectName
680
700
  */
681
701
  var checkProjectOnly = function (projectName) {
682
- var project = self.projects[projectName];
683
- var manifest = loadManifest(project.path);
684
- if (!manifest || !manifest.bundles) {
702
+ var project = self.projects[projectName];
703
+ var walked = secrets.getProjectRequiredKeys(project.path, { scope: self.scopeName });
704
+ if (!walked) {
685
705
  console.error('Project @' + projectName + ' has no manifest.json or no bundles registered.');
686
706
  process.exit(1);
687
707
  return;
688
708
  }
689
- var sharedKeys = computeSharedKeys(project.path);
690
- var bundles = Object.keys(manifest.bundles).sort();
691
- var report = { project: projectName, bundles: [] };
692
- for (var i = 0; i < bundles.length; i++) {
693
- report.bundles.push(checkBundle(project.path, manifest, bundles[i], sharedKeys));
709
+ var manifest = loadManifest(project.path); // still read here: the secrets-file chain needs it
710
+ var report = { project: projectName, bundles: [] };
711
+ for (var i = 0; i < walked.bundles.length; i++) {
712
+ report.bundles.push(checkBundle(project.path, manifest, walked.bundles[i].bundle, walked.bundles[i].byKey));
694
713
  }
695
714
  emit(report);
696
715
  };
@@ -704,10 +723,10 @@ function Check(opt, cmd) {
704
723
  * @param {string} bundleName
705
724
  */
706
725
  var checkBundleOnly = function (projectName, bundleName) {
707
- var project = self.projects[projectName];
708
- var manifest = loadManifest(project.path);
709
- var sharedKeys = computeSharedKeys(project.path);
710
- var report = { project: projectName, bundles: [checkBundle(project.path, manifest, bundleName, sharedKeys)] };
726
+ var project = self.projects[projectName];
727
+ var walked = secrets.getProjectRequiredKeys(project.path, { scope: self.scopeName, bundle: bundleName });
728
+ var manifest = loadManifest(project.path); // still read here: the secrets-file chain needs it
729
+ var report = { project: projectName, bundles: [checkBundle(project.path, manifest, bundleName, walked.bundles[0].byKey)] };
711
730
  emit(report);
712
731
  };
713
732
 
@@ -763,6 +782,7 @@ function Check(opt, cmd) {
763
782
  var emitTextBundle = function (br) {
764
783
  console.log(' ' + br.bundle + ':');
765
784
  emitTextChain(br.secretsFile);
785
+ emitTextExec(br.secretsExec);
766
786
  if (br.totalKeys === 0) {
767
787
  console.log(' No ${secret:KEY} placeholders found in config.');
768
788
  return;
@@ -820,6 +840,38 @@ function Check(opt, cmd) {
820
840
  }
821
841
  };
822
842
 
843
+ /**
844
+ * Renders the exec tier's line(s), mirroring `emitTextChain`'s shape for
845
+ * the file chain: the assumed scope/env (same reasoning — launch-time
846
+ * values this process cannot read), then either the errors — each one a
847
+ * verdict the runtime would refuse the boot on — or the fetch summary.
848
+ * Only the command's argv and a key COUNT are ever printed: the fetched
849
+ * values are the secrets payload and never reach the report.
850
+ *
851
+ * @inner
852
+ * @private
853
+ * @param {object} se - The `secretsExec` block from `checkBundle`
854
+ */
855
+ var emitTextExec = function (se) {
856
+ if (!se || !se.declared) return;
857
+
858
+ var assumed = [];
859
+ if (se.assumedScope) assumed.push('scope=' + se.assumedScope);
860
+ if (se.assumedEnv) assumed.push('env=' + se.assumedEnv);
861
+ console.log(' settings.secrets.exec'
862
+ + (assumed.length ? ' (assuming ' + assumed.join(', ') + ')' : '') + ':');
863
+
864
+ for (var e = 0; e < se.errors.length; e++) {
865
+ console.log(' ! ' + se.errors[e]);
866
+ }
867
+ if (se.errors.length) {
868
+ console.log(' ! exec tier skipped — keys below are checked against the environment only');
869
+ return;
870
+ }
871
+ console.log(' [exec] `' + (se.command ? se.command.join(' ') : '') + '` fetched ('
872
+ + se.keys + ' keys)');
873
+ };
874
+
823
875
  /**
824
876
  * Names the tier a key was satisfied from. An empty label for `UNSET`
825
877
  * keeps the column honest — there is no source to name.