@cat-factory/worker 0.130.0 → 0.131.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.
@@ -1 +1 @@
1
- {"version":3,"file":"D1WorkspaceSettingsRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1WorkspaceSettingsRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AACtE,OAAO,KAAK,EAKV,iBAAiB,EAClB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAuD3D;;;;GAIG;AACH,qBAAa,6BAA8B,YAAW,2BAA2B;IAC/E,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAY;IAE/B,YAAY,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,UAAU,CAAA;KAAE,EAErC;IAEK,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAMhE;IAEK,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAaxF;IAEK,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmD5E;CACF"}
1
+ {"version":3,"file":"D1WorkspaceSettingsRepository.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1WorkspaceSettingsRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AACtE,OAAO,KAAK,EAMV,iBAAiB,EAClB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AA2D3D;;;;GAIG;AACH,qBAAa,6BAA8B,YAAW,2BAA2B;IAC/E,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAY;IAE/B,YAAY,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,UAAU,CAAA;KAAE,EAErC;IAEK,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAMhE;IAEK,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAaxF;IAEK,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsD5E;CACF"}
@@ -28,6 +28,9 @@ function rowToSettings(row) {
28
28
  spendMonthlyLimit: row.spend_monthly_limit,
29
29
  defaultProvisionType: row.default_provision_type ?? null,
30
30
  defaultProvisionManifestId: row.default_provision_manifest_id,
31
+ // An absent (or unparseable) blob reads as "nothing filled in", never as a missing key
32
+ // the settings object would have to be nullable for.
33
+ metadata: parseJson(row.metadata) ?? {},
31
34
  };
32
35
  }
