vikunja-mcp-ng 0.7.0-beta.4 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +13 -8
  2. package/dist/auth/oidc/jwtValidator.d.ts.map +1 -1
  3. package/dist/auth/oidc/jwtValidator.js +29 -1
  4. package/dist/auth/oidc/jwtValidator.js.map +1 -1
  5. package/dist/auth/oidc/types.d.ts +14 -1
  6. package/dist/auth/oidc/types.d.ts.map +1 -1
  7. package/dist/config/ConfigurationManager.d.ts +7 -0
  8. package/dist/config/ConfigurationManager.d.ts.map +1 -1
  9. package/dist/config/ConfigurationManager.js +11 -0
  10. package/dist/config/ConfigurationManager.js.map +1 -1
  11. package/dist/config/types.d.ts +24 -4
  12. package/dist/config/types.d.ts.map +1 -1
  13. package/dist/config/types.js +60 -9
  14. package/dist/config/types.js.map +1 -1
  15. package/dist/storage/vaultFileStore.d.ts.map +1 -1
  16. package/dist/storage/vaultFileStore.js +2 -1
  17. package/dist/storage/vaultFileStore.js.map +1 -1
  18. package/dist/tools/auth.d.ts.map +1 -1
  19. package/dist/tools/auth.js +10 -1
  20. package/dist/tools/auth.js.map +1 -1
  21. package/dist/tools/tasks/position.d.ts.map +1 -1
  22. package/dist/tools/tasks/position.js +37 -3
  23. package/dist/tools/tasks/position.js.map +1 -1
  24. package/dist/transport/enrollment.d.ts +33 -0
  25. package/dist/transport/enrollment.d.ts.map +1 -1
  26. package/dist/transport/enrollment.js +68 -0
  27. package/dist/transport/enrollment.js.map +1 -1
  28. package/dist/transport/httpTransport.d.ts +1 -1
  29. package/dist/transport/httpTransport.d.ts.map +1 -1
  30. package/dist/transport/httpTransport.js +78 -4
  31. package/dist/transport/httpTransport.js.map +1 -1
  32. package/dist/transport/oidcHttpAuth.d.ts.map +1 -1
  33. package/dist/transport/oidcHttpAuth.js +3 -0
  34. package/dist/transport/oidcHttpAuth.js.map +1 -1
  35. package/dist/transport/oidcMiddlewareSeam.d.ts +12 -14
  36. package/dist/transport/oidcMiddlewareSeam.d.ts.map +1 -1
  37. package/dist/transport/oidcMiddlewareSeam.js +12 -14
  38. package/dist/transport/oidcMiddlewareSeam.js.map +1 -1
  39. package/dist/transport/resourceMetadata.d.ts +10 -3
  40. package/dist/transport/resourceMetadata.d.ts.map +1 -1
  41. package/dist/transport/resourceMetadata.js +22 -5
  42. package/dist/transport/resourceMetadata.js.map +1 -1
  43. package/dist/types/errors.d.ts +18 -0
  44. package/dist/types/errors.d.ts.map +1 -1
  45. package/dist/types/errors.js.map +1 -1
  46. package/dist/utils/api-version.d.ts +25 -0
  47. package/dist/utils/api-version.d.ts.map +1 -0
  48. package/dist/utils/api-version.js +36 -0
  49. package/dist/utils/api-version.js.map +1 -0
  50. package/dist/utils/capabilities.d.ts +9 -3
  51. package/dist/utils/capabilities.d.ts.map +1 -1
  52. package/dist/utils/capabilities.js +11 -6
  53. package/dist/utils/capabilities.js.map +1 -1
  54. package/dist/utils/filtering/RestCrossProjectFilteringStrategy.d.ts.map +1 -1
  55. package/dist/utils/filtering/RestCrossProjectFilteringStrategy.js +16 -0
  56. package/dist/utils/filtering/RestCrossProjectFilteringStrategy.js.map +1 -1
  57. package/dist/utils/retry.d.ts +8 -1
  58. package/dist/utils/retry.d.ts.map +1 -1
  59. package/dist/utils/retry.js +21 -1
  60. package/dist/utils/retry.js.map +1 -1
  61. package/dist/utils/vikunja-rest-v2.d.ts +111 -0
  62. package/dist/utils/vikunja-rest-v2.d.ts.map +1 -0
  63. package/dist/utils/vikunja-rest-v2.js +248 -0
  64. package/dist/utils/vikunja-rest-v2.js.map +1 -0
  65. package/dist/utils/vikunja-rest.d.ts +57 -0
  66. package/dist/utils/vikunja-rest.d.ts.map +1 -1
  67. package/dist/utils/vikunja-rest.js +128 -2
  68. package/dist/utils/vikunja-rest.js.map +1 -1
  69. package/dist/utils/vikunja-v2-url.d.ts +19 -0
  70. package/dist/utils/vikunja-v2-url.d.ts.map +1 -0
  71. package/dist/utils/vikunja-v2-url.js +26 -0
  72. package/dist/utils/vikunja-v2-url.js.map +1 -0
  73. package/docs/CONFIGURATION.md +43 -11
  74. package/package.json +5 -5
package/README.md CHANGED
@@ -40,13 +40,18 @@ Node.js 22 or newer. Node 20 reached end of life in April 2026.
40
40
 
41
41
  | Vikunja | Status |
42
42
  |---|---|
