@getstrata/starter 1.1.2 → 1.1.4

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/dist/cli.js CHANGED
@@ -2638,6 +2638,8 @@ function renderEnvExample(projectName, layers) {
2638
2638
  ];
2639
2639
  lines.push("APP_DEBUG=false");
2640
2640
  lines.push("FEATURE_PUBLIC_READS=false");
2641
+ lines.push("# wrapWebPublicRead / wrapPublicRead require login when false (production-safe default).");
2642
+ lines.push("# Local storefronts/catalogs may set true in .env. Production boot rejects FEATURE_PUBLIC_READS=true.");
2641
2643
  lines.push("FEATURE_SIEM_EXPORT=false");
2642
2644
  lines.push("FEATURE_REGISTRATION=true");
2643
2645
  lines.push("FEATURE_SAML=false");
@@ -2856,9 +2858,9 @@ function renderPackageJson(projectName, options = {}) {
2856
2858
  "@getstrata/cli": "workspace:*",
2857
2859
  "@getstrata/core": "workspace:*"
2858
2860
  } : {
2859
- "@getstrata/bootstrap": "^1.1.2",
2860
- "@getstrata/cli": "^1.1.2",
2861
- "@getstrata/core": "^1.1.2"
2861
+ "@getstrata/bootstrap": "^1.1.4",
2862
+ "@getstrata/cli": "^1.1.4",
2863
+ "@getstrata/core": "^1.1.4"
2862
2864
  };
2863
2865
  coreDeps.eta = "^4.6.0";
2864
2866
  if (options.layers?.database === "mysql") {
@@ -3142,7 +3144,7 @@ The image sets \`APP_ENV=production\` and \`AUTH_DEV_HEADERS=false\`; everything
3142
3144
  - Replace every \`change-me\` placeholder in \`.env\`. The guard rejects the values this generator wrote, not just empty ones.
3143
3145
  - Set \`APP_URL\` to the public origin (for example \`https://app.example.com\`). Signed links and redirects are built from it; localhost is rejected.
3144
3146
  - Set \`AUTH_DEV_HEADERS=false\`.
3145
- - Set \`FEATURE_PUBLIC_READS=false\`. ${layers.frontend === "api" ? "This app already ships `false`." : "This app ships `true` so the local welcome page reads without a login. Production requires `false`."}
3147
+ - Set \`FEATURE_PUBLIC_READS=false\`. Generated \`.env.example\` already ships \`false\` so \`wrapWebPublicRead\` requires a login. Local storefronts may set \`true\` in \`.env\` for an anonymous catalog; \`assertProductionSecrets()\` rejects \`true\` in production. Do not ship a public-reads production boot.
3146
3148
  - Cross-origin browser calls are off in production until you set \`CORS_ALLOWED_ORIGINS\` to explicit origins. A \`*\` entry is rejected. Non-browser clients are unaffected.
3147
3149
  - Behind a reverse proxy or load balancer, set \`TRUST_FORWARDED_FOR=true\` so throttles and session records see the client address instead of the proxy. Only the rightmost public hop of \`X-Forwarded-For\` is trusted.
3148
3150
  ${authUsesCookie(layers.auth) ? "- Set `SESSION_SECRET` to 32+ characters.\n" : ""}${authUsesToken(layers.auth) ? "- Set `TOKEN_HASH_PEPPER`.\n" : ""}${layers.extras.scim ? "- Set `SCIM_BEARER_TOKEN`.\n" : ""}${layers.extras.metrics ? "- Set `METRICS_TOKEN`.\n" : ""}${layers.tenancy === "rls" ? `- \`DATABASE_URL\` must be a \`NOBYPASSRLS\` role, not the \`postgres\` superuser. Generated apps create \`${GENERATED_POSTGRES_APP_ROLE}\` via \`db/ensure-postgres-app-role.sql\` (and Compose init on first empty volume). \`MIGRATION_DATABASE_URL\` may stay the superuser for CREATE ROLE / GRANT / migrate. Production boot rejects username \`postgres\` or \`root\`, then inspects \`pg_roles\` for \`rolsuper\` / \`rolbypassrls\`.
@@ -12,9 +12,9 @@
12
12
  "check": "tsc --noEmit"
13
13
  },
14
14
  "dependencies": {
15
- "@getstrata/bootstrap": "^1.1.2",
16
- "@getstrata/cli": "^1.1.2",
17
- "@getstrata/core": "^1.1.2",
15
+ "@getstrata/bootstrap": "^1.1.4",
16
+ "@getstrata/cli": "^1.1.4",
17
+ "@getstrata/core": "^1.1.4",
18
18
  "eta": "^4.6.0"
19
19
  },
20
20
  "devDependencies": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getstrata/starter",
3
- "version": "1.1.2",
3
+ "version": "1.1.4",
4
4
  "description": "Interactive create-strata wizard. Choose each layer; one database engine.",
5
5
  "type": "module",
6
6
  "license": "MIT",