@percher/toml 0.1.7 → 0.1.9

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/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { PercherTomlError, type PercherTomlErrorCode, type PercherTomlIssue, } from "./errors.js";
2
2
  export { generateName } from "./generate-name.js";
3
3
  export { parse, parseFile, validate } from "./parse.js";
4
- export { appSchema, buildSchema, dataSchema, domainSchema, type EnvContract, type EnvSection, type EnvValues, envContractSchema, envSchema, envValuesSchema, getEnvValues, isEnvContract, type PercherConfig, percherConfigSchema, resourcesSchema, webSchema, } from "./schema.js";
4
+ export { appSchema, buildSchema, dataSchema, domainSchema, ENV_NAME_RE, type EnvContract, type EnvSection, type EnvValues, envContractSchema, envSchema, envValuesSchema, getEnvValues, type HeadersConfig, headersSchema, isEnvContract, type PercherConfig, PLATFORM_MANAGED_HEADERS, percherConfigSchema, type RateLimitConfig, type RedirectRule, redirectSchema, redirectsSchema, resolveVisibility, resourcesSchema, webSchema, } from "./schema.js";
5
5
  export { serialize } from "./serialize.js";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,GACtB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EACL,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,YAAY,EACZ,aAAa,EACb,KAAK,aAAa,EAClB,mBAAmB,EACnB,eAAe,EACf,SAAS,GACV,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,GACtB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EACL,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,YAAY,EACZ,KAAK,aAAa,EAClB,aAAa,EACb,aAAa,EACb,KAAK,aAAa,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,SAAS,GACV,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export { PercherTomlError, } from "./errors.js";
2
2
  export { generateName } from "./generate-name.js";
3
3
  export { parse, parseFile, validate } from "./parse.js";
4
- export { appSchema, buildSchema, dataSchema, domainSchema, envContractSchema, envSchema, envValuesSchema, getEnvValues, isEnvContract, percherConfigSchema, resourcesSchema, webSchema, } from "./schema.js";
4
+ export { appSchema, buildSchema, dataSchema, domainSchema, ENV_NAME_RE, envContractSchema, envSchema, envValuesSchema, getEnvValues, headersSchema, isEnvContract, PLATFORM_MANAGED_HEADERS, percherConfigSchema, redirectSchema, redirectsSchema, resolveVisibility, resourcesSchema, webSchema, } from "./schema.js";
5
5
  export { serialize } from "./serialize.js";
6
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GAGjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EACL,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EAIZ,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,YAAY,EACZ,aAAa,EAEb,mBAAmB,EACnB,eAAe,EACf,SAAS,GACV,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GAGjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EACL,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,EAIX,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,YAAY,EAEZ,aAAa,EACb,aAAa,EAEb,wBAAwB,EACxB,mBAAmB,EAGnB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,SAAS,GACV,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
package/dist/schema.d.ts CHANGED
@@ -36,6 +36,13 @@ export declare const appSchema: z.ZodObject<{
36
36
  java: "java";
37
37
  }>>;
38
38
  }, z.core.$strict>;
