@rubytech/create-maxy-code 0.1.159 → 0.1.161
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/package.json +1 -1
- package/payload/platform/lib/graph-search/src/__tests__/fulltext-coverage.test.ts +48 -17
- package/payload/platform/neo4j/schema.cypher +59 -36
- package/payload/platform/plugins/.claude-plugin/marketplace.json +5 -0
- package/payload/platform/plugins/admin/hooks/archive-ingest-surface-gate.sh +2 -2
- package/payload/platform/plugins/admin/skills/business-profile/SKILL.md +1 -1
- package/payload/platform/plugins/docs/references/plugins-guide.md +3 -2
- package/payload/platform/plugins/email/.claude-plugin/plugin.json +1 -1
- package/payload/platform/plugins/email/PLUGIN.md +5 -1
- package/payload/platform/plugins/email/mcp/dist/index.js +25 -0
- package/payload/platform/plugins/email/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/lib/conversation-archive-dispatch.d.ts +8 -0
- package/payload/platform/plugins/email/mcp/dist/lib/conversation-archive-dispatch.d.ts.map +1 -0
- package/payload/platform/plugins/email/mcp/dist/lib/conversation-archive-dispatch.js +177 -0
- package/payload/platform/plugins/email/mcp/dist/lib/conversation-archive-dispatch.js.map +1 -0
- package/payload/platform/plugins/email/mcp/dist/lib/graph.d.ts +6 -54
- package/payload/platform/plugins/email/mcp/dist/lib/graph.d.ts.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/lib/graph.js +12 -300
- package/payload/platform/plugins/email/mcp/dist/lib/graph.js.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/tools/email-classify.d.ts +6 -0
- package/payload/platform/plugins/email/mcp/dist/tools/email-classify.d.ts.map +1 -0
- package/payload/platform/plugins/email/mcp/dist/tools/email-classify.js +89 -0
- package/payload/platform/plugins/email/mcp/dist/tools/email-classify.js.map +1 -0
- package/payload/platform/plugins/email/mcp/dist/tools/email-ingest.d.ts.map +1 -1
- package/payload/platform/plugins/email/mcp/dist/tools/email-ingest.js +11 -6
- package/payload/platform/plugins/email/mcp/dist/tools/email-ingest.js.map +1 -1
- package/payload/platform/plugins/linkedin-import/skills/linkedin-import/SKILL.md +10 -37
- package/payload/platform/plugins/linkedin-import/skills/linkedin-import/references/connections.md +1 -0
- package/payload/platform/plugins/memory/.claude-plugin/plugin.json +1 -1
- package/payload/platform/plugins/memory/PLUGIN.md +10 -1
- package/payload/platform/plugins/memory/bin/conversation-archive-ingest.mjs +139 -439
- package/payload/platform/plugins/memory/bin/conversation-archive-ingest.sh +15 -47
- package/payload/platform/plugins/memory/mcp/dist/index.js +168 -29
- package/payload/platform/plugins/memory/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/compiled-truth-revision.test.js +43 -27
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/compiled-truth-revision.test.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/label-delete-gate.test.d.ts +2 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/label-delete-gate.test.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/label-delete-gate.test.js +62 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/label-delete-gate.test.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-cypher-drift.test.js +5 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-cypher-drift.test.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/typed-edge-schema.test.js +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/typed-edge-schema.test.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/compiled-truth-revision.d.ts +42 -25
- package/payload/platform/plugins/memory/mcp/dist/lib/compiled-truth-revision.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/compiled-truth-revision.js +23 -17
- package/payload/platform/plugins/memory/mcp/dist/lib/compiled-truth-revision.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/email.d.ts +3 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/email.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/email.js +61 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/email.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/index.d.ts +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/index.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/index.js +3 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/index.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/types.d.ts +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/types.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/types.js +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/types.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.d.ts +2 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.js +9 -3
- package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/kd-classify-gate.d.ts +41 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/kd-classify-gate.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/kd-classify-gate.js +71 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/kd-classify-gate.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/label-delete-gate.d.ts +18 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/label-delete-gate.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/label-delete-gate.js +31 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/label-delete-gate.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights.test.d.ts +5 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights.test.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights.test.js +162 -78
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights.test.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection.test.js +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection.test.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-source-agnosticism.test.js +2 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-source-agnosticism.test.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-compiled-truth-history.test.js +2 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-compiled-truth-history.test.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-emit.test.js +6 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-emit.test.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-reserved-label.test.d.ts +2 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-reserved-label.test.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-reserved-label.test.js +141 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-delete-reserved-label.test.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-empty-trash-reserved-label.test.d.ts +2 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-empty-trash-reserved-label.test.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-empty-trash-reserved-label.test.js +86 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-empty-trash-reserved-label.test.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.d.ts +33 -34
- package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.js +94 -273
- package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-list-chunks.d.ts +43 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-list-chunks.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-list-chunks.js +96 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-list-chunks.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/kd-classify.d.ts +6 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/kd-classify.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/kd-classify.js +73 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/kd-classify.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.js +0 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-compiled-truth-history.d.ts +6 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-compiled-truth-history.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-compiled-truth-history.js +2 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-compiled-truth-history.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.d.ts +8 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.js +40 -5
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-empty-trash.d.ts +7 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-empty-trash.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-empty-trash.js +17 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-empty-trash.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.js +11 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-node-exists.d.ts +28 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-node-exists.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-node-exists.js +46 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-node-exists.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.js +26 -0
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/vitest.config.ts +5 -4
- package/payload/platform/plugins/memory/references/schema-base.md +4 -6
- package/payload/platform/plugins/memory/skills/conversation-archive/SKILL.md +100 -116
- package/payload/platform/plugins/memory/skills/conversation-archive-enrich/SKILL.md +74 -24
- package/payload/platform/plugins/notion-import/skills/notion-import/SKILL.md +1 -1
- package/payload/platform/plugins/obsidian-import/skills/obsidian-import/SKILL.md +1 -1
- package/payload/platform/plugins/substack-import/.claude-plugin/plugin.json +8 -0
- package/payload/platform/plugins/substack-import/PLUGIN.md +34 -0
- package/payload/platform/plugins/substack-import/skills/substack-import/SKILL.md +182 -0
- package/payload/platform/plugins/substack-import/skills/substack-import/references/archive-shape.md +68 -0
- package/payload/platform/plugins/substack-import/skills/substack-import/references/attachments.md +72 -0
- package/payload/platform/plugins/substack-import/skills/substack-import/references/engagement.md +61 -0
- package/payload/platform/plugins/substack-import/skills/substack-import/references/posts.md +80 -0
- package/payload/platform/plugins/substack-import/skills/substack-import/references/subscribers.md +74 -0
- package/payload/platform/plugins/x-import/skills/x-import/SKILL.md +1 -1
- package/payload/platform/templates/specialists/agents/archive-ingest-operator.md +45 -0
- package/payload/platform/templates/specialists/agents/database-operator.md +5 -17
- package/payload/platform/templates/specialists/agents/librarian.md +1 -1
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
// Task 443 — memory-empty-trash refuses a trashed :LocalBusiness candidate
|
|
2
|
+
// when origin !== "system"; the rest of the batch drains.
|
|
3
|
+
import { describe, it, expect, beforeEach, afterEach, vi } from "vitest";
|
|
4
|
+
import { setupEmitCapture, makeMockSession } from "./_helpers/emit-capture.js";
|
|
5
|
+
const mockSession = makeMockSession();
|
|
6
|
+
vi.mock("../../lib/neo4j.js", () => ({
|
|
7
|
+
getSession: () => mockSession,
|
|
8
|
+
getClaudeSessionIdsByConversationElementId: vi.fn(),
|
|
9
|
+
}));
|
|
10
|
+
vi.mock("../../lib/attachments.js", () => ({
|
|
11
|
+
removeAttachmentDir: vi.fn().mockResolvedValue(false),
|
|
12
|
+
}));
|
|
13
|
+
import { memoryEmptyTrash } from "../memory-empty-trash.js";
|
|
14
|
+
const ACCOUNT_ID = "acct-1";
|
|
15
|
+
const LB_EID = "4:eid:lb";
|
|
16
|
+
const PERSON_EID = "4:eid:p";
|
|
17
|
+
function stageBatch(candidates, options) {
|
|
18
|
+
const state = { detachCalls: [] };
|
|
19
|
+
let candidateQueryCount = 0;
|
|
20
|
+
mockSession.run = vi.fn(async (cypher, params) => {
|
|
21
|
+
if (cypher.includes("MATCH (n:Trashed)")) {
|
|
22
|
+
candidateQueryCount++;
|
|
23
|
+
return {
|
|
24
|
+
records: candidates.map((c) => ({
|
|
25
|
+
get: (k) => {
|
|
26
|
+
switch (k) {
|
|
27
|
+
case "eid": return c.eid;
|
|
28
|
+
case "labels": return [...c.labels, "Trashed"];
|
|
29
|
+
case "trashedAt": return "2026-04-01T00:00:00.000Z";
|
|
30
|
+
case "trashedBy": return "test";
|
|
31
|
+
case "keysJson": return "{}";
|
|
32
|
+
default: return undefined;
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
})),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
if (cypher.includes("DETACH DELETE n")) {
|
|
39
|
+
const eid = params?.eid;
|
|
40
|
+
state.detachCalls.push(eid);
|
|
41
|
+
if (!options.expectDetachEids.includes(eid)) {
|
|
42
|
+
throw new Error(`unexpected DETACH DELETE for ${eid}`);
|
|
43
|
+
}
|
|
44
|
+
return { records: [] };
|
|
45
|
+
}
|
|
46
|
+
throw new Error(`unexpected cypher: ${cypher.slice(0, 80)}`);
|
|
47
|
+
});
|
|
48
|
+
return state;
|
|
49
|
+
}
|
|
50
|
+
beforeEach(() => {
|
|
51
|
+
vi.clearAllMocks();
|
|
52
|
+
});
|
|
53
|
+
afterEach(() => {
|
|
54
|
+
vi.restoreAllMocks();
|
|
55
|
+
});
|
|
56
|
+
describe("memory-empty-trash reserved-label gate (Task 443)", () => {
|
|
57
|
+
it("non-system sweep skips :LocalBusiness candidate and drains the rest", async () => {
|
|
58
|
+
const state = stageBatch([
|
|
59
|
+
{ eid: LB_EID, labels: ["LocalBusiness"] },
|
|
60
|
+
{ eid: PERSON_EID, labels: ["Person"] },
|
|
61
|
+
], { expectDetachEids: [PERSON_EID] });
|
|
62
|
+
const emit = setupEmitCapture();
|
|
63
|
+
try {
|
|
64
|
+
const result = await memoryEmptyTrash({ accountId: ACCOUNT_ID });
|
|
65
|
+
expect(state.detachCalls).toEqual([PERSON_EID]);
|
|
66
|
+
expect(result.emptied).toBe(1);
|
|
67
|
+
expect(result.candidates.length).toBe(2);
|
|
68
|
+
}
|
|
69
|
+
finally {
|
|
70
|
+
emit.restore();
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
it("system-origin sweep hard-deletes :LocalBusiness (installer reset path)", async () => {
|
|
74
|
+
const state = stageBatch([{ eid: LB_EID, labels: ["LocalBusiness"] }], { expectDetachEids: [LB_EID] });
|
|
75
|
+
const emit = setupEmitCapture();
|
|
76
|
+
try {
|
|
77
|
+
const result = await memoryEmptyTrash({ accountId: ACCOUNT_ID, origin: "system" });
|
|
78
|
+
expect(state.detachCalls).toEqual([LB_EID]);
|
|
79
|
+
expect(result.emptied).toBe(1);
|
|
80
|
+
}
|
|
81
|
+
finally {
|
|
82
|
+
emit.restore();
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
//# sourceMappingURL=memory-empty-trash-reserved-label.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-empty-trash-reserved-label.test.js","sourceRoot":"","sources":["../../../src/tools/__tests__/memory-empty-trash-reserved-label.test.ts"],"names":[],"mappings":"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"}
|
package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.d.ts
CHANGED
|
@@ -1,29 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* conversation-archive-derive-insights MCP tool.
|
|
3
3
|
*
|
|
4
|
-
* Chunk-anchored Phase 2 for conversation transcripts
|
|
5
|
-
* keyed on `conversationIdentity` — Task 397).
|
|
6
|
-
* one named archive in pages, asks Haiku
|
|
7
|
-
* (via OAuth — admin-side LLM never runs on the API key) for high-confidence
|
|
8
|
-
* claims, and returns a list of operator-facing proposals. The tool itself
|
|
9
|
-
* is read-only: every wire is dispatched by the conversation-archive-enrich
|
|
10
|
-
* skill via the operator gate, never by this tool.
|
|
4
|
+
* Chunk-anchored Phase 2 cypher emitter for conversation transcripts
|
|
5
|
+
* (:ConversationArchive keyed on `conversationIdentity` — Task 397).
|
|
11
6
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* Confidence floor is enforced in the system prompt as a hedging-avoidance
|
|
19
|
-
* instruction — Haiku confidences are not calibrated, so a numeric post-filter
|
|
20
|
-
* would be theatre. The prompt tells the model to emit only claims it would
|
|
21
|
-
* defend in a courtroom and omit anything it would hedge on.
|
|
7
|
+
* Task 433: the per-chunk LLM step runs in the conversation-archive-enrich
|
|
8
|
+
* skill's specialist turn. This tool no longer walks chunks or calls Haiku.
|
|
9
|
+
* It accepts a single chunk's agent-produced claims, applies the durable
|
|
10
|
+
* rejection sidecar filter, and emits per-kind cypher proposals for the
|
|
11
|
+
* skill's per-row operator gate. Idempotency on (chunkElementId, kind,
|
|
12
|
+
* contentHash) — re-runs collapse on the MERGE keys baked into mergeCypher.
|
|
22
13
|
*
|
|
23
14
|
* Per-row dispatch (the skill executes; this tool emits the cypher):
|
|
24
15
|
* mention → (:Section)-[:MENTIONS {contentHash}]->(:Person|:Organization)
|
|
25
16
|
* task → (:Task)-[:REFERENCES {contentHash}]->(:Section)
|
|
26
|
-
* (the skill calls
|
|
17
|
+
* (the skill calls mcp__work__work-create first,
|
|
27
18
|
* then this REFERENCES edge via raw cypher.)
|
|
28
19
|
* preference → MERGE (p:Preference {accountId, contentHash})
|
|
29
20
|
* then (p)-[:OBSERVED_IN]->(chunk)
|
|
@@ -32,16 +23,27 @@
|
|
|
32
23
|
export declare function rejectionsJsonlPath(accountId: string): string;
|
|
33
24
|
export declare function rejectionKey(chunkElementId: string, kind: string, contentHash: string): string;
|
|
34
25
|
export declare function loadRejections(accountId: string): Set<string>;
|
|
35
|
-
declare const PROPOSAL_KINDS: readonly ["mention", "task", "preference", "observed-relationship"];
|
|
36
|
-
type ProposalKind = (typeof PROPOSAL_KINDS)[number];
|
|
26
|
+
export declare const PROPOSAL_KINDS: readonly ["mention", "task", "preference", "observed-relationship"];
|
|
27
|
+
export type ProposalKind = (typeof PROPOSAL_KINDS)[number];
|
|
28
|
+
export interface AgentClaim {
|
|
29
|
+
kind: ProposalKind;
|
|
30
|
+
/** ≤80 chars verbatim or near-verbatim quote the agent extracted from the chunk body. */
|
|
31
|
+
evidenceSnippet: string;
|
|
32
|
+
/** Display name of the primary entity. Required for mention + observed-relationship. */
|
|
33
|
+
subject?: string | null;
|
|
34
|
+
/** Display name of the related entity. Required for observed-relationship only. */
|
|
35
|
+
object?: string | null;
|
|
36
|
+
/** Kind-specific structured fields. See SKILL.md for the per-kind schema. */
|
|
37
|
+
payload?: Record<string, unknown>;
|
|
38
|
+
}
|
|
37
39
|
export interface DeriveInsightsParams {
|
|
38
40
|
accountId: string;
|
|
39
|
-
/** elementId of the
|
|
41
|
+
/** elementId of the :ConversationArchive parent the operator named. */
|
|
40
42
|
archiveElementId: string;
|
|
41
|
-
/**
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
|
|
43
|
+
/** elementId of the single :Section chunk the agent just read. */
|
|
44
|
+
chunkElementId: string;
|
|
45
|
+
/** Claims the dispatched specialist emitted in-turn from the chunk body. */
|
|
46
|
+
claims: AgentClaim[];
|
|
45
47
|
/** Optional override for the SDK-injected session id (provenance stamping). */
|
|
46
48
|
sessionId?: string;
|
|
47
49
|
}
|
|
@@ -66,7 +68,6 @@ export interface Proposal {
|
|
|
66
68
|
* before the skill executes `mergeCypher`. Null for `preference` and `task`.
|
|
67
69
|
*/
|
|
68
70
|
disambiguation: {
|
|
69
|
-
/** A subject the operator must resolve to an existing graph node. */
|
|
70
71
|
needsResolution: Array<{
|
|
71
72
|
role: "subject" | "object";
|
|
72
73
|
displayName: string;
|
|
@@ -76,15 +77,13 @@ export interface Proposal {
|
|
|
76
77
|
}
|
|
77
78
|
export interface DeriveInsightsResult {
|
|
78
79
|
archiveElementId: string;
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
walkedFrom: number;
|
|
82
|
-
walkedTo: number;
|
|
83
|
-
proposalsRemaining: boolean;
|
|
80
|
+
chunkElementId: string;
|
|
81
|
+
/** Proposals the operator should triage row-by-row. */
|
|
84
82
|
proposals: Proposal[];
|
|
85
|
-
/**
|
|
86
|
-
|
|
83
|
+
/** Proposals dropped because the durable rejection sidecar already records them. */
|
|
84
|
+
rejectionsFiltered: number;
|
|
85
|
+
/** Claims the agent emitted that did not survive normalisation (missing required fields). */
|
|
86
|
+
invalidClaims: number;
|
|
87
87
|
}
|
|
88
88
|
export declare function conversationArchiveDeriveInsights(params: DeriveInsightsParams): Promise<DeriveInsightsResult>;
|
|
89
|
-
export {};
|
|
90
89
|
//# sourceMappingURL=conversation-archive-derive-insights.d.ts.map
|
package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-archive-derive-insights.d.ts","sourceRoot":"","sources":["../../src/tools/conversation-archive-derive-insights.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"conversation-archive-derive-insights.d.ts","sourceRoot":"","sources":["../../src/tools/conversation-archive-derive-insights.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AA0BH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAS7D;AAID,wBAAgB,YAAY,CAC1B,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAClB,MAAM,CAER;AAID,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAwC7D;AAQD,eAAO,MAAM,cAAc,qEAKjB,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAM3D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,YAAY,CAAC;IACnB,yFAAyF;IACzF,eAAe,EAAE,MAAM,CAAC;IACxB,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mFAAmF;IACnF,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,gBAAgB,EAAE,MAAM,CAAC;IACzB,kEAAkE;IAClE,cAAc,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,QAAQ;IACvB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,IAAI,EAAE,YAAY,CAAC;IACnB,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,eAAe,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,cAAc,EAAE,MAAM,CAAC;IACvB,0FAA0F;IAC1F,WAAW,EAAE,MAAM,CAAC;IACpB,0FAA0F;IAC1F,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC;;;;OAIG;IACH,cAAc,EAAE;QACd,eAAe,EAAE,KAAK,CAAC;YACrB,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;YAC3B,WAAW,EAAE,MAAM,CAAC;YACpB,cAAc,EAAE,KAAK,CAAC,QAAQ,GAAG,cAAc,CAAC,CAAC;SAClD,CAAC,CAAC;KACJ,GAAG,IAAI,CAAC;CACV;AAED,MAAM,WAAW,oBAAoB;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,uDAAuD;IACvD,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,oFAAoF;IACpF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,6FAA6F;IAC7F,aAAa,EAAE,MAAM,CAAC;CACvB;AA6QD,wBAAsB,iCAAiC,CACrD,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAU/B"}
|