@ai-matrx/agents 0.59.238 → 0.59.239
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 +5 -0
- package/dist/models/index.cjs +6 -1
- package/dist/models/index.d.cts +3 -1
- package/dist/models/index.d.ts +3 -1
- package/dist/models/index.js +6 -1
- package/dist/models/react/index.d.cts +1 -1
- package/dist/models/react/index.d.ts +1 -1
- package/dist/versions/index.cjs +1 -1
- package/dist/versions/index.d.cts +1 -0
- package/dist/versions/index.d.ts +1 -0
- package/dist/versions/index.js +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.59.239
|
|
4
|
+
|
|
5
|
+
UNVERIFIED: this release has no Unreleased entry and the source comparison could not be made (the caller supplied no source comparison). Whether source changed is unknown; consumer action is unknown.
|
|
6
|
+
Check the package's gitHead on npm against this version's gitHead: `git diff <previous gitHead> <this gitHead> -- apps/shared/matrx-agents/src`.
|
|
7
|
+
|
|
3
8
|
## 0.59.238
|
|
4
9
|
|
|
5
10
|
- **The context views never warn the person (Arman, 2026-10-22).** `ContextRulesChip` loses `mismatchCount` / `mismatches` (no amber face, no warning glyph, no "N · M" count); `ContextRulesTable` and `ContextRulesPanelBody` lose `mismatches` (no row marker, no "expected X, got Y" banner); `describeMismatches` is deleted. `compareReceipt` is unchanged — the host still files the silent `context_truth_mismatch`. A self-check row keeps its tooltip from `row.blockedBy`. Guard: `context/react/a-context-view-never-warns-the-person.test.tsx`. Consumer action: stop passing `mismatchCount` / `mismatches`.
|
package/dist/models/index.cjs
CHANGED
|
@@ -1591,11 +1591,16 @@ function normalizeAdmin(row, offerings) {
|
|
|
1591
1591
|
};
|
|
1592
1592
|
}
|
|
1593
1593
|
var rows = (data) => Array.isArray(data) ? data : [];
|
|
1594
|
+
function aiRpc(client, fn) {
|
|
1595
|
+
const scope = client.schema("ai");
|
|
1596
|
+
if (!scope.rpc) throw new Error(`The model catalog client's schema("ai") has no rpc(), so ${fn} cannot be called.`);
|
|
1597
|
+
return scope.rpc(fn);
|
|
1598
|
+
}
|
|
1594
1599
|
async function readCatalog(client, variant) {
|
|
1595
1600
|
if (variant === "admin") {
|
|
1596
1601
|
const [rpcRes, offeringsRes] = await Promise.all([
|
|
1597
1602
|
client.rpc("admin_model_catalog"),
|
|
1598
|
-
client
|
|
1603
|
+
aiRpc(client, "admin_model_offerings")
|
|
1599
1604
|
]);
|
|
1600
1605
|
if (rpcRes.error) throw rpcRes.error;
|
|
1601
1606
|
if (offeringsRes.error) throw offeringsRes.error;
|
package/dist/models/index.d.cts
CHANGED
|
@@ -756,7 +756,7 @@ declare const selectModelIdentityLookupStatus: (s: ModelRecordsState, modelId: s
|
|
|
756
756
|
* - "user" → `ai.model_public` (anon + authenticated; masked, points pricing), filtered to
|
|
757
757
|
* ROUTABLE models via `ai.model_offering`, which also supplies each model's serving
|
|
758
758
|
* TIERS (`served_via` — the endpoint's public Matrx brand, never the real vendor).
|
|
759
|
-
* - "admin" → `public.admin_model_catalog()` + `
|
|
759
|
+
* - "admin" → `public.admin_model_catalog()` + `ai.admin_model_offerings()` (SECURITY
|
|
760
760
|
* DEFINER, gated by `is_super_admin()`): raw $ pricing, real vendors, every
|
|
761
761
|
* offering. NEVER read `ai.model_admin` / `ai.offering` directly from a client.
|
|
762
762
|
*
|
|
@@ -787,6 +787,8 @@ interface ModelCatalogClient {
|
|
|
787
787
|
rpc(fn: string, args?: Record<string, unknown>): PromiseLike<ModelCatalogPgResult>;
|
|
788
788
|
schema(name: string): {
|
|
789
789
|
from(table: string): ModelCatalogQuery;
|
|
790
|
+
/** Present on every supabase-js schema scope; optional only so read-only fixtures stay valid. */
|
|
791
|
+
rpc?(fn: string, args?: Record<string, unknown>): PromiseLike<ModelCatalogPgResult>;
|
|
790
792
|
};
|
|
791
793
|
}
|
|
792
794
|
type ModelCatalogErrorSink = (event: {
|
package/dist/models/index.d.ts
CHANGED
|
@@ -756,7 +756,7 @@ declare const selectModelIdentityLookupStatus: (s: ModelRecordsState, modelId: s
|
|
|
756
756
|
* - "user" → `ai.model_public` (anon + authenticated; masked, points pricing), filtered to
|
|
757
757
|
* ROUTABLE models via `ai.model_offering`, which also supplies each model's serving
|
|
758
758
|
* TIERS (`served_via` — the endpoint's public Matrx brand, never the real vendor).
|
|
759
|
-
* - "admin" → `public.admin_model_catalog()` + `
|
|
759
|
+
* - "admin" → `public.admin_model_catalog()` + `ai.admin_model_offerings()` (SECURITY
|
|
760
760
|
* DEFINER, gated by `is_super_admin()`): raw $ pricing, real vendors, every
|
|
761
761
|
* offering. NEVER read `ai.model_admin` / `ai.offering` directly from a client.
|
|
762
762
|
*
|
|
@@ -787,6 +787,8 @@ interface ModelCatalogClient {
|
|
|
787
787
|
rpc(fn: string, args?: Record<string, unknown>): PromiseLike<ModelCatalogPgResult>;
|
|
788
788
|
schema(name: string): {
|
|
789
789
|
from(table: string): ModelCatalogQuery;
|
|
790
|
+
/** Present on every supabase-js schema scope; optional only so read-only fixtures stay valid. */
|
|
791
|
+
rpc?(fn: string, args?: Record<string, unknown>): PromiseLike<ModelCatalogPgResult>;
|
|
790
792
|
};
|
|
791
793
|
}
|
|
792
794
|
type ModelCatalogErrorSink = (event: {
|
package/dist/models/index.js
CHANGED
|
@@ -1432,11 +1432,16 @@ function normalizeAdmin(row, offerings) {
|
|
|
1432
1432
|
};
|
|
1433
1433
|
}
|
|
1434
1434
|
var rows = (data) => Array.isArray(data) ? data : [];
|
|
1435
|
+
function aiRpc(client, fn) {
|
|
1436
|
+
const scope = client.schema("ai");
|
|
1437
|
+
if (!scope.rpc) throw new Error(`The model catalog client's schema("ai") has no rpc(), so ${fn} cannot be called.`);
|
|
1438
|
+
return scope.rpc(fn);
|
|
1439
|
+
}
|
|
1435
1440
|
async function readCatalog(client, variant) {
|
|
1436
1441
|
if (variant === "admin") {
|
|
1437
1442
|
const [rpcRes, offeringsRes] = await Promise.all([
|
|
1438
1443
|
client.rpc("admin_model_catalog"),
|
|
1439
|
-
client
|
|
1444
|
+
aiRpc(client, "admin_model_offerings")
|
|
1440
1445
|
]);
|
|
1441
1446
|
if (rpcRes.error) throw rpcRes.error;
|
|
1442
1447
|
if (offeringsRes.error) throw offeringsRes.error;
|
|
@@ -372,7 +372,7 @@ interface ModelRecords {
|
|
|
372
372
|
* - "user" → `ai.model_public` (anon + authenticated; masked, points pricing), filtered to
|
|
373
373
|
* ROUTABLE models via `ai.model_offering`, which also supplies each model's serving
|
|
374
374
|
* TIERS (`served_via` — the endpoint's public Matrx brand, never the real vendor).
|
|
375
|
-
* - "admin" → `public.admin_model_catalog()` + `
|
|
375
|
+
* - "admin" → `public.admin_model_catalog()` + `ai.admin_model_offerings()` (SECURITY
|
|
376
376
|
* DEFINER, gated by `is_super_admin()`): raw $ pricing, real vendors, every
|
|
377
377
|
* offering. NEVER read `ai.model_admin` / `ai.offering` directly from a client.
|
|
378
378
|
*
|
|
@@ -372,7 +372,7 @@ interface ModelRecords {
|
|
|
372
372
|
* - "user" → `ai.model_public` (anon + authenticated; masked, points pricing), filtered to
|
|
373
373
|
* ROUTABLE models via `ai.model_offering`, which also supplies each model's serving
|
|
374
374
|
* TIERS (`served_via` — the endpoint's public Matrx brand, never the real vendor).
|
|
375
|
-
* - "admin" → `public.admin_model_catalog()` + `
|
|
375
|
+
* - "admin" → `public.admin_model_catalog()` + `ai.admin_model_offerings()` (SECURITY
|
|
376
376
|
* DEFINER, gated by `is_super_admin()`): raw $ pricing, real vendors, every
|
|
377
377
|
* offering. NEVER read `ai.model_admin` / `ai.offering` directly from a client.
|
|
378
378
|
*
|
package/dist/versions/index.cjs
CHANGED
|
@@ -244,7 +244,7 @@ async function readAgentCurrentVersion(client, agentId) {
|
|
|
244
244
|
return typeof v === "number" && Number.isInteger(v) ? v : null;
|
|
245
245
|
}
|
|
246
246
|
async function declareContractBreak(client, query) {
|
|
247
|
-
const { error } = await client.rpc("agx_declare_contract_break", {
|
|
247
|
+
const { error } = await client.schema("agent").rpc("agx_declare_contract_break", {
|
|
248
248
|
p_agent_id: query.agentId,
|
|
249
249
|
p_version_number: query.version,
|
|
250
250
|
p_kind: query.kind ?? void 0
|
|
@@ -135,6 +135,7 @@ type Answer = PromiseLike<{
|
|
|
135
135
|
interface VersionsClient {
|
|
136
136
|
rpc(fn: string, args: Record<string, unknown>): Answer;
|
|
137
137
|
schema(name: "agent"): {
|
|
138
|
+
rpc(fn: string, args: Record<string, unknown>): Answer;
|
|
138
139
|
from(table: "definition_version" | "definition"): {
|
|
139
140
|
select(columns: string): {
|
|
140
141
|
eq(column: string, value: string): {
|
package/dist/versions/index.d.ts
CHANGED
|
@@ -135,6 +135,7 @@ type Answer = PromiseLike<{
|
|
|
135
135
|
interface VersionsClient {
|
|
136
136
|
rpc(fn: string, args: Record<string, unknown>): Answer;
|
|
137
137
|
schema(name: "agent"): {
|
|
138
|
+
rpc(fn: string, args: Record<string, unknown>): Answer;
|
|
138
139
|
from(table: "definition_version" | "definition"): {
|
|
139
140
|
select(columns: string): {
|
|
140
141
|
eq(column: string, value: string): {
|
package/dist/versions/index.js
CHANGED
|
@@ -201,7 +201,7 @@ async function readAgentCurrentVersion(client, agentId) {
|
|
|
201
201
|
return typeof v === "number" && Number.isInteger(v) ? v : null;
|
|
202
202
|
}
|
|
203
203
|
async function declareContractBreak(client, query) {
|
|
204
|
-
const { error } = await client.rpc("agx_declare_contract_break", {
|
|
204
|
+
const { error } = await client.schema("agent").rpc("agx_declare_contract_break", {
|
|
205
205
|
p_agent_id: query.agentId,
|
|
206
206
|
p_version_number: query.version,
|
|
207
207
|
p_kind: query.kind ?? void 0
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-matrx/agents",
|
|
3
|
-
"version": "0.59.
|
|
3
|
+
"version": "0.59.239",
|
|
4
4
|
"description": "Portable AI Matrx agent stream protocol, event projection, and safe result-presentation primitives.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -509,8 +509,8 @@
|
|
|
509
509
|
"sideEffects": false,
|
|
510
510
|
"dependencies": {
|
|
511
511
|
"@ai-matrx/alchemy": "latest",
|
|
512
|
-
"@ai-matrx/api": "latest",
|
|
513
512
|
"@ai-matrx/associations": "latest",
|
|
513
|
+
"@ai-matrx/api": "latest",
|
|
514
514
|
"@ai-matrx/content-ir": "latest",
|
|
515
515
|
"@ai-matrx/data": "latest",
|
|
516
516
|
"@ai-matrx/design-system": "latest",
|
|
@@ -561,5 +561,5 @@
|
|
|
561
561
|
"verify:tarball": "node ./scripts/verify-tarball.mjs",
|
|
562
562
|
"typegen:self-test": "node scripts/typegen/drop-guard.self-test.mjs && node scripts/typegen/check-api-types-fresh.mjs --self-test"
|
|
563
563
|
},
|
|
564
|
-
"gitHead": "
|
|
564
|
+
"gitHead": "6acfc6b938bd3174a9d71a2368c8f2f7c5ceb976"
|
|
565
565
|
}
|