39
+ /**
40
+ * Env-var name pattern: standard POSIX-shell identifier
41
+ * (`[A-Z_][A-Z0-9_]*`). Restricting to upper-case avoids accidental
42
+ * exposure of lowercase secrets via case-collision and matches what
43
+ * Nixpacks accepts via `--env`.
44
+ */
45
+ export declare const ENV_NAME_RE: RegExp;
39
46
  export declare const buildSchema: z.ZodObject<{
40
47
  command: z.ZodOptional<z.ZodString>;
41
48
  output: z.ZodOptional<z.ZodString>;
@@ -45,9 +52,30 @@ export declare const webSchema: z.ZodObject<{
45
52
  port: z.ZodNumber;
46
53
  health: z.ZodOptional<z.ZodString>;
47
54
  command: z.ZodOptional<z.ZodString>;
55
+ visibility: z.ZodOptional<z.ZodEnum<{
56
+ public: "public";
57
+ password: "password";
58
+ private: "private";
59
+ }>>;
48
60
  password: z.ZodOptional<z.ZodBoolean>;
49
61
  spa: z.ZodOptional<z.ZodBoolean>;
62
+ rate_limit: z.ZodOptional<z.ZodObject<{
63
+ rps: z.ZodNumber;
64
+ burst: z.ZodNumber;
65
+ }, z.core.$strict>>;
50
66
  }, z.core.$strict>;
67
+ /**
68
+ * Resolve the effective visibility of a `[web]` block, folding the legacy
69
+ * `password = true` alias into `"password"`. Pure — used by the deploy
70
+ * pipeline to persist a single `visibility` value in sync with
71
+ * `passwordProtected`.
72
+ *
73
+ * Returns `"private"` when explicitly set (private apps are armed).
74
+ */
75
+ export declare function resolveVisibility(web: {
76
+ visibility?: "public" | "password" | "private";
77
+ password?: boolean;
78
+ } | undefined): "public" | "password" | "private";
51
79
  export declare const convexConfigSchema: z.ZodObject<{
52
80
  deployment_url: z.ZodString;
53
81
  }, z.core.$strict>;
@@ -210,6 +238,25 @@ export declare const checkSchema: z.ZodObject<{
210
238
  timeout: z.ZodOptional<z.ZodNumber>;
211
239
  initial_delay: z.ZodOptional<z.ZodNumber>;
212
240
  }, z.core.$strict>;
241
+ export declare const redirectSchema: z.ZodObject<{
242
+ from: z.ZodString;
243
+ to: z.ZodString;
244
+ status: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<301>, z.ZodLiteral<302>, z.ZodLiteral<307>, z.ZodLiteral<308>]>>;
245
+ }, z.core.$strict>;
246
+ export declare const redirectsSchema: z.ZodArray<z.ZodObject<{
247
+ from: z.ZodString;
248
+ to: z.ZodString;
249
+ status: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<301>, z.ZodLiteral<302>, z.ZodLiteral<307>, z.ZodLiteral<308>]>>;
250
+ }, z.core.$strict>>;
251
+ /**
252
+ * Response headers Percher sets itself (security hardening, routing
253
+ * marker, hop-by-hop/transport headers). Letting an app override these
254
+ * would undo platform hardening or corrupt the proxied response, so
255
+ * they're rejected case-insensitively. Lowercase entries — exported so
256
+ * the API package can enforce the same list without duplicating it.
257
+ */
258
+ export declare const PLATFORM_MANAGED_HEADERS: ReadonlySet<string>;
259
+ export declare const headersSchema: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>;
213
260
  export declare const percherConfigSchema: z.ZodObject<{
214
261
  app: z.ZodObject<{
215
262
  name: z.ZodString;
@@ -257,8 +304,17 @@ export declare const percherConfigSchema: z.ZodObject<{
257
304
  port: z.ZodNumber;
258
305
  health: z.ZodOptional<z.ZodString>;
259
306
  command: z.ZodOptional<z.ZodString>;
307
+ visibility: z.ZodOptional<z.ZodEnum<{
308
+ public: "public";
309
+ password: "password";
310
+ private: "private";
311
+ }>>;
260
312
  password: z.ZodOptional<z.ZodBoolean>;
261
313
  spa: z.ZodOptional<z.ZodBoolean>;
314
+ rate_limit: z.ZodOptional<z.ZodObject<{
315
+ rps: z.ZodNumber;
316
+ burst: z.ZodNumber;
317
+ }, z.core.$strict>>;
262
318
  }, z.core.$strict>>;
263
319
  data: z.ZodOptional<z.ZodObject<{
264
320
  mode: z.ZodEnum<{
@@ -340,6 +396,20 @@ export declare const percherConfigSchema: z.ZodObject<{
340
396
  timeout: z.ZodOptional<z.ZodNumber>;
341
397
  initial_delay: z.ZodOptional<z.ZodNumber>;
342
398
  }, z.core.$strict>>>;
399
+ redirects: z.ZodOptional<z.ZodArray<z.ZodObject<{
400
+ from: z.ZodString;
401
+ to: z.ZodString;
402
+ status: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<301>, z.ZodLiteral<302>, z.ZodLiteral<307>, z.ZodLiteral<308>]>>;
403
+ }, z.core.$strict>>>;
404
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
343
405
  }, z.core.$strict>;
344
406
  export type PercherConfig = z.infer<typeof percherConfigSchema>;
407
+ export type RedirectRule = z.infer<typeof redirectSchema>;
408
+ export type HeadersConfig = z.infer<typeof headersSchema>;
409
+ /**
410
+ * A8 — the parse-time-validated `[web].rate_limit` shape. Re-validated at
411
+ * route-build time from the persisted `apps.rate_limit_json` column (via
412
+ * the toml schema) before threading into the Caddy rate_limit handler.
413
+ */
414
+ export type RateLimitConfig = NonNullable<z.infer<typeof webSchema>["rate_limit"]>;
345
415
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAoCX,CAAC;AAUZ,eAAO,MAAM,WAAW;;;;kBAqBb,CAAC;AAEZ,eAAO,MAAM,SAAS;;;;;;kBAyBX,CAAC;AAEZ,eAAO,MAAM,kBAAkB;;kBAIpB,CAAC;AAEZ,eAAO,MAAM,oBAAoB;;;kBAKtB,CAAC;AAEZ,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;kBA8BnB,CAAC;AAIL,eAAO,MAAM,YAAY;;;kBAKd,CAAC;AAEZ;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;;kBA8BxB,CAAC;AAEL,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;kBAoBxB,CAAC;AAEL;;;;;GAKG;AACH,eAAO,MAAM,eAAe,uCAAmC,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iBAAiB;;;;kBAiD1B,CAAC;AAIL;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;AAEjD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,KAAK,IAAI,WAAW,CAGjF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAI5E;AAED,eAAO,MAAM,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CA4BnD,CAAC;AAEH,eAAO,MAAM,SAAS;;;;kBAMX,CAAC;AAEZ,eAAO,MAAM,iBAAiB;;;;GAA4D,CAAC;AAE3F,eAAO,MAAM,UAAU;;;;kBAUZ,CAAC;AAEZ,eAAO,MAAM,WAAW;;;;mBAUtB,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;kBAYd,CAAC;AAEZ,eAAO,MAAM,WAAW;;;;;kBAOb,CAAC;AAEZ,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA+B5B,CAAC;AAEL,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
package/dist/schema.js CHANGED
@@ -43,7 +43,7 @@ export const appSchema = z
43
43
  * exposure of lowercase secrets via case-collision and matches what
44
44
  * Nixpacks accepts via `--env`.
45
45
  */
46
- const ENV_NAME_RE = /^[A-Z_][A-Z0-9_]*$/;
46
+ export const ENV_NAME_RE = /^[A-Z_][A-Z0-9_]*$/;
47
47
  export const buildSchema = z
48
48
  .object({
49
49
  command: z.string().optional(),
@@ -80,7 +80,26 @@ export const webSchema = z
80
80
  * IPv4 health probe reaches it.
81
81
  */
82
82
  command: z.string().min(1).max(1000).optional(),
83
- /** Enable password protection. Set SITE_PASSWORD env var to configure. */
83
+ /**
84
+ * Access control for the app's public URL.
85
+ *
86
+ * - `"public"` — open to anyone (the default; nothing to set).
87
+ * - `"password"` — branded login page gated on the SITE_PASSWORD env
88
+ * var (the `password = true` legacy alias below resolves to this).
89
+ * - `"private"` — Percher-login gate (per-person identity, not a shared
90
+ * secret): only the owner and invited collaborators can open the app,
91
+ * authenticated by their Percher account.
92
+ *
93
+ * `password` (below) stays supported forever as the legacy alias for
94
+ * `"password"`; `resolveVisibility()` folds the two into one value.
95
+ */
96
+ visibility: z.enum(["public", "password", "private"]).optional(),
97
+ /**
98
+ * Legacy alias for `visibility = "password"`. Enable password
99
+ * protection; set the SITE_PASSWORD env var to configure. Kept
100
+ * accepted forever for back-compat — new configs may use either
101
+ * `visibility = "password"` or `password = true`.
102
+ */
84
103
  password: z.boolean().optional(),
85
104
  /**
86
105
  * For `runtime = "static"` apps: enable client-side routing fallback.
@@ -90,8 +109,76 @@ export const webSchema = z
90
109
  * on the static path).
91
110
  */
92
111
  spa: z.boolean().optional(),
112
+ /**
113
+ * A8 — per-app rate limiting, keyed by client IP at the Caddy edge
114
+ * (ahead of the reverse_proxy). Optional; absent = unlimited (the
115
+ * default). `rps` is the documented sustained per-second target and
116
+ * `burst` the hard per-second ceiling — see the superRefine below for
117
+ * the two invariants (`burst >= rps`, `burst <= rps * 10`) and the
118
+ * client.ts comment for how the pair maps onto the sliding-window
119
+ * limiter's single `max_events` knob. Requires the platform's Caddy to
120
+ * carry the rate-limit module (operator-enabled image rebuild); the
121
+ * field parses + persists regardless, and the route simply omits the
122
+ * handler until the module is present.
123
+ */
124
+ rate_limit: z
125
+ .object({
126
+ rps: z.number().int().min(1).max(100),
127
+ burst: z.number().int().min(1).max(1000),
128
+ })
129
+ .strict()
130
+ .optional(),
93
131
  })
94
- .strict();
132
+ .strict()
133
+ .superRefine((web, ctx) => {
134
+ // Contradiction: `visibility = "public"` with `password = true` sets two
135
+ // conflicting values (the legacy alias means "password"). Reject rather
136
+ // than silently pick one. `visibility = "password"` + `password = true`
137
+ // is redundant-but-fine; `password = true` alone (no visibility) is the
138
+ // supported legacy shape.
139
+ if (web.visibility === "public" && web.password === true) {
140
+ ctx.addIssue({
141
+ code: z.ZodIssueCode.custom,
142
+ path: ["visibility"],
143
+ message: 'password = true implies visibility "password" — don\'t set visibility = "public" alongside it',
144
+ });
145
+ }
146
+ // A8 rate_limit invariants. The limiter enforces a single per-second
147
+ // ceiling (`burst`), with `rps` documented as the sustained target it
148
+ // must not exceed:
149
+ // - burst >= rps: a ceiling below the sustained rate is nonsense — the
150
+ // app could never reach its own advertised throughput.
151
+ // - burst <= rps * 10: cap the headroom so a "10 rps" app can't quietly
152
+ // configure a 1000/s spike allowance.
153
+ if (web.rate_limit) {
154
+ const { rps, burst } = web.rate_limit;
155
+ if (burst < rps) {
156
+ ctx.addIssue({
157
+ code: z.ZodIssueCode.custom,
158
+ path: ["rate_limit", "burst"],
159
+ message: `rate_limit.burst (${burst}) must be >= rate_limit.rps (${rps}) — a burst below the sustained rate is nonsense`,
160
+ });
161
+ }
162
+ if (burst > rps * 10) {
163
+ ctx.addIssue({
164
+ code: z.ZodIssueCode.custom,
165
+ path: ["rate_limit", "burst"],
166
+ message: `rate_limit.burst (${burst}) must be <= 10× rate_limit.rps (${rps * 10})`,
167
+ });
168
+ }
169
+ }
170
+ });
171
+ /**
172
+ * Resolve the effective visibility of a `[web]` block, folding the legacy
173
+ * `password = true` alias into `"password"`. Pure — used by the deploy
174
+ * pipeline to persist a single `visibility` value in sync with
175
+ * `passwordProtected`.
176
+ *
177
+ * Returns `"private"` when explicitly set (private apps are armed).
178
+ */
179
+ export function resolveVisibility(web) {
180
+ return web?.visibility ?? (web?.password ? "password" : "public");
181
+ }
95
182
  export const convexConfigSchema = z
96
183
  .object({
97
184
  deployment_url: z.string().url(),
@@ -371,6 +458,163 @@ export const checkSchema = z
371
458
  initial_delay: z.number().int().min(0).optional(),
372
459
  })
373
460
  .strict();
461
+ /**
462
+ * Path pattern shared by `[[redirects]].from` and `[headers]` keys: an
463
+ * exact path ("/old") or a prefix wildcard ("/old/*", "/*"). The only
464
+ * "*" allowed is a single trailing one in the "/*" form.
465
+ */
466
+ function isExactOrPrefixPath(value) {
467
+ if (!value.startsWith("/"))
468
+ return false;
469
+ const star = value.indexOf("*");
470
+ if (star === -1)
471
+ return true;
472
+ return star === value.length - 1 && value.endsWith("/*");
473
+ }
474
+ export const redirectSchema = z
475
+ .object({
476
+ from: z
477
+ .string()
478
+ .min(1)
479
+ .max(500)
480
+ .refine((v) => !/[\s{}]/.test(v), 'redirect "from" must not contain whitespace, "{", or "}"')
481
+ .refine(isExactOrPrefixPath, 'redirect "from" must be an exact path or end with "/*"'),
482
+ // Braces would smuggle Caddy placeholders ({http.request.*}) into the
483
+ // generated config, and CR/LF/whitespace would allow header injection
484
+ // via the Location header — ban them all outright.
485
+ to: z
486
+ .string()
487
+ .min(1)
488
+ .max(2000)
489
+ .refine((v) => v.startsWith("/") || v.startsWith("https://"), 'redirect "to" must start with "/" or "https://"')
490
+ .refine((v) => !/[\s{}]/.test(v), 'redirect "to" must not contain whitespace, "{", or "}"'),
491
+ status: z.union([z.literal(301), z.literal(302), z.literal(307), z.literal(308)]).default(308),
492
+ })
493
+ .strict();
494
+ export const redirectsSchema = z
495
+ .array(redirectSchema)
496
+ .max(32, "at most 32 redirects")
497
+ .superRefine((rules, ctx) => {
498
+ const seen = new Set();
499
+ for (let i = 0; i < rules.length; i++) {
500
+ const rule = rules[i];
501
+ if (!rule)
502
+ continue;
503
+ if (seen.has(rule.from)) {
504
+ ctx.addIssue({
505
+ code: z.ZodIssueCode.custom,
506
+ path: [i, "from"],
507
+ message: `duplicate redirect "from": '${rule.from}'`,
508
+ });
509
+ }
510
+ seen.add(rule.from);
511
+ if (rule.from === rule.to) {
512
+ ctx.addIssue({
513
+ code: z.ZodIssueCode.custom,
514
+ path: [i, "to"],
515
+ message: `redirect from '${rule.from}' to itself would loop`,
516
+ });
517
+ }
518
+ }
519
+ });
520
+ /**
521
+ * Response headers Percher sets itself (security hardening, routing
522
+ * marker, hop-by-hop/transport headers). Letting an app override these
523
+ * would undo platform hardening or corrupt the proxied response, so
524
+ * they're rejected case-insensitively. Lowercase entries — exported so
525
+ * the API package can enforce the same list without duplicating it.
526
+ */
527
+ export const PLATFORM_MANAGED_HEADERS = new Set([
528
+ "strict-transport-security",
529
+ "x-frame-options",
530
+ "x-content-type-options",
531
+ "referrer-policy",
532
+ "permissions-policy",
533
+ "x-percher-route",
534
+ "x-robots-tag",
535
+ "content-encoding",
536
+ "content-length",
537
+ "transfer-encoding",
538
+ "connection",
539
+ "host",
540
+ ]);
541
+ const HEADER_NAME_RE = /^[A-Za-z0-9-]{1,128}$/;
542
+ export const headersSchema = z
543
+ .record(z.string(), z.record(z.string(), z.string()))
544
+ .superRefine((table, ctx) => {
545
+ const paths = Object.keys(table);
546
+ if (paths.length > 16) {
547
+ ctx.addIssue({
548
+ code: z.ZodIssueCode.custom,
549
+ message: "at most 16 header paths",
550
+ });
551
+ }
552
+ for (const path of paths) {
553
+ if (path.length > 500) {
554
+ ctx.addIssue({
555
+ code: z.ZodIssueCode.custom,
556
+ path: [path],
557
+ message: "header path must be at most 500 chars",
558
+ });
559
+ }
560
+ if (/[\s{}]/.test(path)) {
561
+ ctx.addIssue({
562
+ code: z.ZodIssueCode.custom,
563
+ path: [path],
564
+ message: `header path '${path}' must not contain whitespace, "{", or "}"`,
565
+ });
566
+ }
567
+ else if (!isExactOrPrefixPath(path)) {
568
+ ctx.addIssue({
569
+ code: z.ZodIssueCode.custom,
570
+ path: [path],
571
+ message: `header path '${path}' must be an exact path or end with "/*"`,
572
+ });
573
+ }
574
+ const headers = table[path] ?? {};
575
+ const names = Object.keys(headers);
576
+ if (names.length > 16) {
577
+ ctx.addIssue({
578
+ code: z.ZodIssueCode.custom,
579
+ path: [path],
580
+ message: "at most 16 headers per path",
581
+ });
582
+ }
583
+ for (const name of names) {
584
+ if (!HEADER_NAME_RE.test(name)) {
585
+ ctx.addIssue({
586
+ code: z.ZodIssueCode.custom,
587
+ path: [path, name],
588
+ message: `invalid header name '${name}' — use letters, digits, and "-" only (max 128 chars)`,
589
+ });
590
+ }
591
+ else if (PLATFORM_MANAGED_HEADERS.has(name.toLowerCase())) {
592
+ ctx.addIssue({
593
+ code: z.ZodIssueCode.custom,
594
+ path: [path, name],
595
+ message: `header "${name}" is platform-managed and cannot be overridden`,
596
+ });
597
+ }
598
+ const value = headers[name] ?? "";
599
+ if (value.length > 2000) {
600
+ ctx.addIssue({
601
+ code: z.ZodIssueCode.custom,
602
+ path: [path, name],
603
+ message: `header value for '${name}' must be at most 2000 chars`,
604
+ });
605
+ }
606
+ // Braces would smuggle Caddy placeholders into the generated
607
+ // config; CR/LF would allow response-header injection.
608
+ if (/[\r\n{}]/.test(value)) {
609
+ ctx.addIssue({
610
+ code: z.ZodIssueCode.custom,
611
+ path: [path, name],
612
+ message: `header value for '${name}' must not contain "{", "}", or CR/LF`,
613
+ });
614
+ }
615
+ }
616
+ }
617
+ });
374
618
  export const percherConfigSchema = z
375
619
  .object({
376
620
  app: appSchema,
@@ -385,6 +629,8 @@ export const percherConfigSchema = z
385
629
  crons: cronsSchema.optional(),
386
630
  addons: addonsSchema.optional(),
387
631
  checks: z.record(z.string(), checkSchema).optional(),
632
+ redirects: redirectsSchema.optional(),
633
+ headers: headersSchema.optional(),
388
634
  })
389
635
  .strict()
390
636
  .superRefine((cfg, ctx) => {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@percher/toml",
3
- "version": "0.1.7",
3
+ "version": "0.1.9",
4
4
  "description": "percher.toml parser and validator for the Percher hosting platform",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "dependencies": {
24
24
  "@iarna/toml": "^2.2.5",
25
- "@percher/shared": "^0.1.3",
25
+ "@percher/shared": "^0.1.6",
26
26
  "zod": "^4.3.6"
27
27
  },
28
28
  "devDependencies": {