@ai-matrx/chat 0.7.8 → 0.7.10
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 +20 -0
- package/dist/agents/components/chat/chat-quick-actions.config.d.ts +0 -8
- package/dist/agents/components/chat/chat-quick-actions.config.js +2 -1
- package/dist/agents/components/messages-display/AgentConversationDisplay.d.ts +1 -2
- package/dist/agents/components/messages-display/AgentConversationDisplay.js +3 -7
- package/dist/agents/components/messages-display/assistant/AgentAssistantMessage.d.ts +1 -3
- package/dist/agents/components/messages-display/assistant/AgentAssistantMessage.js +1 -23
- package/dist/agents/components/messages-display/assistant/AssistantTurnGroup.d.ts +1 -2
- package/dist/agents/components/messages-display/assistant/AssistantTurnGroup.js +2 -4
- package/dist/agents/components/messages-display/assistant/answerless-turn.d.ts +0 -2
- package/dist/agents/components/messages-display/assistant/answerless-turn.js +0 -1
- package/dist/agents/components/shared/AgentConversationColumn.js +0 -1
- package/dist/agents/hooks/useHeadlessAgentJson.js +9 -1
- package/dist/agents/redux/execution-system/thunks/record-run-output-refused.d.ts +14 -0
- package/dist/agents/redux/execution-system/thunks/record-run-output-refused.js +24 -0
- package/dist/cx-chat/components/agent/agents.d.ts +0 -5
- package/dist/cx-chat/components/agent/agents.js +4 -3
- package/dist/cx-chat/components/agent/local-agents.d.ts +0 -6
- package/dist/cx-chat/components/agent/local-agents.js +3 -2
- package/dist/ui/mandates-storage/mandateStorage.d.ts +420 -0
- package/dist/ui/mandates-storage/shortcutStorage.d.ts +105 -0
- package/dist/ui/projectCreateAiDebug.d.ts +0 -5
- package/dist/ui/projectCreateAiDebug.js +2 -1
- package/package.json +28 -18
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @ai-matrx/chat
|
|
2
2
|
|
|
3
|
+
## 0.7.10
|
|
4
|
+
### a refused answer is a failed run (lane M3)
|
|
5
|
+
|
|
6
|
+
- **`useHeadlessAgentJson.run`**: when `coerce` refuses the answer the model gave, the run is recorded as failed
|
|
7
|
+
(`chat.user_request` status `failed`, `error` = the reason, `metadata.output_refused`) through the guarded
|
|
8
|
+
`mergeJsonColumn` write (`recordRunOutputRefused`); a write that does not land is a `console.error`. Before, the run
|
|
9
|
+
stayed `completed` with `error` null forever. The error is re-thrown unchanged for the surface to say plainly.
|
|
10
|
+
- **Consumer action:** none.
|
|
11
|
+
|
|
12
|
+
## 0.7.9
|
|
13
|
+
|
|
14
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
15
|
+
`git diff npm/chat/v0.7.8..npm/chat/v0.7.9 -- apps/shared/chat`).
|
|
16
|
+
No source changes intended and no consumer action required.
|
|
17
|
+
|
|
3
18
|
## 0.7.8
|
|
4
19
|
|
|
5
20
|
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
@@ -9,6 +24,11 @@ No source changes intended and no consumer action required.
|
|
|
9
24
|
## 0.7.7
|
|
10
25
|
### Unreleased
|
|
11
26
|
|
|
27
|
+
- **No first-load layout shift from assistant messages** (spend register item 32): `AgentAssistantMessage` no longer swaps a fixed-height
|
|
28
|
+
skeleton for the markdown after 140 ms (measured CLS 0.48 on the run page). Persisted answers render in place on first paint.
|
|
29
|
+
`deferColdMarkdown` is removed from `AgentAssistantMessage`, `AssistantTurnGroup` and `AgentConversationDisplay` (the column keeps its
|
|
30
|
+
own history staging). **Consumer action:** none.
|
|
31
|
+
|
|
12
32
|
- **`continueAgentJson`** (`agents/redux/execution-system/thunks/continue-agent-json`): the NEXT turn of a
|
|
13
33
|
conversation whose first turn ran headlessly, waited on like the first (`adoptHeadlessAgentJson`). A turn is
|
|
14
34
|
the person's words (`userInput`) or a turn the HOST writes (`hostTurn` — sent as `host_turn`, never
|
|
@@ -16,12 +16,4 @@
|
|
|
16
16
|
* `/mandates`), never a code change.
|
|
17
17
|
*/
|
|
18
18
|
export declare const DEFAULT_NEW_CHAT_MANDATE_KEY: "chat.default_new_chat";
|
|
19
|
-
/**
|
|
20
|
-
* SEED MIRROR of the mandate's system default — the id the mandate row was seeded
|
|
21
|
-
* with, kept ONLY for static module-scope data that cannot resolve a mandate
|
|
22
|
-
* (the ProTextarea "help" placeholder default). Everything on a runtime path
|
|
23
|
-
* resolves `DEFAULT_NEW_CHAT_MANDATE_KEY` instead; adding a new read of this
|
|
24
|
-
* constant is a defect (see features/mandates/FEATURE.md — the manifest
|
|
25
|
-
* seed-mirror ruling).
|
|
26
|
-
*/
|
|
27
19
|
export declare const DEFAULT_NEW_CHAT_AGENT_ID = "6b6b4e45-4699-4860-8dea-d8a60e07d69a";
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { MANDATE_KEYS } from "@ai-matrx/agents/mandates";
|
|
2
2
|
const DEFAULT_NEW_CHAT_MANDATE_KEY = MANDATE_KEYS.chat__default_new_chat;
|
|
3
|
-
const
|
|
3
|
+
const DEFAULT_NEW_CHAT_SEED_AGENT_ID = "6b6b4e45-4699-4860-8dea-d8a60e07d69a";
|
|
4
|
+
const DEFAULT_NEW_CHAT_AGENT_ID = DEFAULT_NEW_CHAT_SEED_AGENT_ID;
|
|
4
5
|
export {
|
|
5
6
|
DEFAULT_NEW_CHAT_AGENT_ID,
|
|
6
7
|
DEFAULT_NEW_CHAT_MANDATE_KEY
|
|
@@ -8,9 +8,8 @@ interface AgentConversationDisplayProps {
|
|
|
8
8
|
*/
|
|
9
9
|
surfaceKey?: string;
|
|
10
10
|
compact?: boolean;
|
|
11
|
-
deferColdMarkdown?: boolean;
|
|
12
11
|
fallbackVisibleGroupLimit?: number | null;
|
|
13
12
|
bottomPinned?: boolean;
|
|
14
13
|
}
|
|
15
|
-
export declare function AgentConversationDisplay({ conversationId, surfaceKey, compact,
|
|
14
|
+
export declare function AgentConversationDisplay({ conversationId, surfaceKey, compact, fallbackVisibleGroupLimit, bottomPinned, }: AgentConversationDisplayProps): import("react").JSX.Element;
|
|
16
15
|
export {};
|
|
@@ -53,7 +53,6 @@ function AgentConversationDisplay({
|
|
|
53
53
|
conversationId,
|
|
54
54
|
surfaceKey,
|
|
55
55
|
compact = false,
|
|
56
|
-
deferColdMarkdown = false,
|
|
57
56
|
fallbackVisibleGroupLimit = null,
|
|
58
57
|
bottomPinned = false
|
|
59
58
|
}) {
|
|
@@ -262,8 +261,7 @@ function AgentConversationDisplay({
|
|
|
262
261
|
isStreamActive: false,
|
|
263
262
|
surfaceKey,
|
|
264
263
|
compact: true,
|
|
265
|
-
hideActionBar: true
|
|
266
|
-
deferColdMarkdown
|
|
264
|
+
hideActionBar: true
|
|
267
265
|
},
|
|
268
266
|
member.messageId
|
|
269
267
|
)
|
|
@@ -307,8 +305,7 @@ function AgentConversationDisplay({
|
|
|
307
305
|
isStreamActive: group.isStreamActive,
|
|
308
306
|
surfaceKey,
|
|
309
307
|
compact,
|
|
310
|
-
canRetry: group.canRetry
|
|
311
|
-
deferColdMarkdown
|
|
308
|
+
canRetry: group.canRetry
|
|
312
309
|
}
|
|
313
310
|
)
|
|
314
311
|
},
|
|
@@ -327,8 +324,7 @@ function AgentConversationDisplay({
|
|
|
327
324
|
conversationId,
|
|
328
325
|
surfaceKey,
|
|
329
326
|
compact,
|
|
330
|
-
members: group.members
|
|
331
|
-
deferColdMarkdown
|
|
327
|
+
members: group.members
|
|
332
328
|
}
|
|
333
329
|
)
|
|
334
330
|
},
|
|
@@ -33,8 +33,6 @@ export interface AgentAssistantMessageProps {
|
|
|
33
33
|
* button. Retry is non-destructive (the failed turn stays in history).
|
|
34
34
|
*/
|
|
35
35
|
canRetry?: boolean;
|
|
36
|
-
/** Chat cold-load only: show a short text skeleton before DB markdown mounts. */
|
|
37
|
-
deferColdMarkdown?: boolean;
|
|
38
36
|
/**
|
|
39
37
|
* False for the intermediate iterations of a multi-step agentic turn. Only
|
|
40
38
|
* the LAST member of a turn carries the answer, so only it may say "this run
|
|
@@ -43,4 +41,4 @@ export interface AgentAssistantMessageProps {
|
|
|
43
41
|
*/
|
|
44
42
|
isTurnAnswer?: boolean;
|
|
45
43
|
}
|
|
46
|
-
export declare function AgentAssistantMessage({ conversationId, requestId, messageId, isStreamActive, recordMessageIds, streamSlotStart, streamSlotEnd, surfaceKey, hideActionBar, canRetry,
|
|
44
|
+
export declare function AgentAssistantMessage({ conversationId, requestId, messageId, isStreamActive, recordMessageIds, streamSlotStart, streamSlotEnd, surfaceKey, hideActionBar, canRetry, isTurnAnswer, }: AgentAssistantMessageProps): import("react").JSX.Element;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import {
|
|
4
|
-
startTransition,
|
|
5
4
|
useCallback,
|
|
6
5
|
useMemo,
|
|
7
6
|
useState,
|
|
@@ -117,7 +116,6 @@ function AgentAssistantMessage({
|
|
|
117
116
|
surfaceKey,
|
|
118
117
|
hideActionBar = false,
|
|
119
118
|
canRetry = false,
|
|
120
|
-
deferColdMarkdown = false,
|
|
121
119
|
isTurnAnswer = true
|
|
122
120
|
}) {
|
|
123
121
|
useDebugContext("AgentAssistantMessage");
|
|
@@ -137,17 +135,7 @@ function AgentAssistantMessage({
|
|
|
137
135
|
}, [surfaceKey, conversationId, messageId, requestId, isStreamActive]);
|
|
138
136
|
const dispatch = useAppDispatch();
|
|
139
137
|
const [retrying, setRetrying] = useState(false);
|
|
140
|
-
const shouldDeferColdMarkdown = deferColdMarkdown && !requestId && !!messageId && !isStreamActive;
|
|
141
|
-
const [coldMarkdownSettledMessageId, setColdMarkdownSettledMessageId] = useState(null);
|
|
142
|
-
const coldMarkdownReady = !shouldDeferColdMarkdown || coldMarkdownSettledMessageId === messageId;
|
|
143
138
|
const [providerRetryBusyAction, setProviderRetryBusyAction] = useState(null);
|
|
144
|
-
useEffect(() => {
|
|
145
|
-
if (!shouldDeferColdMarkdown || !messageId) return void 0;
|
|
146
|
-
const timer = window.setTimeout(() => {
|
|
147
|
-
startTransition(() => setColdMarkdownSettledMessageId(messageId));
|
|
148
|
-
}, 140);
|
|
149
|
-
return () => window.clearTimeout(timer);
|
|
150
|
-
}, [shouldDeferColdMarkdown, messageId]);
|
|
151
139
|
const { captureRef, isCapturing, captureAsPDF } = useDomCapturePrint();
|
|
152
140
|
const handleFullPrint = useCallback(() => {
|
|
153
141
|
captureAsPDF({
|
|
@@ -308,7 +296,6 @@ function AgentAssistantMessage({
|
|
|
308
296
|
rowParts: extractContentBlocks(record)
|
|
309
297
|
}),
|
|
310
298
|
failed,
|
|
311
|
-
coldMarkdownReady,
|
|
312
299
|
messageId,
|
|
313
300
|
renderedText,
|
|
314
301
|
attachmentCount: attachmentParts.length,
|
|
@@ -394,7 +381,7 @@ function AgentAssistantMessage({
|
|
|
394
381
|
"data-message-id": messageId ?? void 0,
|
|
395
382
|
className: "group/assistant-msg rounded transition-shadow",
|
|
396
383
|
children: [
|
|
397
|
-
|
|
384
|
+
bufferStream && isStreamActive && !failed ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
398
385
|
showProviderRetry && providerRetry && /* @__PURE__ */ jsx(
|
|
399
386
|
ProviderRetryCard,
|
|
400
387
|
{
|
|
@@ -538,15 +525,6 @@ function readErrorDoor(details) {
|
|
|
538
525
|
const { label, href } = door;
|
|
539
526
|
return typeof label === "string" && typeof href === "string" && href.startsWith("/") ? { label, href } : null;
|
|
540
527
|
}
|
|
541
|
-
function AssistantMarkdownSkeleton() {
|
|
542
|
-
return /* @__PURE__ */ jsxs("div", { className: "space-y-2 py-1", "aria-hidden": true, children: [
|
|
543
|
-
/* @__PURE__ */ jsx("div", { className: "h-3.5 w-[96%] animate-pulse rounded bg-muted/55" }),
|
|
544
|
-
/* @__PURE__ */ jsx("div", { className: "h-3.5 w-[88%] animate-pulse rounded bg-muted/50" }),
|
|
545
|
-
/* @__PURE__ */ jsx("div", { className: "h-3.5 w-[72%] animate-pulse rounded bg-muted/45" }),
|
|
546
|
-
/* @__PURE__ */ jsx("div", { className: "h-3.5 w-[94%] animate-pulse rounded bg-muted/40" }),
|
|
547
|
-
/* @__PURE__ */ jsx("div", { className: "h-3.5 w-[42%] animate-pulse rounded bg-muted/35" })
|
|
548
|
-
] });
|
|
549
|
-
}
|
|
550
528
|
export {
|
|
551
529
|
AgentAssistantMessage
|
|
552
530
|
};
|
|
@@ -16,7 +16,6 @@ interface AssistantTurnGroupProps {
|
|
|
16
16
|
compact?: boolean;
|
|
17
17
|
/** Every assistant member of this logical turn, in transcript order. */
|
|
18
18
|
members: AssistantTurnGroupMember[];
|
|
19
|
-
deferColdMarkdown?: boolean;
|
|
20
19
|
}
|
|
21
|
-
export declare function AssistantTurnGroup({ conversationId, surfaceKey, compact, members: rawMembers,
|
|
20
|
+
export declare function AssistantTurnGroup({ conversationId, surfaceKey, compact, members: rawMembers, }: AssistantTurnGroupProps): import("react").JSX.Element;
|
|
22
21
|
export {};
|
|
@@ -26,8 +26,7 @@ function AssistantTurnGroup({
|
|
|
26
26
|
conversationId,
|
|
27
27
|
surfaceKey,
|
|
28
28
|
compact = false,
|
|
29
|
-
members: rawMembers
|
|
30
|
-
deferColdMarkdown = false
|
|
29
|
+
members: rawMembers
|
|
31
30
|
}) {
|
|
32
31
|
const { captureRef, isCapturing, captureAsPDF } = useDomCapturePrint();
|
|
33
32
|
const persistedView = useAppSelector(
|
|
@@ -96,8 +95,7 @@ function AssistantTurnGroup({
|
|
|
96
95
|
surfaceKey,
|
|
97
96
|
compact,
|
|
98
97
|
hideActionBar: true,
|
|
99
|
-
isTurnAnswer: idx === members.length - 1 && m.streamSlotEnd === void 0
|
|
100
|
-
deferColdMarkdown: deferColdMarkdown && idx < members.length - 1
|
|
98
|
+
isTurnAnswer: idx === members.length - 1 && m.streamSlotEnd === void 0
|
|
101
99
|
}
|
|
102
100
|
) }, m.key))
|
|
103
101
|
}
|
|
@@ -113,8 +113,6 @@ export interface AnswerlessTurnInput {
|
|
|
113
113
|
isStreamActive: boolean;
|
|
114
114
|
/** True when the turn failed — the error path owns that case. */
|
|
115
115
|
failed: boolean;
|
|
116
|
-
/** False while a cold-load skeleton stands in for the persisted markdown. */
|
|
117
|
-
coldMarkdownReady: boolean;
|
|
118
116
|
/** `cx_message.id`; null/undefined until the row settles. */
|
|
119
117
|
messageId: string | null | undefined;
|
|
120
118
|
/** The text this turn renders (citation markers included). */
|
|
@@ -31,7 +31,6 @@ function isAnswerlessTurn(input) {
|
|
|
31
31
|
if (input.isStreamActive) return false;
|
|
32
32
|
if (input.awaitingPerson) return false;
|
|
33
33
|
if (input.failed) return false;
|
|
34
|
-
if (!input.coldMarkdownReady) return false;
|
|
35
34
|
if (!input.messageId) return false;
|
|
36
35
|
if (input.attachmentCount > 0) return false;
|
|
37
36
|
if (input.mediaBlockCount > 0) return false;
|
|
@@ -299,7 +299,6 @@ function AgentConversationColumn({
|
|
|
299
299
|
{
|
|
300
300
|
conversationId: displayId,
|
|
301
301
|
surfaceKey,
|
|
302
|
-
deferColdMarkdown,
|
|
303
302
|
bottomPinned: shouldPinColdScroll,
|
|
304
303
|
fallbackVisibleGroupLimit: deferColdMarkdown ? chatVisibleGroupLimit ?? CHAT_INITIAL_VISIBLE_GROUPS : null
|
|
305
304
|
}
|
|
@@ -3,6 +3,7 @@ import { useCallback, useState } from "react";
|
|
|
3
3
|
import { useAppDispatch, useAppSelector, useAppStore } from "../../store/hooks.js";
|
|
4
4
|
import { selectConversationRequestIds } from "../redux/execution-system/active-requests/active-requests.selectors.js";
|
|
5
5
|
import { useRetainRequestForViewer } from "../redux/execution-system/active-requests/useRetainRequestForViewer.js";
|
|
6
|
+
import { recordRunOutputRefused } from "../redux/execution-system/thunks/record-run-output-refused.js";
|
|
6
7
|
import {
|
|
7
8
|
runHeadlessAgentJson
|
|
8
9
|
} from "../redux/execution-system/thunks/run-headless-agent-json.js";
|
|
@@ -49,7 +50,14 @@ function useHeadlessAgentJson() {
|
|
|
49
50
|
...result.conversationId ? { conversationId: result.conversationId } : {}
|
|
50
51
|
});
|
|
51
52
|
}
|
|
52
|
-
|
|
53
|
+
if (!opts.coerce) return result.data;
|
|
54
|
+
try {
|
|
55
|
+
return opts.coerce(result.data, result);
|
|
56
|
+
} catch (refused) {
|
|
57
|
+
const why = refused instanceof Error ? refused.message : String(refused);
|
|
58
|
+
if (result.requestId) void recordRunOutputRefused(result.requestId, why);
|
|
59
|
+
throw refused;
|
|
60
|
+
}
|
|
53
61
|
} catch (e) {
|
|
54
62
|
const message = e instanceof Error ? e.message : "Failed to run the agent";
|
|
55
63
|
setError(message);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* recordRunOutputRefused — a run whose answer the BROWSER refused is a failed run.
|
|
3
|
+
*
|
|
4
|
+
* The server marks a run `completed` the moment the model stops; whether the answer was usable is only
|
|
5
|
+
* known where it is read (the feature's `coerce`, its own check). Before this, such a run stayed
|
|
6
|
+
* `completed` with `error` null forever (Make's describe box, 2026-10-09: "personal" is not one of
|
|
7
|
+
* organization, individual). The refusal is written onto the run's own `chat.user_request` row —
|
|
8
|
+
* status `failed`, `error` = the reason, and `metadata.output_refused` — through the guarded
|
|
9
|
+
* read-modify-write (`mergeJsonColumn`, a version guard, never a blind update).
|
|
10
|
+
*
|
|
11
|
+
* Never silent: a write that does not land is a `console.error` naming the run.
|
|
12
|
+
*/
|
|
13
|
+
export declare const OUTPUT_REFUSED_METADATA_KEY = "output_refused";
|
|
14
|
+
export declare function recordRunOutputRefused(requestId: string, reason: string): Promise<boolean>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { mergeJsonColumn } from "@ai-matrx/data/db";
|
|
2
|
+
import { supabase } from "../../../../host/db.js";
|
|
3
|
+
import { hasBrowserSession } from "../../../../host/identity.js";
|
|
4
|
+
const OUTPUT_REFUSED_METADATA_KEY = "output_refused";
|
|
5
|
+
async function recordRunOutputRefused(requestId, reason) {
|
|
6
|
+
if (!requestId || !await hasBrowserSession()) return false;
|
|
7
|
+
const result = await mergeJsonColumn({
|
|
8
|
+
fetchCurrent: () => supabase.schema("chat").from("user_request").select("id, version, metadata").eq("id", requestId).maybeSingle(),
|
|
9
|
+
readColumn: (row) => row.metadata,
|
|
10
|
+
merge: (current) => ({ ...current, [OUTPUT_REFUSED_METADATA_KEY]: { reason, at: (/* @__PURE__ */ new Date()).toISOString() } }),
|
|
11
|
+
applyUpdate: ({ value, expectedVersion, nextVersion }) => supabase.schema("chat").from("user_request").update({ metadata: value, version: nextVersion, status: "failed", error: reason.slice(0, 500) }).eq("id", requestId).eq("version", expectedVersion).select("id, version, metadata").maybeSingle()
|
|
12
|
+
});
|
|
13
|
+
if (result.status !== "saved") {
|
|
14
|
+
console.error(
|
|
15
|
+
`[run-output-refused] Could not record the refusal on run ${requestId}: ` + (result.status === "error" ? String(result.error) : `write ${result.status}`) + `. The run still reads as completed. Reason: ${reason}`
|
|
16
|
+
);
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
export {
|
|
22
|
+
OUTPUT_REFUSED_METADATA_KEY,
|
|
23
|
+
recordRunOutputRefused
|
|
24
|
+
};
|
|
@@ -5,11 +5,6 @@ import type { WelcomeAgent } from "../ChatWelcomeServer.js";
|
|
|
5
5
|
* demo root page resolves it.
|
|
6
6
|
*/
|
|
7
7
|
export declare const CX_DEFAULT_MANDATE_KEY: "chat.cx_default";
|
|
8
|
-
/**
|
|
9
|
-
* SEED MIRROR of the `chat.cx_default` mandate's system default — kept only
|
|
10
|
-
* as the loud-fallback display seed (`getDefaultAgent`) when resolution fails
|
|
11
|
-
* on this dev surface. Nothing launches from it.
|
|
12
|
-
*/
|
|
13
8
|
export declare const DEFAULT_AGENT_ID = "ce7c5e71-cbdc-4ed1-8dd9-a7eac930b6b8";
|
|
14
9
|
export declare const MATRX_CHAT_AGENT: WelcomeAgent;
|
|
15
10
|
/**
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { MANDATE_KEYS } from "@ai-matrx/agents/mandates";
|
|
2
2
|
const CX_DEFAULT_MANDATE_KEY = MANDATE_KEYS.chat__cx_default;
|
|
3
|
-
const
|
|
3
|
+
const MATRX_CHAT_SEED_AGENT_ID = "ce7c5e71-cbdc-4ed1-8dd9-a7eac930b6b8";
|
|
4
|
+
const DEFAULT_AGENT_ID = MATRX_CHAT_SEED_AGENT_ID;
|
|
4
5
|
const MATRX_CHAT_AGENT = {
|
|
5
|
-
promptId:
|
|
6
|
+
promptId: MATRX_CHAT_SEED_AGENT_ID,
|
|
6
7
|
name: "Matrx Chat",
|
|
7
8
|
description: "Fully customizable agent.",
|
|
8
9
|
variableDefaults: [
|
|
@@ -86,7 +87,7 @@ const MATRX_CHAT_AGENT = {
|
|
|
86
87
|
]
|
|
87
88
|
};
|
|
88
89
|
const BUILTIN_AGENTS = {
|
|
89
|
-
|
|
90
|
+
[MATRX_CHAT_SEED_AGENT_ID]: MATRX_CHAT_AGENT,
|
|
90
91
|
"3ca61863-43cf-49cd-8da5-7e0a4b192867": {
|
|
91
92
|
promptId: "3ca61863-43cf-49cd-8da5-7e0a4b192867",
|
|
92
93
|
name: "Custom Chat",
|
|
@@ -9,12 +9,6 @@ export interface AgentOption {
|
|
|
9
9
|
promptId: string;
|
|
10
10
|
variableDefaults?: VariableDefinition[];
|
|
11
11
|
}
|
|
12
|
-
/**
|
|
13
|
-
* SEED MIRROR of the `chat.default_new_chat` mandate's system default. Runtime
|
|
14
|
-
* paths resolve the mandate (see `features/mandates`); this constant remains
|
|
15
|
-
* only as the demo conversation page's loud-fallback and for the (currently
|
|
16
|
-
* unconsumed) `useInstanceBootstrap` URL-parse fallback.
|
|
17
|
-
*/
|
|
18
12
|
export declare const DEFAULT_AGENT_ID = "6b6b4e45-4699-4860-8dea-d8a60e07d69a";
|
|
19
13
|
export declare const DEFAULT_AGENTS: AgentOption[];
|
|
20
14
|
/** The response-mode strip under the composer, in render order. */
|
|
@@ -8,14 +8,15 @@ import {
|
|
|
8
8
|
Lightbulb
|
|
9
9
|
} from "lucide-react";
|
|
10
10
|
import { MANDATE_KEYS } from "@ai-matrx/agents/mandates";
|
|
11
|
-
const
|
|
11
|
+
const GENERAL_CHAT_SEED_AGENT_ID = "6b6b4e45-4699-4860-8dea-d8a60e07d69a";
|
|
12
|
+
const DEFAULT_AGENT_ID = GENERAL_CHAT_SEED_AGENT_ID;
|
|
12
13
|
const DEFAULT_AGENTS = [
|
|
13
14
|
{
|
|
14
15
|
id: "general-chat",
|
|
15
16
|
name: "General Chat",
|
|
16
17
|
description: "Helpful general assistant.",
|
|
17
18
|
icon: React.createElement(MessageCircle, { size: 18 }),
|
|
18
|
-
promptId:
|
|
19
|
+
promptId: GENERAL_CHAT_SEED_AGENT_ID,
|
|
19
20
|
variableDefaults: []
|
|
20
21
|
},
|
|
21
22
|
{
|
|
@@ -935,6 +935,87 @@ declare const definitionTable: (supabase: Client) => import("@supabase/supabase-
|
|
|
935
935
|
};
|
|
936
936
|
Relationships: [];
|
|
937
937
|
};
|
|
938
|
+
readiness_verdict: {
|
|
939
|
+
Row: {
|
|
940
|
+
checked_at: string;
|
|
941
|
+
created_at: string;
|
|
942
|
+
created_by: string | null;
|
|
943
|
+
deleted_at: string | null;
|
|
944
|
+
door: string | null;
|
|
945
|
+
id: string;
|
|
946
|
+
mandate_key: string;
|
|
947
|
+
metadata: Json;
|
|
948
|
+
missing: Json;
|
|
949
|
+
organization_id: string;
|
|
950
|
+
published_to_web: boolean;
|
|
951
|
+
published_to_web_at: string | null;
|
|
952
|
+
published_to_web_by: string | null;
|
|
953
|
+
ready: boolean;
|
|
954
|
+
refused_count: number;
|
|
955
|
+
required: Json;
|
|
956
|
+
scope: Json;
|
|
957
|
+
scope_key: string;
|
|
958
|
+
shown_to: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
959
|
+
summary: string | null;
|
|
960
|
+
updated_at: string;
|
|
961
|
+
updated_by: string | null;
|
|
962
|
+
version: number;
|
|
963
|
+
visibility: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
964
|
+
};
|
|
965
|
+
Insert: {
|
|
966
|
+
checked_at?: string;
|
|
967
|
+
created_at?: string;
|
|
968
|
+
created_by?: string | null;
|
|
969
|
+
deleted_at?: string | null;
|
|
970
|
+
door?: string | null;
|
|
971
|
+
id?: string;
|
|
972
|
+
mandate_key: string;
|
|
973
|
+
metadata?: Json;
|
|
974
|
+
missing?: Json;
|
|
975
|
+
organization_id: string;
|
|
976
|
+
published_to_web?: boolean;
|
|
977
|
+
published_to_web_at?: string | null;
|
|
978
|
+
published_to_web_by?: string | null;
|
|
979
|
+
ready: boolean;
|
|
980
|
+
refused_count?: number;
|
|
981
|
+
required?: Json;
|
|
982
|
+
scope?: Json;
|
|
983
|
+
scope_key: string;
|
|
984
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
985
|
+
summary?: string | null;
|
|
986
|
+
updated_at?: string;
|
|
987
|
+
updated_by?: string | null;
|
|
988
|
+
version?: number;
|
|
989
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
990
|
+
};
|
|
991
|
+
Update: {
|
|
992
|
+
checked_at?: string;
|
|
993
|
+
created_at?: string;
|
|
994
|
+
created_by?: string | null;
|
|
995
|
+
deleted_at?: string | null;
|
|
996
|
+
door?: string | null;
|
|
997
|
+
id?: string;
|
|
998
|
+
mandate_key?: string;
|
|
999
|
+
metadata?: Json;
|
|
1000
|
+
missing?: Json;
|
|
1001
|
+
organization_id?: string;
|
|
1002
|
+
published_to_web?: boolean;
|
|
1003
|
+
published_to_web_at?: string | null;
|
|
1004
|
+
published_to_web_by?: string | null;
|
|
1005
|
+
ready?: boolean;
|
|
1006
|
+
refused_count?: number;
|
|
1007
|
+
required?: Json;
|
|
1008
|
+
scope?: Json;
|
|
1009
|
+
scope_key?: string;
|
|
1010
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
1011
|
+
summary?: string | null;
|
|
1012
|
+
updated_at?: string;
|
|
1013
|
+
updated_by?: string | null;
|
|
1014
|
+
version?: number;
|
|
1015
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
1016
|
+
};
|
|
1017
|
+
Relationships: [];
|
|
1018
|
+
};
|
|
938
1019
|
reference: {
|
|
939
1020
|
Row: {
|
|
940
1021
|
caller_identity_hash: string | null;
|
|
@@ -1825,6 +1906,12 @@ declare const definitionTable: (supabase: Client) => import("@supabase/supabase-
|
|
|
1825
1906
|
version_live: boolean;
|
|
1826
1907
|
}[];
|
|
1827
1908
|
};
|
|
1909
|
+
admin_run_counts: {
|
|
1910
|
+
Args: {
|
|
1911
|
+
p_since: string;
|
|
1912
|
+
};
|
|
1913
|
+
Returns: Json;
|
|
1914
|
+
};
|
|
1828
1915
|
binding_holder_runnable: {
|
|
1829
1916
|
Args: {
|
|
1830
1917
|
p_holder_id: string;
|
|
@@ -1904,6 +1991,24 @@ declare const definitionTable: (supabase: Client) => import("@supabase/supabase-
|
|
|
1904
1991
|
};
|
|
1905
1992
|
Returns: string[];
|
|
1906
1993
|
};
|
|
1994
|
+
record_readiness_verdict: {
|
|
1995
|
+
Args: {
|
|
1996
|
+
p_door: string;
|
|
1997
|
+
p_mandate_key: string;
|
|
1998
|
+
p_missing: Json;
|
|
1999
|
+
p_organization_id: string;
|
|
2000
|
+
p_ready: boolean;
|
|
2001
|
+
p_required: Json;
|
|
2002
|
+
p_scope: Json;
|
|
2003
|
+
p_scope_key: string;
|
|
2004
|
+
p_summary: string;
|
|
2005
|
+
};
|
|
2006
|
+
Returns: {
|
|
2007
|
+
id: string;
|
|
2008
|
+
ready: boolean;
|
|
2009
|
+
refused_count: number;
|
|
2010
|
+
}[];
|
|
2011
|
+
};
|
|
1907
2012
|
reference_head: {
|
|
1908
2013
|
Args: never;
|
|
1909
2014
|
Returns: {
|
|
@@ -3097,6 +3202,87 @@ declare const provisionTable: (supabase: Client) => import("@supabase/supabase-j
|
|
|
3097
3202
|
};
|
|
3098
3203
|
Relationships: [];
|
|
3099
3204
|
};
|
|
3205
|
+
readiness_verdict: {
|
|
3206
|
+
Row: {
|
|
3207
|
+
checked_at: string;
|
|
3208
|
+
created_at: string;
|
|
3209
|
+
created_by: string | null;
|
|
3210
|
+
deleted_at: string | null;
|
|
3211
|
+
door: string | null;
|
|
3212
|
+
id: string;
|
|
3213
|
+
mandate_key: string;
|
|
3214
|
+
metadata: Json;
|
|
3215
|
+
missing: Json;
|
|
3216
|
+
organization_id: string;
|
|
3217
|
+
published_to_web: boolean;
|
|
3218
|
+
published_to_web_at: string | null;
|
|
3219
|
+
published_to_web_by: string | null;
|
|
3220
|
+
ready: boolean;
|
|
3221
|
+
refused_count: number;
|
|
3222
|
+
required: Json;
|
|
3223
|
+
scope: Json;
|
|
3224
|
+
scope_key: string;
|
|
3225
|
+
shown_to: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
3226
|
+
summary: string | null;
|
|
3227
|
+
updated_at: string;
|
|
3228
|
+
updated_by: string | null;
|
|
3229
|
+
version: number;
|
|
3230
|
+
visibility: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
3231
|
+
};
|
|
3232
|
+
Insert: {
|
|
3233
|
+
checked_at?: string;
|
|
3234
|
+
created_at?: string;
|
|
3235
|
+
created_by?: string | null;
|
|
3236
|
+
deleted_at?: string | null;
|
|
3237
|
+
door?: string | null;
|
|
3238
|
+
id?: string;
|
|
3239
|
+
mandate_key: string;
|
|
3240
|
+
metadata?: Json;
|
|
3241
|
+
missing?: Json;
|
|
3242
|
+
organization_id: string;
|
|
3243
|
+
published_to_web?: boolean;
|
|
3244
|
+
published_to_web_at?: string | null;
|
|
3245
|
+
published_to_web_by?: string | null;
|
|
3246
|
+
ready: boolean;
|
|
3247
|
+
refused_count?: number;
|
|
3248
|
+
required?: Json;
|
|
3249
|
+
scope?: Json;
|
|
3250
|
+
scope_key: string;
|
|
3251
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
3252
|
+
summary?: string | null;
|
|
3253
|
+
updated_at?: string;
|
|
3254
|
+
updated_by?: string | null;
|
|
3255
|
+
version?: number;
|
|
3256
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
3257
|
+
};
|
|
3258
|
+
Update: {
|
|
3259
|
+
checked_at?: string;
|
|
3260
|
+
created_at?: string;
|
|
3261
|
+
created_by?: string | null;
|
|
3262
|
+
deleted_at?: string | null;
|
|
3263
|
+
door?: string | null;
|
|
3264
|
+
id?: string;
|
|
3265
|
+
mandate_key?: string;
|
|
3266
|
+
metadata?: Json;
|
|
3267
|
+
missing?: Json;
|
|
3268
|
+
organization_id?: string;
|
|
3269
|
+
published_to_web?: boolean;
|
|
3270
|
+
published_to_web_at?: string | null;
|
|
3271
|
+
published_to_web_by?: string | null;
|
|
3272
|
+
ready?: boolean;
|
|
3273
|
+
refused_count?: number;
|
|
3274
|
+
required?: Json;
|
|
3275
|
+
scope?: Json;
|
|
3276
|
+
scope_key?: string;
|
|
3277
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
3278
|
+
summary?: string | null;
|
|
3279
|
+
updated_at?: string;
|
|
3280
|
+
updated_by?: string | null;
|
|
3281
|
+
version?: number;
|
|
3282
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
3283
|
+
};
|
|
3284
|
+
Relationships: [];
|
|
3285
|
+
};
|
|
3100
3286
|
reference: {
|
|
3101
3287
|
Row: {
|
|
3102
3288
|
caller_identity_hash: string | null;
|
|
@@ -3987,6 +4173,12 @@ declare const provisionTable: (supabase: Client) => import("@supabase/supabase-j
|
|
|
3987
4173
|
version_live: boolean;
|
|
3988
4174
|
}[];
|
|
3989
4175
|
};
|
|
4176
|
+
admin_run_counts: {
|
|
4177
|
+
Args: {
|
|
4178
|
+
p_since: string;
|
|
4179
|
+
};
|
|
4180
|
+
Returns: Json;
|
|
4181
|
+
};
|
|
3990
4182
|
binding_holder_runnable: {
|
|
3991
4183
|
Args: {
|
|
3992
4184
|
p_holder_id: string;
|
|
@@ -4066,6 +4258,24 @@ declare const provisionTable: (supabase: Client) => import("@supabase/supabase-j
|
|
|
4066
4258
|
};
|
|
4067
4259
|
Returns: string[];
|
|
4068
4260
|
};
|
|
4261
|
+
record_readiness_verdict: {
|
|
4262
|
+
Args: {
|
|
4263
|
+
p_door: string;
|
|
4264
|
+
p_mandate_key: string;
|
|
4265
|
+
p_missing: Json;
|
|
4266
|
+
p_organization_id: string;
|
|
4267
|
+
p_ready: boolean;
|
|
4268
|
+
p_required: Json;
|
|
4269
|
+
p_scope: Json;
|
|
4270
|
+
p_scope_key: string;
|
|
4271
|
+
p_summary: string;
|
|
4272
|
+
};
|
|
4273
|
+
Returns: {
|
|
4274
|
+
id: string;
|
|
4275
|
+
ready: boolean;
|
|
4276
|
+
refused_count: number;
|
|
4277
|
+
}[];
|
|
4278
|
+
};
|
|
4069
4279
|
reference_head: {
|
|
4070
4280
|
Args: never;
|
|
4071
4281
|
Returns: {
|
|
@@ -5154,6 +5364,87 @@ declare const bindingTable: (supabase: Client) => import("@supabase/supabase-js"
|
|
|
5154
5364
|
};
|
|
5155
5365
|
Relationships: [];
|
|
5156
5366
|
};
|
|
5367
|
+
readiness_verdict: {
|
|
5368
|
+
Row: {
|
|
5369
|
+
checked_at: string;
|
|
5370
|
+
created_at: string;
|
|
5371
|
+
created_by: string | null;
|
|
5372
|
+
deleted_at: string | null;
|
|
5373
|
+
door: string | null;
|
|
5374
|
+
id: string;
|
|
5375
|
+
mandate_key: string;
|
|
5376
|
+
metadata: Json;
|
|
5377
|
+
missing: Json;
|
|
5378
|
+
organization_id: string;
|
|
5379
|
+
published_to_web: boolean;
|
|
5380
|
+
published_to_web_at: string | null;
|
|
5381
|
+
published_to_web_by: string | null;
|
|
5382
|
+
ready: boolean;
|
|
5383
|
+
refused_count: number;
|
|
5384
|
+
required: Json;
|
|
5385
|
+
scope: Json;
|
|
5386
|
+
scope_key: string;
|
|
5387
|
+
shown_to: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
5388
|
+
summary: string | null;
|
|
5389
|
+
updated_at: string;
|
|
5390
|
+
updated_by: string | null;
|
|
5391
|
+
version: number;
|
|
5392
|
+
visibility: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
5393
|
+
};
|
|
5394
|
+
Insert: {
|
|
5395
|
+
checked_at?: string;
|
|
5396
|
+
created_at?: string;
|
|
5397
|
+
created_by?: string | null;
|
|
5398
|
+
deleted_at?: string | null;
|
|
5399
|
+
door?: string | null;
|
|
5400
|
+
id?: string;
|
|
5401
|
+
mandate_key: string;
|
|
5402
|
+
metadata?: Json;
|
|
5403
|
+
missing?: Json;
|
|
5404
|
+
organization_id: string;
|
|
5405
|
+
published_to_web?: boolean;
|
|
5406
|
+
published_to_web_at?: string | null;
|
|
5407
|
+
published_to_web_by?: string | null;
|
|
5408
|
+
ready: boolean;
|
|
5409
|
+
refused_count?: number;
|
|
5410
|
+
required?: Json;
|
|
5411
|
+
scope?: Json;
|
|
5412
|
+
scope_key: string;
|
|
5413
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
5414
|
+
summary?: string | null;
|
|
5415
|
+
updated_at?: string;
|
|
5416
|
+
updated_by?: string | null;
|
|
5417
|
+
version?: number;
|
|
5418
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
5419
|
+
};
|
|
5420
|
+
Update: {
|
|
5421
|
+
checked_at?: string;
|
|
5422
|
+
created_at?: string;
|
|
5423
|
+
created_by?: string | null;
|
|
5424
|
+
deleted_at?: string | null;
|
|
5425
|
+
door?: string | null;
|
|
5426
|
+
id?: string;
|
|
5427
|
+
mandate_key?: string;
|
|
5428
|
+
metadata?: Json;
|
|
5429
|
+
missing?: Json;
|
|
5430
|
+
organization_id?: string;
|
|
5431
|
+
published_to_web?: boolean;
|
|
5432
|
+
published_to_web_at?: string | null;
|
|
5433
|
+
published_to_web_by?: string | null;
|
|
5434
|
+
ready?: boolean;
|
|
5435
|
+
refused_count?: number;
|
|
5436
|
+
required?: Json;
|
|
5437
|
+
scope?: Json;
|
|
5438
|
+
scope_key?: string;
|
|
5439
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
5440
|
+
summary?: string | null;
|
|
5441
|
+
updated_at?: string;
|
|
5442
|
+
updated_by?: string | null;
|
|
5443
|
+
version?: number;
|
|
5444
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
5445
|
+
};
|
|
5446
|
+
Relationships: [];
|
|
5447
|
+
};
|
|
5157
5448
|
reference: {
|
|
5158
5449
|
Row: {
|
|
5159
5450
|
caller_identity_hash: string | null;
|
|
@@ -6044,6 +6335,12 @@ declare const bindingTable: (supabase: Client) => import("@supabase/supabase-js"
|
|
|
6044
6335
|
version_live: boolean;
|
|
6045
6336
|
}[];
|
|
6046
6337
|
};
|
|
6338
|
+
admin_run_counts: {
|
|
6339
|
+
Args: {
|
|
6340
|
+
p_since: string;
|
|
6341
|
+
};
|
|
6342
|
+
Returns: Json;
|
|
6343
|
+
};
|
|
6047
6344
|
binding_holder_runnable: {
|
|
6048
6345
|
Args: {
|
|
6049
6346
|
p_holder_id: string;
|
|
@@ -6123,6 +6420,24 @@ declare const bindingTable: (supabase: Client) => import("@supabase/supabase-js"
|
|
|
6123
6420
|
};
|
|
6124
6421
|
Returns: string[];
|
|
6125
6422
|
};
|
|
6423
|
+
record_readiness_verdict: {
|
|
6424
|
+
Args: {
|
|
6425
|
+
p_door: string;
|
|
6426
|
+
p_mandate_key: string;
|
|
6427
|
+
p_missing: Json;
|
|
6428
|
+
p_organization_id: string;
|
|
6429
|
+
p_ready: boolean;
|
|
6430
|
+
p_required: Json;
|
|
6431
|
+
p_scope: Json;
|
|
6432
|
+
p_scope_key: string;
|
|
6433
|
+
p_summary: string;
|
|
6434
|
+
};
|
|
6435
|
+
Returns: {
|
|
6436
|
+
id: string;
|
|
6437
|
+
ready: boolean;
|
|
6438
|
+
refused_count: number;
|
|
6439
|
+
}[];
|
|
6440
|
+
};
|
|
6126
6441
|
reference_head: {
|
|
6127
6442
|
Args: never;
|
|
6128
6443
|
Returns: {
|
|
@@ -7259,6 +7574,87 @@ declare const treatmentTable: (supabase: Client) => import("@supabase/supabase-j
|
|
|
7259
7574
|
};
|
|
7260
7575
|
Relationships: [];
|
|
7261
7576
|
};
|
|
7577
|
+
readiness_verdict: {
|
|
7578
|
+
Row: {
|
|
7579
|
+
checked_at: string;
|
|
7580
|
+
created_at: string;
|
|
7581
|
+
created_by: string | null;
|
|
7582
|
+
deleted_at: string | null;
|
|
7583
|
+
door: string | null;
|
|
7584
|
+
id: string;
|
|
7585
|
+
mandate_key: string;
|
|
7586
|
+
metadata: Json;
|
|
7587
|
+
missing: Json;
|
|
7588
|
+
organization_id: string;
|
|
7589
|
+
published_to_web: boolean;
|
|
7590
|
+
published_to_web_at: string | null;
|
|
7591
|
+
published_to_web_by: string | null;
|
|
7592
|
+
ready: boolean;
|
|
7593
|
+
refused_count: number;
|
|
7594
|
+
required: Json;
|
|
7595
|
+
scope: Json;
|
|
7596
|
+
scope_key: string;
|
|
7597
|
+
shown_to: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
7598
|
+
summary: string | null;
|
|
7599
|
+
updated_at: string;
|
|
7600
|
+
updated_by: string | null;
|
|
7601
|
+
version: number;
|
|
7602
|
+
visibility: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
7603
|
+
};
|
|
7604
|
+
Insert: {
|
|
7605
|
+
checked_at?: string;
|
|
7606
|
+
created_at?: string;
|
|
7607
|
+
created_by?: string | null;
|
|
7608
|
+
deleted_at?: string | null;
|
|
7609
|
+
door?: string | null;
|
|
7610
|
+
id?: string;
|
|
7611
|
+
mandate_key: string;
|
|
7612
|
+
metadata?: Json;
|
|
7613
|
+
missing?: Json;
|
|
7614
|
+
organization_id: string;
|
|
7615
|
+
published_to_web?: boolean;
|
|
7616
|
+
published_to_web_at?: string | null;
|
|
7617
|
+
published_to_web_by?: string | null;
|
|
7618
|
+
ready: boolean;
|
|
7619
|
+
refused_count?: number;
|
|
7620
|
+
required?: Json;
|
|
7621
|
+
scope?: Json;
|
|
7622
|
+
scope_key: string;
|
|
7623
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
7624
|
+
summary?: string | null;
|
|
7625
|
+
updated_at?: string;
|
|
7626
|
+
updated_by?: string | null;
|
|
7627
|
+
version?: number;
|
|
7628
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
7629
|
+
};
|
|
7630
|
+
Update: {
|
|
7631
|
+
checked_at?: string;
|
|
7632
|
+
created_at?: string;
|
|
7633
|
+
created_by?: string | null;
|
|
7634
|
+
deleted_at?: string | null;
|
|
7635
|
+
door?: string | null;
|
|
7636
|
+
id?: string;
|
|
7637
|
+
mandate_key?: string;
|
|
7638
|
+
metadata?: Json;
|
|
7639
|
+
missing?: Json;
|
|
7640
|
+
organization_id?: string;
|
|
7641
|
+
published_to_web?: boolean;
|
|
7642
|
+
published_to_web_at?: string | null;
|
|
7643
|
+
published_to_web_by?: string | null;
|
|
7644
|
+
ready?: boolean;
|
|
7645
|
+
refused_count?: number;
|
|
7646
|
+
required?: Json;
|
|
7647
|
+
scope?: Json;
|
|
7648
|
+
scope_key?: string;
|
|
7649
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
7650
|
+
summary?: string | null;
|
|
7651
|
+
updated_at?: string;
|
|
7652
|
+
updated_by?: string | null;
|
|
7653
|
+
version?: number;
|
|
7654
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
7655
|
+
};
|
|
7656
|
+
Relationships: [];
|
|
7657
|
+
};
|
|
7262
7658
|
reference: {
|
|
7263
7659
|
Row: {
|
|
7264
7660
|
caller_identity_hash: string | null;
|
|
@@ -8149,6 +8545,12 @@ declare const treatmentTable: (supabase: Client) => import("@supabase/supabase-j
|
|
|
8149
8545
|
version_live: boolean;
|
|
8150
8546
|
}[];
|
|
8151
8547
|
};
|
|
8548
|
+
admin_run_counts: {
|
|
8549
|
+
Args: {
|
|
8550
|
+
p_since: string;
|
|
8551
|
+
};
|
|
8552
|
+
Returns: Json;
|
|
8553
|
+
};
|
|
8152
8554
|
binding_holder_runnable: {
|
|
8153
8555
|
Args: {
|
|
8154
8556
|
p_holder_id: string;
|
|
@@ -8228,6 +8630,24 @@ declare const treatmentTable: (supabase: Client) => import("@supabase/supabase-j
|
|
|
8228
8630
|
};
|
|
8229
8631
|
Returns: string[];
|
|
8230
8632
|
};
|
|
8633
|
+
record_readiness_verdict: {
|
|
8634
|
+
Args: {
|
|
8635
|
+
p_door: string;
|
|
8636
|
+
p_mandate_key: string;
|
|
8637
|
+
p_missing: Json;
|
|
8638
|
+
p_organization_id: string;
|
|
8639
|
+
p_ready: boolean;
|
|
8640
|
+
p_required: Json;
|
|
8641
|
+
p_scope: Json;
|
|
8642
|
+
p_scope_key: string;
|
|
8643
|
+
p_summary: string;
|
|
8644
|
+
};
|
|
8645
|
+
Returns: {
|
|
8646
|
+
id: string;
|
|
8647
|
+
ready: boolean;
|
|
8648
|
+
refused_count: number;
|
|
8649
|
+
}[];
|
|
8650
|
+
};
|
|
8231
8651
|
reference_head: {
|
|
8232
8652
|
Args: never;
|
|
8233
8653
|
Returns: {
|
|
@@ -5165,6 +5165,87 @@ declare const mandateContextMenuView: (supabase: Client) => import("@supabase/su
|
|
|
5165
5165
|
};
|
|
5166
5166
|
Relationships: [];
|
|
5167
5167
|
};
|
|
5168
|
+
readiness_verdict: {
|
|
5169
|
+
Row: {
|
|
5170
|
+
checked_at: string;
|
|
5171
|
+
created_at: string;
|
|
5172
|
+
created_by: string | null;
|
|
5173
|
+
deleted_at: string | null;
|
|
5174
|
+
door: string | null;
|
|
5175
|
+
id: string;
|
|
5176
|
+
mandate_key: string;
|
|
5177
|
+
metadata: import("@ai-matrx/data/types").Json;
|
|
5178
|
+
missing: import("@ai-matrx/data/types").Json;
|
|
5179
|
+
organization_id: string;
|
|
5180
|
+
published_to_web: boolean;
|
|
5181
|
+
published_to_web_at: string | null;
|
|
5182
|
+
published_to_web_by: string | null;
|
|
5183
|
+
ready: boolean;
|
|
5184
|
+
refused_count: number;
|
|
5185
|
+
required: import("@ai-matrx/data/types").Json;
|
|
5186
|
+
scope: import("@ai-matrx/data/types").Json;
|
|
5187
|
+
scope_key: string;
|
|
5188
|
+
shown_to: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
5189
|
+
summary: string | null;
|
|
5190
|
+
updated_at: string;
|
|
5191
|
+
updated_by: string | null;
|
|
5192
|
+
version: number;
|
|
5193
|
+
visibility: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
5194
|
+
};
|
|
5195
|
+
Insert: {
|
|
5196
|
+
checked_at?: string;
|
|
5197
|
+
created_at?: string;
|
|
5198
|
+
created_by?: string | null;
|
|
5199
|
+
deleted_at?: string | null;
|
|
5200
|
+
door?: string | null;
|
|
5201
|
+
id?: string;
|
|
5202
|
+
mandate_key: string;
|
|
5203
|
+
metadata?: import("@ai-matrx/data/types").Json;
|
|
5204
|
+
missing?: import("@ai-matrx/data/types").Json;
|
|
5205
|
+
organization_id: string;
|
|
5206
|
+
published_to_web?: boolean;
|
|
5207
|
+
published_to_web_at?: string | null;
|
|
5208
|
+
published_to_web_by?: string | null;
|
|
5209
|
+
ready: boolean;
|
|
5210
|
+
refused_count?: number;
|
|
5211
|
+
required?: import("@ai-matrx/data/types").Json;
|
|
5212
|
+
scope?: import("@ai-matrx/data/types").Json;
|
|
5213
|
+
scope_key: string;
|
|
5214
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
5215
|
+
summary?: string | null;
|
|
5216
|
+
updated_at?: string;
|
|
5217
|
+
updated_by?: string | null;
|
|
5218
|
+
version?: number;
|
|
5219
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
5220
|
+
};
|
|
5221
|
+
Update: {
|
|
5222
|
+
checked_at?: string;
|
|
5223
|
+
created_at?: string;
|
|
5224
|
+
created_by?: string | null;
|
|
5225
|
+
deleted_at?: string | null;
|
|
5226
|
+
door?: string | null;
|
|
5227
|
+
id?: string;
|
|
5228
|
+
mandate_key?: string;
|
|
5229
|
+
metadata?: import("@ai-matrx/data/types").Json;
|
|
5230
|
+
missing?: import("@ai-matrx/data/types").Json;
|
|
5231
|
+
organization_id?: string;
|
|
5232
|
+
published_to_web?: boolean;
|
|
5233
|
+
published_to_web_at?: string | null;
|
|
5234
|
+
published_to_web_by?: string | null;
|
|
5235
|
+
ready?: boolean;
|
|
5236
|
+
refused_count?: number;
|
|
5237
|
+
required?: import("@ai-matrx/data/types").Json;
|
|
5238
|
+
scope?: import("@ai-matrx/data/types").Json;
|
|
5239
|
+
scope_key?: string;
|
|
5240
|
+
shown_to?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["shown_to"] | null;
|
|
5241
|
+
summary?: string | null;
|
|
5242
|
+
updated_at?: string;
|
|
5243
|
+
updated_by?: string | null;
|
|
5244
|
+
version?: number;
|
|
5245
|
+
visibility?: import("@ai-matrx/data/types").Database["platform"]["Enums"]["visibility"];
|
|
5246
|
+
};
|
|
5247
|
+
Relationships: [];
|
|
5248
|
+
};
|
|
5168
5249
|
reference: {
|
|
5169
5250
|
Row: {
|
|
5170
5251
|
caller_identity_hash: string | null;
|
|
@@ -6055,6 +6136,12 @@ declare const mandateContextMenuView: (supabase: Client) => import("@supabase/su
|
|
|
6055
6136
|
version_live: boolean;
|
|
6056
6137
|
}[];
|
|
6057
6138
|
};
|
|
6139
|
+
admin_run_counts: {
|
|
6140
|
+
Args: {
|
|
6141
|
+
p_since: string;
|
|
6142
|
+
};
|
|
6143
|
+
Returns: import("@ai-matrx/data/types").Json;
|
|
6144
|
+
};
|
|
6058
6145
|
binding_holder_runnable: {
|
|
6059
6146
|
Args: {
|
|
6060
6147
|
p_holder_id: string;
|
|
@@ -6134,6 +6221,24 @@ declare const mandateContextMenuView: (supabase: Client) => import("@supabase/su
|
|
|
6134
6221
|
};
|
|
6135
6222
|
Returns: string[];
|
|
6136
6223
|
};
|
|
6224
|
+
record_readiness_verdict: {
|
|
6225
|
+
Args: {
|
|
6226
|
+
p_door: string;
|
|
6227
|
+
p_mandate_key: string;
|
|
6228
|
+
p_missing: import("@ai-matrx/data/types").Json;
|
|
6229
|
+
p_organization_id: string;
|
|
6230
|
+
p_ready: boolean;
|
|
6231
|
+
p_required: import("@ai-matrx/data/types").Json;
|
|
6232
|
+
p_scope: import("@ai-matrx/data/types").Json;
|
|
6233
|
+
p_scope_key: string;
|
|
6234
|
+
p_summary: string;
|
|
6235
|
+
};
|
|
6236
|
+
Returns: {
|
|
6237
|
+
id: string;
|
|
6238
|
+
ready: boolean;
|
|
6239
|
+
refused_count: number;
|
|
6240
|
+
}[];
|
|
6241
|
+
};
|
|
6137
6242
|
reference_head: {
|
|
6138
6243
|
Args: never;
|
|
6139
6244
|
Returns: {
|
|
@@ -11,11 +11,6 @@ import type { SourceFeature } from "../agents/types/instance.types.js";
|
|
|
11
11
|
* user's own binding).
|
|
12
12
|
*/
|
|
13
13
|
export declare const PROJECT_CREATE_MANDATE_KEY: "projects.creation_guide";
|
|
14
|
-
/**
|
|
15
|
-
* SEED MIRROR of the mandate's system default — kept only so
|
|
16
|
-
* `isProjectCreateFlow` can still recognize legacy launches by agent id;
|
|
17
|
-
* flow detection primarily keys on `sourceFeature`. Never mount this id.
|
|
18
|
-
*/
|
|
19
14
|
export declare const PROJECT_CREATE_AGENT_ID = "917074a0-fc06-4ff4-9805-4a517e04d08b";
|
|
20
15
|
export declare const PROJECT_CREATE_SOURCE_FEATURE: SourceFeature;
|
|
21
16
|
export declare function isProjectCreateFlow(sourceFeature: SourceFeature | undefined, agentId?: string | null): boolean;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { MANDATE_KEYS } from "@ai-matrx/agents/mandates";
|
|
2
2
|
const PROJECT_CREATE_MANDATE_KEY = MANDATE_KEYS.projects__creation_guide;
|
|
3
|
-
const
|
|
3
|
+
const PROJECT_CREATE_SEED_AGENT_ID = "917074a0-fc06-4ff4-9805-4a517e04d08b";
|
|
4
|
+
const PROJECT_CREATE_AGENT_ID = PROJECT_CREATE_SEED_AGENT_ID;
|
|
4
5
|
const PROJECT_CREATE_SOURCE_FEATURE = "projects";
|
|
5
6
|
const LOG_PREFIX = "[ProjectCreate\xB7AI]";
|
|
6
7
|
function isProjectCreateFlow(sourceFeature, agentId) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-matrx/chat",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.10",
|
|
4
4
|
"description": "THE one AI Matrx person-to-agent chat system: the full chat (running agents, conversations, tool calls, streaming, context, surfaces, voice) as explicit per-module subpaths @ai-matrx/chat/<domain>/<module> (no wildcards: scripts/public-modules.json) over a host contract (/host, /host/react) whose only required value is a db. One chat, one renderer: the old kernel entries (., /external-store, /matrx, /react, /tools, styles.css, tokens.css) are retired.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -120,6 +120,11 @@
|
|
|
120
120
|
"import": "./dist/agents/agents-hub-catalog-filter-contract.js",
|
|
121
121
|
"default": "./dist/agents/agents-hub-catalog-filter-contract.js"
|
|
122
122
|
},
|
|
123
|
+
"./agents/api/fetch-pending-calls": {
|
|
124
|
+
"types": "./dist/agents/api/fetch-pending-calls.d.ts",
|
|
125
|
+
"import": "./dist/agents/api/fetch-pending-calls.js",
|
|
126
|
+
"default": "./dist/agents/api/fetch-pending-calls.js"
|
|
127
|
+
},
|
|
123
128
|
"./agents/api/person-declined-tool-output": {
|
|
124
129
|
"types": "./dist/agents/api/person-declined-tool-output.d.ts",
|
|
125
130
|
"import": "./dist/agents/api/person-declined-tool-output.js",
|
|
@@ -2130,6 +2135,11 @@
|
|
|
2130
2135
|
"import": "./dist/agents/redux/execution-system/thunks/adopt-foreign-stream.js",
|
|
2131
2136
|
"default": "./dist/agents/redux/execution-system/thunks/adopt-foreign-stream.js"
|
|
2132
2137
|
},
|
|
2138
|
+
"./agents/redux/execution-system/thunks/call-conversation-api": {
|
|
2139
|
+
"types": "./dist/agents/redux/execution-system/thunks/call-conversation-api.d.ts",
|
|
2140
|
+
"import": "./dist/agents/redux/execution-system/thunks/call-conversation-api.js",
|
|
2141
|
+
"default": "./dist/agents/redux/execution-system/thunks/call-conversation-api.js"
|
|
2142
|
+
},
|
|
2133
2143
|
"./agents/redux/execution-system/thunks/conversation-bundle": {
|
|
2134
2144
|
"types": "./dist/agents/redux/execution-system/thunks/conversation-bundle.d.ts",
|
|
2135
2145
|
"import": "./dist/agents/redux/execution-system/thunks/conversation-bundle.js",
|
|
@@ -2180,11 +2190,6 @@
|
|
|
2180
2190
|
"import": "./dist/agents/redux/execution-system/thunks/launch-conversation.thunk.js",
|
|
2181
2191
|
"default": "./dist/agents/redux/execution-system/thunks/launch-conversation.thunk.js"
|
|
2182
2192
|
},
|
|
2183
|
-
"./agents/redux/execution-system/thunks/continue-agent-json": {
|
|
2184
|
-
"types": "./dist/agents/redux/execution-system/thunks/continue-agent-json.d.ts",
|
|
2185
|
-
"import": "./dist/agents/redux/execution-system/thunks/continue-agent-json.js",
|
|
2186
|
-
"default": "./dist/agents/redux/execution-system/thunks/continue-agent-json.js"
|
|
2187
|
-
},
|
|
2188
2193
|
"./agents/redux/execution-system/thunks/load-agent-call-child.thunk": {
|
|
2189
2194
|
"types": "./dist/agents/redux/execution-system/thunks/load-agent-call-child.thunk.d.ts",
|
|
2190
2195
|
"import": "./dist/agents/redux/execution-system/thunks/load-agent-call-child.thunk.js",
|
|
@@ -3105,6 +3110,11 @@
|
|
|
3105
3110
|
"import": "./dist/host/react.js",
|
|
3106
3111
|
"default": "./dist/host/react.js"
|
|
3107
3112
|
},
|
|
3113
|
+
"./host/request-headers": {
|
|
3114
|
+
"types": "./dist/host/request-headers.d.ts",
|
|
3115
|
+
"import": "./dist/host/request-headers.js",
|
|
3116
|
+
"default": "./dist/host/request-headers.js"
|
|
3117
|
+
},
|
|
3108
3118
|
"./host/server-deps": {
|
|
3109
3119
|
"types": "./dist/host/server-deps.d.ts",
|
|
3110
3120
|
"import": "./dist/host/server-deps.js",
|
|
@@ -4671,25 +4681,25 @@
|
|
|
4671
4681
|
"server-only": "^0.0.1",
|
|
4672
4682
|
"uuid": "^14.0.2",
|
|
4673
4683
|
"zod": "^4.6.5",
|
|
4674
|
-
"@ai-matrx/agents": "latest",
|
|
4675
4684
|
"@ai-matrx/alchemy": "latest",
|
|
4685
|
+
"@ai-matrx/associations": "latest",
|
|
4676
4686
|
"@ai-matrx/browser-audio": "latest",
|
|
4677
4687
|
"@ai-matrx/canvas": "latest",
|
|
4678
4688
|
"@ai-matrx/content-ir": "latest",
|
|
4679
|
-
"@ai-matrx/
|
|
4680
|
-
"@ai-matrx/
|
|
4681
|
-
"@ai-matrx/
|
|
4689
|
+
"@ai-matrx/content-ir-react": "latest",
|
|
4690
|
+
"@ai-matrx/agents": "latest",
|
|
4691
|
+
"@ai-matrx/icons": "latest",
|
|
4692
|
+
"@ai-matrx/diff": "latest",
|
|
4682
4693
|
"@ai-matrx/media": "latest",
|
|
4694
|
+
"@ai-matrx/kit": "latest",
|
|
4683
4695
|
"@ai-matrx/print": "latest",
|
|
4684
|
-
"@ai-matrx/
|
|
4696
|
+
"@ai-matrx/realtime": "latest",
|
|
4685
4697
|
"@ai-matrx/records-ui": "latest",
|
|
4698
|
+
"@ai-matrx/design-system": "latest",
|
|
4686
4699
|
"@ai-matrx/rich-content": "latest",
|
|
4687
|
-
"@ai-matrx/
|
|
4688
|
-
"@ai-matrx/
|
|
4689
|
-
"@ai-matrx/
|
|
4690
|
-
"@ai-matrx/icons": "latest",
|
|
4691
|
-
"@ai-matrx/diff": "latest",
|
|
4692
|
-
"@ai-matrx/kit": "latest"
|
|
4700
|
+
"@ai-matrx/records": "latest",
|
|
4701
|
+
"@ai-matrx/data": "latest",
|
|
4702
|
+
"@ai-matrx/rich-editor": "latest"
|
|
4693
4703
|
},
|
|
4694
4704
|
"devDependencies": {
|
|
4695
4705
|
"@arethetypeswrong/cli": "^0.18.5",
|
|
@@ -4808,5 +4818,5 @@
|
|
|
4808
4818
|
"check:side-effects": "node ../scripts/check-side-effects-listed.mjs . && node ../scripts/check-side-effects-listed.mjs --self-test",
|
|
4809
4819
|
"check:public-surface": "node ./scripts/sync-public-surface.mjs --check && node ./scripts/sync-public-surface.mjs --self-test"
|
|
4810
4820
|
},
|
|
4811
|
-
"gitHead": "
|
|
4821
|
+
"gitHead": "c1236d2d5f8a42087300bafce53317efb25700af"
|
|
4812
4822
|
}
|