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.
- package/CHANGELOG.md +30 -0
- package/README.md +28 -22
- package/ROADMAP.md +3 -2
- package/framework/v0.6.14/VERSION +1 -0
- package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.js +9 -6
- package/framework/{v0.6.13 → v0.6.14}/core/config.js +9 -4
- package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.js +208 -42
- package/framework/{v0.6.13 → v0.6.14}/core/gna.js +25 -1
- package/framework/{v0.6.13 → v0.6.14}/core/server.js +66 -2
- package/framework/{v0.6.13 → v0.6.14}/lib/cmd/secrets/check.js +220 -168
- package/framework/v0.6.14/lib/cmd/secrets/scan.js +264 -0
- package/framework/{v0.6.13 → v0.6.14}/lib/collection/src/main.js +9 -6
- package/framework/{v0.6.13 → v0.6.14}/lib/secrets/src/backends/env.js +41 -1
- package/framework/v0.6.14/lib/secrets/src/backends/exec.js +253 -0
- package/framework/{v0.6.13 → v0.6.14}/lib/secrets/src/backends/file.js +5 -27
- package/framework/v0.6.14/lib/secrets/src/declaration.js +303 -0
- package/framework/{v0.6.13 → v0.6.14}/lib/secrets/src/main.js +107 -54
- package/framework/v0.6.14/lib/secrets/src/sources.js +325 -0
- package/framework/{v0.6.13 → v0.6.14}/package.json +1 -1
- package/gna.js +4 -4
- package/llms.txt +6 -4
- package/package.json +3 -3
- package/schema/settings.json +21 -0
- package/framework/v0.6.13/VERSION +0 -1
- package/framework/v0.6.13/lib/cmd/secrets/scan.js +0 -448
- /package/framework/{v0.6.13 → v0.6.14}/AUTHORS +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/LICENSE +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/html/nolayout.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/html/static.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/android-chrome-192x192.png +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/android-chrome-512x512.png +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/apple-touch-icon.png +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/favicon-16x16.png +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/favicon-32x32.png +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/img/favicon.ico +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/index.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/ai/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/ai/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/connector.v3.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/connector.v4.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/n1ql.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/session-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/couchbase/lib/storage-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/duckdb/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/duckdb/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/lib/job-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mongodb/lib/session-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mysql/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/mysql/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/param-redact.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/postgresql/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/postgresql/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/job-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/kv-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/render-cache-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/redis/lib/session-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/scylladb/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/scylladb/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/scylladb/lib/session-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sql-parser.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/lib/connector.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/lib/job-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/lib/kv-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/connectors/sqlite/lib/session-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/content.encoding +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.framework.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-json.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-nunjucks-async.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-nunjucks.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-stream.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-swig-async.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-swig.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/controller.render-v1.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/inspector-window-emit.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/controller/release-banner.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/dev/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/dev/lib/class.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/dev/lib/factory.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/dev/lib/tools.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/locales/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/locales/currency.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/locales/dist/language/en.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/locales/dist/language/fr.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/locales/dist/region/en.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/locales/dist/region/fr.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/locales/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/mime.types +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/model/entity.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/model/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/model/template/entityFactory.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/model/template/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/csrf/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/csrf/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/csrf/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coep/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coep/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coop/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coop/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/corp/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/corp/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/csp/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/csp/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/csp/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hsts/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hsts/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/session/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/session/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/session/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/storage/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/storage/build.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/storage/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/storage/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/build.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/src/form-validator.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/plugins/lib/validator/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/router.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/server.express.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/server.isaac.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/status.codes +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/_gitignore +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/app.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/connectors.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/routing.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/settings.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/templates.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/config/watchers.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle/locales/en.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/css/default.css +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/css/home.css +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/js/components/x-checklist.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/readme.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_public/sw.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/includes/x-checklist.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/command/gina.bat.tpl +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/command/gina.tpl +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/env.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/manifest.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/settings.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/statics.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/conf/templates.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/error/client/json/401.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/error/client/json/403.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/error/client/json/404.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/error/server/html/50x.html +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/error/server/json/500.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/error/server/json/503.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/core/template/extensions/logger/config.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/console.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/context.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/data/LICENSE +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/data/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/data/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/data/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/dateFormat.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/json/LICENSE +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/json/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/json/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/json/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/path.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/plugins/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/plugins/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/plugins/src/api-error.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/plugins/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/prototypes.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/task.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/helpers/text.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/admin/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/admin/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/build.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/src/dep/jszip.min.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/archiver/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/async/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/async/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/audit/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/audit/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/audit-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/authn/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/authn/src/lockout.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/authn/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/authn/src/totp.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/authz-gate/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/authz-gate/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cache/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cache/build.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cache/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cache/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/aliases.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/audit/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/audit/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/audit/verify.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/build.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/copy.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/cp.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/inc/name-rewrite.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/man.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/mcp-start.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/mcp.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/oas.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/openapi.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/remove.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/rename.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/restart.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/rm.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/start.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/status.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/stop.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/bundle/types.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/cache/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/cache/clear.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/cache/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/cache/stats.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/infer.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/migrate.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/models.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/remove.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/rm.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/connector/test.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/man.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/ps.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/container/stop.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/args.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/namespace.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/reference-rewrite.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/reference-scan.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/inc/scaffold.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/remove.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/rename.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/controller/rm.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/get.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/link-dev.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/remove.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/rm.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/set.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/unset.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/env/use.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/build.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/dot.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/get.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/init.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/link-node-modules.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/link.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/man.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/msg.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/open.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/remove.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/reset.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/restart.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/set.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/start.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/status.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/stop.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/tail.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/update.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/framework/version.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/gina-dev.1.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/gina-framework.1.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/gina.1.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/helper.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/export.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/import.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/i18n/scan.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/_host.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/build.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/man.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/rm.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/image/run.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/inspector/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/inspector/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/inspector/open.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/man-render.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/kill.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/minion/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/msg.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/inc/scan.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/reset.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/port/set.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/backup.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/build.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/import.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/man.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/move.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/remove.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/rename.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/restart.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/restore.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/rm.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/start.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/status.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/project/stop.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/remove.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/protocol/set.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/link-local.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/link-production.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/remove.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/rm.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/scope/use.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/secrets/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/secrets/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/secrets/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/help.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/list.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/man.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/service/start.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/arguments.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/gc.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/help.txt +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/stats.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/storage/verify.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd/view/add.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd-status-format/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cmd-status-format/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/collection/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/collection/build.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/collection/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/config.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/connector-config/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/connector-config/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/connector-error/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/connector-error/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/connector-registry/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/connector-registry/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cron/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cron/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/cron/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/domain/LICENSE +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/domain/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/domain/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/domain/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/dto/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/dto/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/dto-pipe/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/dto-pipe/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/dto-types/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/dto-types/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/generator/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/i18n/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/i18n/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/image-build/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/image-build/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/inherits/LICENSE +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/inherits/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/inherits/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/inherits/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/inspector-events/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/inspector-events/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/inspector-redact/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/inspector-redact/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/instrument/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/instrument/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/job/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/job/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/job-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/json-config-header/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/json-config-header/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/kv/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/kv/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/kv-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/loading-state/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/loading-state/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/default/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/file/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/mq/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/mq/listener.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/containers/mq/speaker.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/helper.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/logger/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/maintenance/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/maintenance/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/math/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-dispatch/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-dispatch/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-http/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-http/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-server/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/mcp-server/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/merge/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/merge/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/merge/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/metrics/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/metrics/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/model.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/net-locality/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/net-locality/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-filters/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-filters/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-filters/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-resolver/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/nunjucks-resolver/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/proc.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/push/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/push/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/rate-limit/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/rate-limit/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/release-watch/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/release-watch/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/render-cache/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/render-cache/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/render-cache-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/routing/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/routing/build.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/routing/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/routing/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/routing/src/radix.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/routing-introspect/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/routing-introspect/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/secrets/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/secrets/src/env-file.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/session-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/shell.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/sqlite-driver.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/state.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/local-cas.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/local-stream.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/local.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/meta-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/s3.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage/src/util.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/storage-store.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/swig-filters/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/swig-filters/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/swig-filters/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/swig-resolver/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/swig-resolver/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/template-loaders/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/template-loaders/src/loaders/http.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/template-loaders/src/loaders/memory.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/template-loaders/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/url/README.md +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/url/index.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/url/routing.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/uuid/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/uuid/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/validator.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/watcher/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/watcher/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/ws-framing/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/ws-framing/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/ws-query/package.json +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/ws-query/src/main.js +0 -0
- /package/framework/{v0.6.13 → v0.6.14}/lib/ws-session/package.json +0 -0
- /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
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
*
|
|
184
|
-
*
|
|
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
|
-
|
|
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
|
|
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
|
|
357
|
-
*
|
|
358
|
-
*
|
|
359
|
-
*
|
|
360
|
-
*
|
|
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
|
-
*
|
|
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
|
|
452
|
+
return secrets.loadManifest(projectPath);
|
|
461
453
|
};
|
|
462
454
|
|
|
463
455
|
/**
|
|
464
|
-
*
|
|
465
|
-
*
|
|
466
|
-
*
|
|
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
|
-
|
|
476
|
-
return manifest.bundles[bundleName].src;
|
|
477
|
-
}
|
|
478
|
-
return bundleName;
|
|
467
|
+
return secrets.resolveBundleSrc(manifest, bundleName);
|
|
479
468
|
};
|
|
480
469
|
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
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
|
-
*
|
|
508
|
-
*
|
|
509
|
-
*
|
|
510
|
-
*
|
|
511
|
-
*
|
|
512
|
-
*
|
|
513
|
-
*
|
|
514
|
-
*
|
|
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}
|
|
519
|
-
* @param {object}
|
|
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
|
|
522
|
-
var
|
|
523
|
-
|
|
524
|
-
var
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
var
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
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
|
-
*
|
|
549
|
-
*
|
|
550
|
-
*
|
|
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
|
-
* @
|
|
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
|
|
558
|
-
var
|
|
559
|
-
|
|
560
|
-
|
|
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
|
-
|
|
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
|
|
602
|
-
* `settings.secrets.file` chain
|
|
603
|
-
* `
|
|
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 {
|
|
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,
|
|
617
|
-
var
|
|
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
|
-
|
|
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(
|
|
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
|
|
661
|
-
var
|
|
662
|
-
if (!
|
|
663
|
-
var
|
|
664
|
-
var entry
|
|
665
|
-
var
|
|
666
|
-
|
|
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
|
|
683
|
-
var
|
|
684
|
-
if (!
|
|
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
|
|
690
|
-
var
|
|
691
|
-
var
|
|
692
|
-
|
|
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
|
|
708
|
-
var
|
|
709
|
-
var
|
|
710
|
-
var report
|
|
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.
|