43
- | 2.4.0 | Supported. This is both the minimum and the version the e2e stacks and live test lanes run against |
44
- | 2.5.0, 2.6.0 | Released upstream, not supported and not tested here. No code in this server targets them |
43
+ | 2.6.0 | Supported and tested. The version the e2e stacks and live test lanes run against by default |
44
+ | 2.5.0 | Supported and tested |
45
+ | 2.4.0 | Supported and tested. The minimum, and a full test lane on both database backends |
45
46
  | below 2.4.0 | Not supported |
46
47
 
48
+ This project supports and tests the trailing three released Vikunja versions — currently 2.4.0, 2.5.0 and 2.6.0 — as full `test:matrix` lanes on both database backends. When a new version ships, the window shifts: the oldest version drops out and the new one takes its place, rather than the range simply growing.
49
+
50
+ 2.6.0 tightened several permission checks. Where it now refuses something 2.4.0 accepted, this server surfaces the refusal with an explanation instead of degrading quietly — the cases are listed in [docs/VIKUNJA_API_ISSUES.md](docs/VIKUNJA_API_ISSUES.md) and each one is asserted per-version in the e2e harness. One is worth knowing about if you use a scoped API token: asking a task listing to expand `comments` or `reactions` with a token that lacks those scopes is rejected, and Vikunja's rejection is indistinguishable from an expired token, so the error names both possibilities.
51
+
47
52
  The minimum rose from 2.3.0 to 2.4.0 in the `0.7.0-beta` line. Nine operations this server ships as implemented, the eight `vikunja_admin` operations and `vikunja_tasks get-by-index`, do not exist on a released 2.3.0, so the older claim was not true in practice. On Vikunja 2.3.0, either upgrade Vikunja or pin `vikunja-mcp-ng@0.6.2`.
48
53
 
49
- The server speaks Vikunja's v1 API. v2 adoption is tracked in [issue #184](https://github.com/netadvanced/vikunja-mcp-ng/issues/184) and has not started.
54
+ The server speaks Vikunja's v1 API for every operation. v2 adoption ([issue #184](https://github.com/netadvanced/vikunja-mcp-ng/issues/184)) has landed detection and a capability-gated transport, but nothing routes through it yet — that per-operation adoption ships separately once ready.
50
55
 
51
56
  ## Docker
52
57
 
@@ -82,16 +87,16 @@ For Docker Desktop's MCP Toolkit rather than a bare `docker run`, there is a ste
82
87
 
83
88
  | npm tag | Version | What you get |
84
89
  |---|---|---|
85
- | `latest` | 0.6.2 | The single-user stdio server, which is what the quick start above installs |
86
- | `beta` | 0.7.0-beta.4 | The same, plus an opt-in OIDC resource-server mode |
90
+ | `latest` | 0.7.0 | The single-user stdio server (the quick start above), plus an opt-in OIDC resource-server mode |
91
+ | `beta` | — | No active beta line right now |
87
92
 
88
- OIDC resource-server mode makes the server a hosted, multi-user deployment: a Streamable HTTP transport, per-user identity taken from a validated OIDC access token, MCP authorization discovery, and an enrollment flow where each user links their own Vikunja token once. It is off by default. Installing the beta changes nothing until you turn it on, and the stdio transport behaves as it does on stable.
93
+ OIDC resource-server mode makes the server a hosted, multi-user deployment: a Streamable HTTP transport, per-user identity taken from a validated OIDC access token, MCP authorization discovery, and an enrollment flow where each user links their own Vikunja token once. It is off by default and stable as of `0.7.0` after several beta releases; installing the package changes nothing until you turn it on, and the stdio transport behaves as it always has.
89
94
 
90
95
  ```bash
91
- npm install -g vikunja-mcp-ng@beta # or: npx -y vikunja-mcp-ng@beta
96
+ npm install -g vikunja-mcp-ng # or: npx -y vikunja-mcp-ng
92
97
  ```
93
98
 