33
36
  /**
@@ -71,8 +74,9 @@ export class D1WorkspaceSettingsRepository {
71
74
  artifact_retention_days, kaizen_enabled,
72
75
  delegate_agents_to_runner_pool, review_friction_mode, review_friction_warn_count,
73
76
  review_friction_block_count, review_friction_block_stuck_minutes, spend_currency,
74
- spend_monthly_limit, default_provision_type, default_provision_manifest_id)
75
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
77
+ spend_monthly_limit, default_provision_type, default_provision_manifest_id,
78
+ metadata)
79
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
76
80
  ON CONFLICT (workspace_id) DO UPDATE SET
77
81
  waiting_escalation_minutes = excluded.waiting_escalation_minutes,
78
82
  task_limit_mode = excluded.task_limit_mode,
@@ -90,8 +94,9 @@ export class D1WorkspaceSettingsRepository {
90
94
  spend_currency = excluded.spend_currency,
91
95
  spend_monthly_limit = excluded.spend_monthly_limit,
92
96
  default_provision_type = excluded.default_provision_type,
93
- default_provision_manifest_id = excluded.default_provision_manifest_id`)
94
- .bind(workspaceId, settings.waitingEscalationMinutes, settings.taskLimitMode, settings.taskLimitShared, settings.taskLimitPerType ? JSON.stringify(settings.taskLimitPerType) : null, settings.storeAgentContext ? 1 : 0, settings.publishPrVerificationReport ? 1 : 0, settings.artifactRetentionDays, settings.kaizenEnabled ? 1 : 0, settings.delegateAgentsToRunnerPool ? 1 : 0, settings.reviewFrictionMode, settings.reviewFrictionWarnCount, settings.reviewFrictionBlockCount, settings.reviewFrictionBlockStuckMinutes, settings.spendCurrency, settings.spendMonthlyLimit, settings.defaultProvisionType, settings.defaultProvisionManifestId)
97
+ default_provision_manifest_id = excluded.default_provision_manifest_id,
98
+ metadata = excluded.metadata`)
99
+ .bind(workspaceId, settings.waitingEscalationMinutes, settings.taskLimitMode, settings.taskLimitShared, settings.taskLimitPerType ? JSON.stringify(settings.taskLimitPerType) : null, settings.storeAgentContext ? 1 : 0, settings.publishPrVerificationReport ? 1 : 0, settings.artifactRetentionDays, settings.kaizenEnabled ? 1 : 0, settings.delegateAgentsToRunnerPool ? 1 : 0, settings.reviewFrictionMode, settings.reviewFrictionWarnCount, settings.reviewFrictionBlockCount, settings.reviewFrictionBlockStuckMinutes, settings.spendCurrency, settings.spendMonthlyLimit, settings.defaultProvisionType, settings.defaultProvisionManifestId, JSON.stringify(settings.metadata))
95
100
  .run();
96
101
  }
97
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"D1WorkspaceSettingsRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1WorkspaceSettingsRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"D1WorkspaceSettingsRepository.js","sourceRoot":"","sources":["../../../src/infrastructure/repositories/D1WorkspaceSettingsRepository.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAwBpC,SAAS,SAAS,CAAI,GAAkB;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAM,CAAA;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,GAAyB;IAC9C,OAAO;QACL,wBAAwB,EAAE,GAAG,CAAC,0BAA0B;QACxD,aAAa,EAAE,GAAG,CAAC,eAAgC;QACnD,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,gBAAgB,EAAE,SAAS,CAAmB,GAAG,CAAC,mBAAmB,CAAC;QACtE,iBAAiB,EAAE,GAAG,CAAC,mBAAmB,KAAK,CAAC;QAChD,2BAA2B,EAAE,GAAG,CAAC,8BAA8B,KAAK,CAAC;QACrE,qBAAqB,EAAE,GAAG,CAAC,uBAAuB;QAClD,aAAa,EAAE,GAAG,CAAC,cAAc,KAAK,CAAC;QACvC,0BAA0B,EAAE,GAAG,CAAC,8BAA8B,KAAK,CAAC;QACpE,kBAAkB,EAAE,GAAG,CAAC,oBAA0C;QAClE,uBAAuB,EAAE,GAAG,CAAC,0BAA0B;QACvD,wBAAwB,EAAE,GAAG,CAAC,2BAA2B;QACzD,+BAA+B,EAAE,GAAG,CAAC,mCAAmC;QACxE,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,iBAAiB,EAAE,GAAG,CAAC,mBAAmB;QAC1C,oBAAoB,EAAG,GAAG,CAAC,sBAA+C,IAAI,IAAI;QAClF,0BAA0B,EAAE,GAAG,CAAC,6BAA6B;QAC7D,uFAAuF;QACvF,qDAAqD;QACrD,QAAQ,EAAE,SAAS,CAAoB,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE;KAC3D,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,6BAA6B;IACvB,EAAE,CAAY;IAE/B,YAAY,EAAE,EAAE,EAAsB;QACpC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACd,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,WAAmB;QAC3B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE;aACtB,OAAO,CAAC,yDAAyD,CAAC;aAClE,IAAI,CAAC,WAAW,CAAC;aACjB,KAAK,EAAwB,CAAA;QAChC,OAAO,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,YAAsB;QAC7C,MAAM,GAAG,GAAG,IAAI,GAAG,EAA6B,CAAA;QAChD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,GAAG,CAAA;QACzC,8DAA8D;QAC9D,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACpD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,EAAE;iBAC9B,OAAO,CAAC,2DAA2D,YAAY,GAAG,CAAC;iBACnF,IAAI,CAAC,GAAG,KAAK,CAAC;iBACd,GAAG,EAAwB,CAAA;YAC9B,KAAK,MAAM,GAAG,IAAI,OAAO,IAAI,EAAE;gBAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;QAChF,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,WAAmB,EAAE,QAA2B;QAC3D,MAAM,IAAI,CAAC,EAAE;aACV,OAAO,CACN;;;;;;;;;;;;;;;;;;;;;;;;;;;wCA2BgC,CACjC;aACA,IAAI,CACH,WAAW,EACX,QAAQ,CAAC,wBAAwB,EACjC,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,eAAe,EACxB,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,EAC5E,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAClC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC5C,QAAQ,CAAC,qBAAqB,EAC9B,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC9B,QAAQ,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3C,QAAQ,CAAC,kBAAkB,EAC3B,QAAQ,CAAC,uBAAuB,EAChC,QAAQ,CAAC,wBAAwB,EACjC,QAAQ,CAAC,+BAA+B,EACxC,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,iBAAiB,EAC1B,QAAQ,CAAC,oBAAoB,EAC7B,QAAQ,CAAC,0BAA0B,EACnC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAClC;aACA,GAAG,EAAE,CAAA;IACV,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ -- Custom workspace metadata: the values for the metadata FIELDS a deployment declares in
2
+ -- its app (an external-tool URL resolver reads them to open the tool already scoped to this
3
+ -- workspace). One JSON object per workspace on the existing settings row rather than a table
4
+ -- of key/value pairs: the whole bag is always read together, always written together, and is
5
+ -- bounded (64 entries) by the contract.
6
+ --
7
+ -- Nullable with no default, which is how every other JSON column on this table spells "no
8
+ -- value" (`task_limit_per_type`); the repository reads a missing/garbled blob as `{}`.
9
+ ALTER TABLE workspace_settings ADD COLUMN metadata TEXT;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/worker",
3
- "version": "0.130.0",
3
+ "version": "0.131.0",
4
4
  "description": "Reusable Cloudflare Worker library (Hono + D1) exposing the Agent Architecture Board core: the `createApp()` Hono factory, the default fetch/scheduled/queue handler, and the Durable Object + Workflow classes. Deployments (see deploy/backend) supply the wrangler.toml + config and re-export these.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -42,22 +42,22 @@
42
42
  "pino": "^10.3.1",
43
43
  "valibot": "^1.4.2",
44
44
  "workers-ai-provider": "^4.0.0",
45
- "@cat-factory/agents": "0.96.0",
46
- "@cat-factory/caching": "0.12.0",
47
- "@cat-factory/consensus": "0.13.13",
48
- "@cat-factory/contracts": "0.204.0",
49
- "@cat-factory/eks": "0.1.187",
50
- "@cat-factory/gates": "0.8.33",
51
- "@cat-factory/integrations": "0.113.8",
52
- "@cat-factory/gitlab": "0.14.16",
53
- "@cat-factory/observability-langfuse": "0.9.30",
54
- "@cat-factory/kernel": "0.203.0",
55
- "@cat-factory/prompt-fragments": "0.15.27",
56
- "@cat-factory/observability-otel": "0.4.30",
57
- "@cat-factory/provider-cloudflare": "0.7.339",
58
- "@cat-factory/server": "0.188.0",
59
- "@cat-factory/spend": "0.12.134",
60
- "@cat-factory/orchestration": "0.179.0"
45
+ "@cat-factory/agents": "0.96.1",
46
+ "@cat-factory/caching": "0.12.1",
47
+ "@cat-factory/contracts": "0.205.0",
48
+ "@cat-factory/consensus": "0.13.14",
49
+ "@cat-factory/eks": "0.1.188",
50
+ "@cat-factory/gates": "0.8.34",
51
+ "@cat-factory/gitlab": "0.14.17",
52
+ "@cat-factory/integrations": "0.113.9",
53
+ "@cat-factory/kernel": "0.204.0",
54
+ "@cat-factory/observability-otel": "0.4.31",
55
+ "@cat-factory/observability-langfuse": "0.9.31",
56
+ "@cat-factory/orchestration": "0.180.0",
57
+ "@cat-factory/prompt-fragments": "0.15.28",
58
+ "@cat-factory/provider-cloudflare": "0.7.340",
59
+ "@cat-factory/server": "0.188.1",
60
+ "@cat-factory/spend": "0.12.135"
61
61
  },
62
62
  "devDependencies": {
63
63
  "@cloudflare/vitest-pool-workers": "^0.18.8",
@@ -65,7 +65,7 @@
65
65
  "typescript": "7.0.2",
66
66
  "vitest": "^4.1.10",
67
67
  "wrangler": "^4.114.0",
68
- "@cat-factory/conformance": "0.17.0"
68
+ "@cat-factory/conformance": "0.18.0"
69
69
  },
70
70
  "scripts": {
71
71
  "build": "tsc -b tsconfig.build.json",