@mccaskie-labs/workbench-config 0.1.29 → 0.1.30

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 CHANGED
@@ -1,5 +1,11 @@
1
1
  # @mccaskie-labs/workbench-config
2
2
 
3
+ ## 0.1.30
4
+
5
+ ### Patch Changes
6
+
7
+ - The Gateway manifest's `budget_exceeded` now names which cap was reached: a tool's, the environment's or the global ceiling.
8
+
3
9
  ## 0.1.29
4
10
 
5
11
  ### Patch Changes
@@ -54,7 +54,7 @@
54
54
  { "code": "unauthorised", "http": 401, "retryable": false, "meaning": "No key, a malformed or unknown key, a revoked key, or a key from the wrong environment" },
55
55
  { "code": "forbidden_scope", "http": 403, "retryable": false, "meaning": "The key doesn't carry the scope this endpoint needs" },
56
56
  { "code": "invalid_request", "http": 400, "retryable": false, "meaning": "The body or a required header is missing or malformed" },
57
- { "code": "budget_exceeded", "http": 402, "retryable": false, "meaning": "The environment's enforced monthly budget, or the global ceiling, is reached" },
57
+ { "code": "budget_exceeded", "http": 402, "retryable": false, "meaning": "An enforced monthly cap is reached: the tool's cap (AI text, AI images, image search or email), the environment's budget or the global ceiling, whichever comes first. The error names it in budget (tool, environment or global) and, for a tool, tool" },
58
58
  { "code": "content_refused", "http": 422, "retryable": false, "meaning": "The Workbench content rules refuse what was sent (stage input) or what the vendor made (stage output). The error names the rule, the stage and the rules version, never the content. A vendor's own safety block is reported the same way, with rule vendor" },
59
59
  { "code": "content_check_unavailable", "http": 503, "retryable": true, "meaning": "The content check couldn't be run, so nothing was returned. Nothing passes unchecked" },
60
60
  { "code": "rate_limited", "http": 429, "retryable": true, "meaning": "Per-key rate limit; it stops runaway loops, budgets limit spend" },
@@ -1,4 +1,4 @@
1
- export declare const MANIFEST_VERSION: "4538a59cfe87";
1
+ export declare const MANIFEST_VERSION: "edc99070c2c3";
2
2
  export declare const capabilities: {
3
3
  readonly ai: {
4
4
  readonly $schema: "./schema.json";
@@ -1263,7 +1263,7 @@ export declare const capabilities: {
1263
1263
  readonly code: "budget_exceeded";
1264
1264
  readonly http: 402;
1265
1265
  readonly retryable: false;
1266
- readonly meaning: "The environment's enforced monthly budget, or the global ceiling, is reached";
1266
+ readonly meaning: "An enforced monthly cap is reached: the tool's cap (AI text, AI images, image search or email), the environment's budget or the global ceiling, whichever comes first. The error names it in budget (tool, environment or global) and, for a tool, tool";
1267
1267
  }, {
1268
1268
  readonly code: "content_refused";
1269
1269
  readonly http: 422;
@@ -1,6 +1,6 @@
1
1
  // Generated by `npm run capabilities:build` from capabilities/*.json. Do not edit.
2
2
  // check:capabilities fails in Checks when this file is stale.
3
- export const MANIFEST_VERSION = "4538a59cfe87";
3
+ export const MANIFEST_VERSION = "edc99070c2c3";
4
4
  export const capabilities = {
5
5
  "ai": {
6
6
  "$schema": "./schema.json",
@@ -1733,7 +1733,7 @@ export const capabilities = {
1733
1733
  "code": "budget_exceeded",
1734
1734
  "http": 402,
1735
1735
  "retryable": false,
1736
- "meaning": "The environment's enforced monthly budget, or the global ceiling, is reached"
1736
+ "meaning": "An enforced monthly cap is reached: the tool's cap (AI text, AI images, image search or email), the environment's budget or the global ceiling, whichever comes first. The error names it in budget (tool, environment or global) and, for a tool, tool"
1737
1737
  },
1738
1738
  {
1739
1739
  "code": "content_refused",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mccaskie-labs/workbench-config",
3
- "version": "0.1.29",
3
+ "version": "0.1.30",
4
4
  "description": "Workbench app configuration: WORKBENCH_ENV, typed variables that fail by name, secrets that are never printed, and the capabilities manifest.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",