94
- It is beta. The authentication boundary, the credential vault and per-identity isolation have been exercised against a real gateway, identity provider and Vikunja, but none of it has seen sustained production use yet. Read the [OIDC setup manual](https://github.com/netadvanced/vikunja-mcp-ng/blob/main/docs/OIDC-SETUP.md) before enabling it; the design and threat model are in the [OIDC resource-server reference](https://github.com/netadvanced/vikunja-mcp-ng/blob/main/docs/OIDC-RESOURCE-SERVER.md).
99
+ The authentication boundary, the credential vault and per-identity isolation have been exercised against a real gateway, identity provider and Vikunja through the beta line, but it is newly stable and has not yet seen sustained production use at scale. Read the [OIDC setup manual](https://github.com/netadvanced/vikunja-mcp-ng/blob/main/docs/OIDC-SETUP.md) before enabling it; the design and threat model are in the [OIDC resource-server reference](https://github.com/netadvanced/vikunja-mcp-ng/blob/main/docs/OIDC-RESOURCE-SERVER.md).
95
100
 
96
101
  ## What it looks like in use
97
102
 
@@ -1 +1 @@
1
- {"version":3,"file":"jwtValidator.d.ts","sourceRoot":"","sources":["../../../src/auth/oidc/jwtValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAuB,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAU/F,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5E;;;;;OAKG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,sBAAsB,EAC9B,IAAI,EAAE,QAAQ,GACb,gBAAgB,CAmElB"}
1
+ {"version":3,"file":"jwtValidator.d.ts","sourceRoot":"","sources":["../../../src/auth/oidc/jwtValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAuB,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAe/F,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5E;;;;;OAKG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,sBAAsB,EAC9B,IAAI,EAAE,QAAQ,GACb,gBAAgB,CAmFlB"}
@@ -20,6 +20,11 @@ const errors_1 = require("../../types/errors");
20
20
  const logger_1 = require("../../utils/logger");
21
21
  const DEFAULT_ALLOWED_ALGS = ['RS256'];
22
22
  const DEFAULT_CLOCK_SKEW_SEC = 60;
23
+ // Mirrors OidcConfigSchema's clockSkewSec cap (src/config/types.ts) so the
24
+ // same bound holds for a direct caller of createOidcJwtValidator, not only
25
+ // for config loaded through that Zod schema — a large clockTolerance
26
+ // applies to `exp` itself and can make already-expired tokens verify.
27
+ const MAX_CLOCK_SKEW_SEC = 300;
23
28
  const INVALID_TOKEN_MESSAGE = 'Invalid or expired token';
24
29
  const INSUFFICIENT_SCOPE_MESSAGE = 'Token lacks required scope';
25
30
  const BEARER_PATTERN = /^Bearer\s+(\S+)$/i;
@@ -40,6 +45,9 @@ function createOidcJwtValidator(config, deps) {
40
45
  if (!config.jwksUri) {
41
46
  throw new Error('createOidcJwtValidator: config.jwksUri is required');
42
47
  }
48
+ if (config.clockSkewSec !== undefined && config.clockSkewSec > MAX_CLOCK_SKEW_SEC) {
49
+ throw new Error(`createOidcJwtValidator: config.clockSkewSec must not exceed ${MAX_CLOCK_SKEW_SEC}`);
50
+ }
43
51
  const allowedAlgs = config.allowedAlgs && config.allowedAlgs.length > 0 ? config.allowedAlgs : DEFAULT_ALLOWED_ALGS;
44
52
  const clockTolerance = config.clockSkewSec ?? DEFAULT_CLOCK_SKEW_SEC;
45
53
  const jwks = deps.createRemoteJWKSet(new URL(config.jwksUri), buildJwksCacheOptions(config.jwks));
@@ -50,20 +58,30 @@ function createOidcJwtValidator(config, deps) {
50
58
  throw unauthorized();
51
59
  }
52
60
  let payload;
61
+ let protectedHeader;
53
62
  try {
54
63
  const result = await deps.jwtVerify(token, jwks, {
55
64
  issuer: config.issuer,
56
65
  audience: config.audience,
57
66
  algorithms: allowedAlgs,
58
67
  clockTolerance,
59
- requiredClaims: ['sub'],
68
+ // 'exp' must be REQUIRED, not merely checked-if-present: jose only
69
+ // validates exp/nbf/iat when the claim exists, so a correctly-signed
70
+ // token that simply omits `exp` would otherwise verify and never
71
+ // expire.
72
+ requiredClaims: ['sub', 'exp'],
60
73
  });
61
74
  payload = result.payload;
75
+ protectedHeader = result.protectedHeader;
62
76
  }
63
77
  catch (err) {
64
78
  logger_1.logger.warn('OIDC auth rejected: %s', describeVerifyFailure(err));
65
79
  throw unauthorized();
66
80
  }
81
+ if (config.requireAtJwtTyp && !isAccessTokenTyp(protectedHeader.typ)) {
82
+ logger_1.logger.warn('OIDC auth rejected: token typ is not at+jwt');
83
+ throw unauthorized();
84
+ }
67
85
  const sub = payload.sub;
68
86
  if (!sub) {
69
87
  logger_1.logger.warn('OIDC auth rejected: token has an empty sub claim');
@@ -108,6 +126,16 @@ function extractBearerToken(header) {
108
126
  }
109
127
  return BEARER_PATTERN.exec(header.trim())?.[1];
110
128
  }
129
+ /**
130
+ * RFC 9068 §2.1: an access token's JWS header `typ` SHOULD be `at+jwt`.
131
+ * Case-insensitive, and tolerates the `application/` prefix some IdPs use
132
+ * (the same convention `typ` allows elsewhere per RFC 7515).
133
+ */
134
+ function isAccessTokenTyp(typ) {
135
+ if (typeof typ !== 'string')
136
+ return false;
137
+ return typ.toLowerCase().replace(/^application\//, '') === 'at+jwt';
138
+ }
111
139
  function hasRequiredScope(payload, requiredScope) {
112
140
  const raw = payload['scope'] ?? payload['scp'];
113
141
  if (typeof raw === 'string') {
@@ -1 +1 @@
1
- {"version":3,"file":"jwtValidator.js","sourceRoot":"","sources":["../../../src/auth/oidc/jwtValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jwtValidator.js","sourceRoot":"","sources":["../../../src/auth/oidc/jwtValidator.ts"],"names":[],"mappings":"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"}
@@ -58,10 +58,23 @@ export interface OidcJwtValidatorConfig {
58
58
  * reason to accept HMAC-signed tokens against key material published as public keys.
59
59
  */
60
60
  allowedAlgs?: string[];
61
- /** Bounded clock skew tolerance, in seconds, applied to `exp`/`nbf`/`iat` (`oidc.clockSkewSec`). Defaults to 60. */
61
+ /** Bounded clock skew tolerance, in seconds, applied to `exp`/`nbf`/`iat` (`oidc.clockSkewSec`). Defaults to 60, capped at 300 (enforced synchronously by `createOidcJwtValidator`). */
62
62
  clockSkewSec?: number;
63
63
  /** Optional coarse scope gate (`oidc.requiredScope`). When set, a validly-authenticated token missing this scope is a 403, not a 401. */
64
64
  requiredScope?: string;
65
+ /**
66
+ * When true, reject a token whose JWS header `typ` is missing OR is not
67
+ * `at+jwt` (RFC 9068 §2.1 and §4, case-insensitive, tolerating an
68
+ * `application/` prefix). Defaults to false/unset: most IdPs mint access
69
+ * tokens with a generic `typ: 'JWT'` (or omit it), the same value an ID token or a
70
+ * logout token from the same issuer would carry, so enforcing this by
71
+ * default would reject legitimate tokens from IdPs that predate or don't
72
+ * implement RFC 9068. Turn this on only against an IdP known to set
73
+ * `at+jwt` on its access tokens — it then closes the gap where any
74
+ * same-issuer, same-audience JWT (not only an access token) would
75
+ * otherwise be accepted (`oidc.requireAtJwtTyp`).
76
+ */
77
+ requireAtJwtTyp?: boolean;
65
78
  /** Optional tuning for the underlying JWKS cache. */
66
79
  jwks?: OidcJwksCacheConfig;
67
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/auth/oidc/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAE1D;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,qFAAqF;IACrF,MAAM,EAAE,MAAM,CAAC;IACf,yFAAyF;IACzF,GAAG,EAAE,MAAM,CAAC;IACZ,sGAAsG;IACtG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,uFAAuF;AACvF,MAAM,WAAW,mBAAmB;IAClC,iFAAiF;IACjF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uGAAuG;IACvG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAsB;IACrC,8GAA8G;IAC9G,MAAM,EAAE,MAAM,CAAC;IACf,iHAAiH;IACjH,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,oHAAoH;IACpH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yIAAyI;IACzI,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC5B;AAED,MAAM,MAAM,aAAa,GAAG,OAAO,SAAS,CAAC;AAC7C,MAAM,MAAM,sBAAsB,GAAG,OAAO,kBAAkB,CAAC;AAE/D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,aAAa,CAAC;IACzB,kBAAkB,EAAE,sBAAsB,CAAC;CAC5C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/auth/oidc/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAE1D;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,qFAAqF;IACrF,MAAM,EAAE,MAAM,CAAC;IACf,yFAAyF;IACzF,GAAG,EAAE,MAAM,CAAC;IACZ,sGAAsG;IACtG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,uFAAuF;AACvF,MAAM,WAAW,mBAAmB;IAClC,iFAAiF;IACjF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uGAAuG;IACvG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAsB;IACrC,8GAA8G;IAC9G,MAAM,EAAE,MAAM,CAAC;IACf,iHAAiH;IACjH,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,wLAAwL;IACxL,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yIAAyI;IACzI,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qDAAqD;IACrD,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC5B;AAED,MAAM,MAAM,aAAa,GAAG,OAAO,SAAS,CAAC;AAC7C,MAAM,MAAM,sBAAsB,GAAG,OAAO,kBAAkB,CAAC;AAE/D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,aAAa,CAAC;IACzB,kBAAkB,EAAE,sBAAsB,CAAC;CAC5C"}
@@ -51,6 +51,13 @@ export declare class ConfigurationManager {
51
51
  * itself is synchronous and cached after the first call.
52
52
  */
53
53
  isReadOnly(): boolean;
54
+ /**
55
+ * Whether the v2 API fast path is force-disabled. Synchronous for the same
56
+ * reason as `isReadOnly()` above: `loadConfiguration()` is synchronous and
57
+ * cached after the first call, and `resolveApiVersion` sits on a
58
+ * per-request path where an async config read would be a needless await.
59
+ */
60
+ isV1Forced(): boolean;
54
61
  /**
55
62
  * Check if a feature is enabled
56
63
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigurationManager.d.ts","sourceRoot":"","sources":["../../src/config/ConfigurationManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,UAAU,EACV,aAAa,EACd,MAAM,SAAS,CAAC;AAmEjB;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqC;IAC5D,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAEhD,OAAO;IAQP;;OAEG;WACW,WAAW,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,oBAAoB;IAO5E;;OAEG;WACW,KAAK,IAAI,IAAI;IAI3B;;OAEG;IACI,iBAAiB,IAAI,iBAAiB;IAoD7C;;OAEG;IACU,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAO3D;;OAEG;IACU,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAKpC,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAK1C,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IAK9C,qBAAqB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAKpD,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAK1C,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IAK9C,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAKjD;;;;;OAKG;IACI,gBAAgB,IAAI,aAAa;IAIxC;;;;;OAKG;IACI,UAAU,IAAI,OAAO;IAI5B;;OAEG;IACU,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKpE;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,kBAAkB;IAwC1B;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAuSpC;;;OAGG;IACH,OAAO,CAAC,cAAc;IAYtB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;OAEG;IACH,OAAO,CAAC,SAAS;IA6BjB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAuB7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;CA4ChC;AAGD,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,iBAAiB,CACN,CAAC;AACxD,eAAO,MAAM,aAAa,QAAO,OAAO,CAAC,UAAU,CACC,CAAC;AACrD,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,aAAa,CACF,CAAC;AACxD,eAAO,MAAM,kBAAkB,QAAO,OAAO,CAAC,eAAe,CACJ,CAAC;AAC1D,eAAO,MAAM,qBAAqB,QAAO,OAAO,CAAC,kBAAkB,CACP,CAAC;AAC7D,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,KAAG,OAAO,CAAC,OAAO,CACJ,CAAC;AACnE,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,aAAa,CACF,CAAC;AACxD,eAAO,MAAM,UAAU,QAAO,OAA0D,CAAC;AACzF,eAAO,MAAM,kBAAkB,QAAO,OAAO,CAAC,eAAe,CACJ,CAAC;AAC1D,eAAO,MAAM,aAAa,QAAO,OAAO,CAAC,UAAU,CACC,CAAC;AACrD,eAAO,MAAM,gBAAgB,QAAO,aACmB,CAAC"}
1
+ {"version":3,"file":"ConfigurationManager.d.ts","sourceRoot":"","sources":["../../src/config/ConfigurationManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,UAAU,EACV,aAAa,EACd,MAAM,SAAS,CAAC;AAmEjB;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqC;IAC5D,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAEhD,OAAO;IAQP;;OAEG;WACW,WAAW,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,oBAAoB;IAO5E;;OAEG;WACW,KAAK,IAAI,IAAI;IAI3B;;OAEG;IACI,iBAAiB,IAAI,iBAAiB;IAoD7C;;OAEG;IACU,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAO3D;;OAEG;IACU,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAKpC,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAK1C,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IAK9C,qBAAqB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAKpD,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAK1C,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IAK9C,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAKjD;;;;;OAKG;IACI,gBAAgB,IAAI,aAAa;IAIxC;;;;;OAKG;IACI,UAAU,IAAI,OAAO;IAI5B;;;;;OAKG;IACI,UAAU,IAAI,OAAO;IAI5B;;OAEG;IACU,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKpE;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,kBAAkB;IAwC1B;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAmTpC;;;OAGG;IACH,OAAO,CAAC,cAAc;IAYtB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;OAEG;IACH,OAAO,CAAC,SAAS;IA6BjB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAuB7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;CA4ChC;AAGD,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,iBAAiB,CACN,CAAC;AACxD,eAAO,MAAM,aAAa,QAAO,OAAO,CAAC,UAAU,CACC,CAAC;AACrD,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,aAAa,CACF,CAAC;AACxD,eAAO,MAAM,kBAAkB,QAAO,OAAO,CAAC,eAAe,CACJ,CAAC;AAC1D,eAAO,MAAM,qBAAqB,QAAO,OAAO,CAAC,kBAAkB,CACP,CAAC;AAC7D,eAAO,MAAM,gBAAgB,GAAI,aAAa,MAAM,KAAG,OAAO,CAAC,OAAO,CACJ,CAAC;AACnE,eAAO,MAAM,gBAAgB,QAAO,OAAO,CAAC,aAAa,CACF,CAAC;AACxD,eAAO,MAAM,UAAU,QAAO,OAA0D,CAAC;AACzF,eAAO,MAAM,kBAAkB,QAAO,OAAO,CAAC,eAAe,CACJ,CAAC;AAC1D,eAAO,MAAM,aAAa,QAAO,OAAO,CAAC,UAAU,CACC,CAAC;AACrD,eAAO,MAAM,gBAAgB,QAAO,aACmB,CAAC"}
@@ -216,6 +216,15 @@ class ConfigurationManager {
216
216
  isReadOnly() {
217
217
  return this.loadConfiguration().readOnly;
218
218
  }
219
+ /**
220
+ * Whether the v2 API fast path is force-disabled. Synchronous for the same
221
+ * reason as `isReadOnly()` above: `loadConfiguration()` is synchronous and
222
+ * cached after the first call, and `resolveApiVersion` sits on a
223
+ * per-request path where an async config read would be a needless await.
224
+ */
225
+ isV1Forced() {
226
+ return this.loadConfiguration().featureFlags.forceV1Api;
227
+ }
219
228
  /**
220
229
  * Check if a feature is enabled
221
230
  */
@@ -350,6 +359,7 @@ class ConfigurationManager {
350
359
  // Feature flag variables
351
360
  const featureFlags = {};
352
361
  this.assignEnvValue(featureFlags, 'enableServerSideFiltering', process.env.VIKUNJA_ENABLE_SERVER_SIDE_FILTERING, true);
362
+ this.assignEnvValue(featureFlags, 'forceV1Api', process.env.VIKUNJA_MCP_FORCE_V1_API, true);
353
363
  if (Object.keys(featureFlags).length > 0) {
354
364
  result.featureFlags = featureFlags;
355
365
  }
@@ -437,6 +447,7 @@ class ConfigurationManager {
437
447
  }
438
448
  this.assignEnvValue(oidc, 'clockSkewSec', process.env.VIKUNJA_MCP_OIDC_CLOCK_SKEW_SEC, true);
439
449
  this.assignEnvValue(oidc, 'requiredScope', process.env.VIKUNJA_MCP_OIDC_REQUIRED_SCOPE, false);
450
+ this.assignEnvValue(oidc, 'requireAtJwtTyp', process.env.VIKUNJA_MCP_OIDC_REQUIRE_AT_JWT_TYP, true);
440
451
  if (Object.keys(oidc).length > 0) {
441
452
  result.oidc = oidc;
442
453
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigurationManager.js","sourceRoot":"","sources":["../../src/config/ConfigurationManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfigurationManager.js","sourceRoot":"","sources":["../../src/config/ConfigurationManager.ts"],"names":[],"mappings":"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"}
@@ -180,14 +180,17 @@ export declare const FeatureFlagsConfigSchema: z.ZodObject<{
180
180
  enableServerSideFiltering: z.ZodDefault<z.ZodBoolean>;
181
181
  enableAdvancedMetrics: z.ZodDefault<z.ZodBoolean>;
182
182
  enableExperimentalFeatures: z.ZodDefault<z.ZodBoolean>;
183
+ forceV1Api: z.ZodDefault<z.ZodBoolean>;
183
184
  }, "strip", z.ZodTypeAny, {
184
185
  enableServerSideFiltering: boolean;
185
186
  enableAdvancedMetrics: boolean;
186
187
  enableExperimentalFeatures: boolean;
188
+ forceV1Api: boolean;
187
189
  }, {
188
190
  enableServerSideFiltering?: boolean | undefined;
189
191
  enableAdvancedMetrics?: boolean | undefined;
190
192
  enableExperimentalFeatures?: boolean | undefined;
193
+ forceV1Api?: boolean | undefined;
191
194
  }>;
192
195
  export type FeatureFlagsConfig = z.infer<typeof FeatureFlagsConfigSchema>;
193
196
  export declare const ModuleToggleSchema: z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
@@ -476,10 +479,11 @@ export type HttpConfig = z.infer<typeof HttpConfigSchema>;
476
479
  export declare const OidcConfigSchema: z.ZodObject<{
477
480
  issuer: z.ZodString;
478
481
  audience: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
479
- jwksUri: z.ZodString;
480
- allowedAlgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
482
+ jwksUri: z.ZodEffects<z.ZodString, string, string>;
483
+ allowedAlgs: z.ZodOptional<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
481
484
  clockSkewSec: z.ZodOptional<z.ZodNumber>;
482
485
  requiredScope: z.ZodOptional<z.ZodString>;
486
+ requireAtJwtTyp: z.ZodOptional<z.ZodBoolean>;
483
487
  }, "strip", z.ZodTypeAny, {
484
488
  issuer: string;
485
489
  audience: string | string[];
@@ -487,6 +491,7 @@ export declare const OidcConfigSchema: z.ZodObject<{
487
491
  allowedAlgs?: string[] | undefined;
488
492
  clockSkewSec?: number | undefined;
489
493
  requiredScope?: string | undefined;
494
+ requireAtJwtTyp?: boolean | undefined;
490
495
  }, {
491
496
  issuer: string;
492
497
  audience: string | string[];
@@ -494,6 +499,7 @@ export declare const OidcConfigSchema: z.ZodObject<{
494
499
  allowedAlgs?: string[] | undefined;
495
500
  clockSkewSec?: number | undefined;
496
501
  requiredScope?: string | undefined;
502
+ requireAtJwtTyp?: boolean | undefined;
497
503
  }>;
498
504
  export type OidcConfig = z.infer<typeof OidcConfigSchema>;
499
505
  export declare const VaultConfigSchema: z.ZodObject<{
@@ -695,14 +701,17 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
695
701
  enableServerSideFiltering: z.ZodDefault<z.ZodBoolean>;
696
702
  enableAdvancedMetrics: z.ZodDefault<z.ZodBoolean>;
697
703
  enableExperimentalFeatures: z.ZodDefault<z.ZodBoolean>;
704
+ forceV1Api: z.ZodDefault<z.ZodBoolean>;
698
705
  }, "strip", z.ZodTypeAny, {
699
706
  enableServerSideFiltering: boolean;
700
707
  enableAdvancedMetrics: boolean;
701
708
  enableExperimentalFeatures: boolean;
709
+ forceV1Api: boolean;
702
710
  }, {
703
711
  enableServerSideFiltering?: boolean | undefined;
704
712
  enableAdvancedMetrics?: boolean | undefined;
705
713
  enableExperimentalFeatures?: boolean | undefined;
714
+ forceV1Api?: boolean | undefined;
706
715
  }>>;
707
716
  modules: z.ZodDefault<z.ZodObject<{
708
717
  tasks: z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
@@ -973,10 +982,11 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
973
982
  oidc: z.ZodOptional<z.ZodObject<{
974
983
  issuer: z.ZodString;
975
984
  audience: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
976
- jwksUri: z.ZodString;
977
- allowedAlgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
985
+ jwksUri: z.ZodEffects<z.ZodString, string, string>;
986
+ allowedAlgs: z.ZodOptional<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
978
987
  clockSkewSec: z.ZodOptional<z.ZodNumber>;
979
988
  requiredScope: z.ZodOptional<z.ZodString>;
989
+ requireAtJwtTyp: z.ZodOptional<z.ZodBoolean>;
980
990
  }, "strip", z.ZodTypeAny, {
981
991
  issuer: string;
982
992
  audience: string | string[];
@@ -984,6 +994,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
984
994
  allowedAlgs?: string[] | undefined;
985
995
  clockSkewSec?: number | undefined;
986
996
  requiredScope?: string | undefined;
997
+ requireAtJwtTyp?: boolean | undefined;
987
998
  }, {
988
999
  issuer: string;
989
1000
  audience: string | string[];
@@ -991,6 +1002,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
991
1002
  allowedAlgs?: string[] | undefined;
992
1003
  clockSkewSec?: number | undefined;
993
1004
  requiredScope?: string | undefined;
1005
+ requireAtJwtTyp?: boolean | undefined;
994
1006
  }>>;
995
1007
  vault: z.ZodDefault<z.ZodObject<{
996
1008
  path: z.ZodOptional<z.ZodString>;
@@ -1075,6 +1087,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
1075
1087
  enableServerSideFiltering: boolean;
1076
1088
  enableAdvancedMetrics: boolean;
1077
1089
  enableExperimentalFeatures: boolean;
1090
+ forceV1Api: boolean;
1078
1091
  };
1079
1092
  modules: {
1080
1093
  tasks: boolean | z.objectOutputType<{
@@ -1151,6 +1164,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
1151
1164
  allowedAlgs?: string[] | undefined;
1152
1165
  clockSkewSec?: number | undefined;
1153
1166
  requiredScope?: string | undefined;
1167
+ requireAtJwtTyp?: boolean | undefined;
1154
1168
  } | undefined;
1155
1169
  }, {
1156
1170
  environment?: Environment | undefined;
@@ -1209,6 +1223,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
1209
1223
  enableServerSideFiltering?: boolean | undefined;
1210
1224
  enableAdvancedMetrics?: boolean | undefined;
1211
1225
  enableExperimentalFeatures?: boolean | undefined;
1226
+ forceV1Api?: boolean | undefined;
1212
1227
  } | undefined;
1213
1228
  modules?: {
1214
1229
  tasks?: boolean | z.objectInputType<{
@@ -1275,6 +1290,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
1275
1290
  allowedAlgs?: string[] | undefined;
1276
1291
  clockSkewSec?: number | undefined;
1277
1292
  requiredScope?: string | undefined;
1293
+ requireAtJwtTyp?: boolean | undefined;
1278
1294
  } | undefined;
1279
1295
  vault?: {
1280
1296
  path?: string | undefined;
@@ -1343,6 +1359,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
1343
1359
  enableServerSideFiltering: boolean;
1344
1360
  enableAdvancedMetrics: boolean;
1345
1361
  enableExperimentalFeatures: boolean;
1362
+ forceV1Api: boolean;
1346
1363
  };
1347
1364
  modules: {
1348
1365
  tasks: boolean | z.objectOutputType<{
@@ -1419,6 +1436,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
1419
1436
  allowedAlgs?: string[] | undefined;
1420
1437
  clockSkewSec?: number | undefined;
1421
1438
  requiredScope?: string | undefined;
1439
+ requireAtJwtTyp?: boolean | undefined;
1422
1440
  } | undefined;
1423
1441
  }, {
1424
1442
  environment?: Environment | undefined;
@@ -1477,6 +1495,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
1477
1495
  enableServerSideFiltering?: boolean | undefined;
1478
1496
  enableAdvancedMetrics?: boolean | undefined;
1479
1497
  enableExperimentalFeatures?: boolean | undefined;
1498
+ forceV1Api?: boolean | undefined;
1480
1499
  } | undefined;
1481
1500
  modules?: {
1482
1501
  tasks?: boolean | z.objectInputType<{
@@ -1543,6 +1562,7 @@ export declare const ApplicationConfigSchema: z.ZodEffects<z.ZodObject<{
1543
1562
  allowedAlgs?: string[] | undefined;
1544
1563
  clockSkewSec?: number | undefined;
1545
1564
  requiredScope?: string | undefined;
1565
+ requireAtJwtTyp?: boolean | undefined;
1546
1566
  } | undefined;
1547
1567
  vault?: {
1548
1568
  path?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,13 @@ exports.FeatureFlagsConfigSchema = zod_1.z.object({
76
76
  enableServerSideFiltering: zod_1.z.boolean().default(true),
77
77
  enableAdvancedMetrics: zod_1.z.boolean().default(false),
78
78
  enableExperimentalFeatures: zod_1.z.boolean().default(false),
79
+ // Kill switch for the v2 API fast path: when true, every operation uses
80
+ // the v1 API even if this session's capability probe reported v2 support.
81
+ // Config file key: `featureFlags.forceV1Api`. Env override:
82
+ // `VIKUNJA_MCP_FORCE_V1_API` (env always wins, per standard layering).
83
+ // Deliberately absent from ENVIRONMENT_PROFILES so it stays false in every
84
+ // environment unless explicitly set. See src/utils/api-version.ts.
85
+ forceV1Api: zod_1.z.boolean().default(false),
79
86
  });
80
87
  // Module Enable/Disable Configuration Schema
81
88
  //
@@ -205,17 +212,52 @@ exports.OidcConfigSchema = zod_1.z.object({
205
212
  // Required audience value(s) (`oidc.audience`). Env form is a
206
213
  // comma-separated list; a single value stays a string.
207
214
  audience: zod_1.z.union([zod_1.z.string().min(1), zod_1.z.array(zod_1.z.string().min(1)).min(1)]),
208
- // JWKS endpoint URL to fetch signing keys from (`oidc.jwksUri`).
209
- jwksUri: zod_1.z.string().url(),
215
+ // JWKS endpoint URL to fetch signing keys from (`oidc.jwksUri`). Must be
216
+ // `https:` — docs/OIDC-RESOURCE-SERVER.md documents signing keys as fetched
217
+ // "over HTTPS" as a security invariant; a plain `http://` endpoint lets an
218
+ // on-path attacker substitute keys and mint tokens for any identity.
219
+ jwksUri: zod_1.z
220
+ .string()
221
+ .url()
222
+ .refine((value) => {
223
+ try {
224
+ return new URL(value).protocol === 'https:';
225
+ }
226
+ catch {
227
+ // Already-invalid URLs are rejected by .url() above with its own
228
+ // message; this refinement only adds the scheme check.
229
+ return false;
230
+ }
231
+ }, {
232
+ message: 'oidc.jwksUri must use https:// — signing keys must not be fetched over plaintext',
233
+ }),
210
234
  // Allowed JWS `alg` values (`oidc.allowedAlgs`). Defaults (in the validator)
211
- // to `['RS256']`; `none` is never accepted.
212
- allowedAlgs: zod_1.z.array(zod_1.z.string().min(1)).min(1).optional(),
235
+ // to `['RS256']`. `none` is never accepted by `jose` itself, but is also
236
+ // rejected here at config load — a misconfiguration should fail loud at
237
+ // startup rather than rely solely on the verifier's own backstop. `HS*`
238
+ // algorithms are still permitted: unlike `none`, there is a legitimate
239
+ // (if discouraged) reason to configure one, see
240
+ // `OidcJwtValidatorConfig.allowedAlgs`'s doc comment.
241
+ allowedAlgs: zod_1.z
242
+ .array(zod_1.z.string().min(1))
243
+ .min(1)
244
+ .refine((algs) => !algs.some((alg) => alg.toLowerCase() === 'none'), {
245
+ message: "oidc.allowedAlgs must not include 'none'",
246
+ })
247
+ .optional(),
213
248
  // Bounded clock-skew tolerance in seconds (`oidc.clockSkewSec`), applied to
214
- // `exp`/`nbf`/`iat`. Validator default: 60.
215
- clockSkewSec: zod_1.z.number().int().nonnegative().optional(),
249
+ // `exp`/`nbf`/`iat`. Validator default: 60. Capped at 300 (5 minutes): jose
250
+ // applies this value as `clockTolerance` on `exp` itself, so an
251
+ // unbounded value would let an operator (deliberately or via a fat-fingered
252
+ // env var) make already-expired tokens still verify.
253
+ clockSkewSec: zod_1.z.number().int().nonnegative().max(300).optional(),
216
254
  // Optional coarse scope gate (`oidc.requiredScope`) — a validly
217
255
  // authenticated token missing it is a 403, not a 401.
218
256
  requiredScope: zod_1.z.string().min(1).optional(),
257
+ // Optional RFC 9068 `typ` enforcement (`oidc.requireAtJwtTyp`) — off by
258
+ // default. See `OidcJwtValidatorConfig.requireAtJwtTyp`'s doc comment for
259
+ // what this closes and why it isn't the default.
260
+ requireAtJwtTyp: zod_1.z.boolean().optional(),
219
261
  });
220
262
  // Credential vault configuration (docs/OIDC-RESOURCE-SERVER.md §3c, D1/D4).
221
263
  //
@@ -257,11 +299,20 @@ exports.EnrollConfigSchema = zod_1.z.object({
257
299
  // Expiry, in days, of the auto-minted per-user Vikunja API token
258
300
  // (`VIKUNJA_MCP_ENROLL_TOKEN_EXPIRY_DAYS`). Default: 365. When a token
259
301
  // expires the user simply re-runs `vikunja_auth provision` and clicks the
260
- // link again — re-enrollment mints and vaults a fresh token.
261
- tokenExpiryDays: zod_1.z.number().int().positive().default(365),
302
+ // link again — re-enrollment mints and vaults a fresh token. Capped at 3650
303
+ // (10 years): unbounded, this feeds `Date` arithmetic in
304
+ // `src/transport/enrollment.ts` directly (`Date.now() + tokenExpiryDays *
305
+ // 24 * 3600 * 1000`), and an extreme value overflows `Date`'s valid range,
306
+ // throwing on every enrollment callback rather than minting a long-lived
307
+ // token.
308
+ tokenExpiryDays: zod_1.z.number().int().positive().max(3650).default(365),
262
309
  // Enrollment ticket lifetime in seconds (`VIKUNJA_MCP_ENROLL_TICKET_TTL_SEC`)
263
310
  // — how long the returned enrollment URL stays clickable. Default: 600.
264
- ticketTtlSec: zod_1.z.number().int().positive().default(600),
311
+ // Capped at 3600 (1 hour): this is a short-lived, leak-sensitive credential
312
+ // (it travels in a URL and as an OAuth `state` value), so an unbounded
313
+ // value is the same "operator tolerance with no ceiling" class of bug as
314
+ // `clockSkewSec` above, not a legitimate long-lived-knob use case.
315
+ ticketTtlSec: zod_1.z.number().int().positive().max(3600).default(600),
265
316
  });
266
317
  // Complete Application Configuration Schema
267
318
  exports.ApplicationConfigSchema = zod_1.z.object({