neotoma 0.13.0 → 0.14.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.
- package/dist/actions.d.ts.map +1 -1
- package/dist/actions.js +82 -25
- package/dist/actions.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/inspector/assets/Combination-DUY7QPO8.js +41 -0
- package/dist/inspector/assets/access_policies-C09PKc4I.js +1 -0
- package/dist/inspector/assets/agent_badge-BZd6ZAh5.js +1 -0
- package/dist/inspector/assets/agent_detail-B_1ghR12.js +1 -0
- package/dist/inspector/assets/{agent_filter-Ckc9Pn79.js → agent_filter-DUlgHUAb.js} +1 -1
- package/dist/inspector/assets/agent_grant_detail-CXCO_732.js +1 -0
- package/dist/inspector/assets/agent_grant_form-BOodcTsk.js +1 -0
- package/dist/inspector/assets/agent_grants-DwJWbjBK.js +1 -0
- package/dist/inspector/assets/agents-37d_vnDC.js +1 -0
- package/dist/inspector/assets/arrow-left-C_rgOt55.js +6 -0
- package/dist/inspector/assets/{attribution_card-B4uxURRl.js → attribution_card-BTuwO5aa.js} +1 -1
- package/dist/inspector/assets/attribution_summary-BCNNWLJ0.js +1 -0
- package/dist/inspector/assets/{card-Be3xc6kP.js → card-CfjWPSFY.js} +1 -1
- package/dist/inspector/assets/check-C3ZzJelL.js +6 -0
- package/dist/inspector/assets/chevron-down-BMaycUN9.js +6 -0
- package/dist/inspector/assets/chevron-right-L2MnFoxW.js +6 -0
- package/dist/inspector/assets/compliance-CtiJIab-.js +1 -0
- package/dist/inspector/assets/confirm-dialog-BeroL0Rg.js +6 -0
- package/dist/inspector/assets/{conversation_common-CUy4Y6nT.js → conversation_common-BKTjpYxF.js} +1 -1
- package/dist/inspector/assets/conversation_detail-LF6Qd49-.js +1 -0
- package/dist/inspector/assets/copy_id_button-GijI9po3.js +6 -0
- package/dist/inspector/assets/dashboard-BPnSJqsF.js +68 -0
- package/dist/inspector/assets/{data-table-DUTmXUje.js → data-table-B-cqS3KC.js} +4 -4
- package/dist/inspector/assets/dialog-CIA-8Qg9.js +10 -0
- package/dist/inspector/assets/dropdown-menu-Ckkd3YcG.js +6 -0
- package/dist/inspector/assets/entities-CYmA8CfA.js +1 -0
- package/dist/inspector/assets/entity_detail-Cg0VALqg.js +17 -0
- package/dist/inspector/assets/entity_link-qYsgSBpl.js +1 -0
- package/dist/inspector/assets/{graph_explorer-ToRKi564.js → graph_explorer-xc5xiEzg.js} +2 -2
- package/dist/inspector/assets/{index-Bqd6ZUTS.js → index-BVxY35u6.js} +1 -1
- package/dist/inspector/assets/index-Bi9XbTox.js +1 -0
- package/dist/inspector/assets/{index-eSn-_N7m.js → index-D3OXdV3z.js} +1 -1
- package/dist/inspector/assets/index-DFtogOdh.css +1 -0
- package/dist/inspector/assets/index-Dbk1Plmn.js +234 -0
- package/dist/inspector/assets/index-dCMWtMMp.js +1 -0
- package/dist/inspector/assets/interpretations-BQOT8hIC.js +1 -0
- package/dist/inspector/assets/interpretations-D4UW8rIX.js +1 -0
- package/dist/inspector/assets/issue_author_attribution-CUwRDUTg.js +1 -0
- package/dist/inspector/assets/issue_detail-pB-HjEXa.js +1 -0
- package/dist/inspector/assets/issues-DymZL71f.js +1 -0
- package/dist/inspector/assets/json_viewer-ClIBr-BE.js +1 -0
- package/dist/inspector/assets/{label-DOM2Wo7V.js → label-BKULM0qV.js} +1 -1
- package/dist/inspector/assets/{live_relative_time-D0sf7oeA.js → live_relative_time-DiP4_O2S.js} +1 -1
- package/dist/inspector/assets/observations-BkdwEkxW.js +1 -0
- package/dist/inspector/assets/page_shell-C0CL85dt.js +1 -0
- package/dist/inspector/assets/pagination-BoJeck8D.js +6 -0
- package/dist/inspector/assets/peer_detail-DVeIIJyP.js +1 -0
- package/dist/inspector/assets/peers-DVwXMI_R.js +1 -0
- package/dist/inspector/assets/plus-DrFK9jPU.js +6 -0
- package/dist/inspector/assets/query_refresh_indicator-1_XqkpX1.js +1 -0
- package/dist/inspector/assets/recent_activity-BItREq9X.js +11 -0
- package/dist/inspector/assets/recent_conversations-DZysT03I.js +1 -0
- package/dist/inspector/assets/recent_conversations-DydLPVC7.js +1 -0
- package/dist/inspector/assets/recent_records_feed-DvmOpQOI.js +1 -0
- package/dist/inspector/assets/relationship_detail-BSj-pQ4e.js +1 -0
- package/dist/inspector/assets/relationships-D_VYvxI6.js +1 -0
- package/dist/inspector/assets/relationships-Dej7k2bX.js +1 -0
- package/dist/inspector/assets/sandbox-ByQIsZ7c.js +1 -0
- package/dist/inspector/assets/schema_detail-Ee80m94a.js +11 -0
- package/dist/inspector/assets/schemas-CtuDIi3-.js +5 -0
- package/dist/inspector/assets/search-B93IvJij.js +1 -0
- package/dist/inspector/assets/select-B273iZTf.js +6 -0
- package/dist/inspector/assets/settings-Bq6E6ZHL.js +1 -0
- package/dist/inspector/assets/source_detail-B68i3fZD.js +22 -0
- package/dist/inspector/assets/{source_link-0Te24zH8.js → source_link-Bg790zHv.js} +1 -1
- package/dist/inspector/assets/sources-Djb-BlYz.js +9 -0
- package/dist/inspector/assets/subscriptions-TXilOyS3.js +1 -0
- package/dist/inspector/assets/switch-CWAnZPRf.js +1 -0
- package/dist/inspector/assets/tabs-C_pkkbCq.js +1 -0
- package/dist/inspector/assets/{textarea-DEdR3qUl.js → textarea-BDInZ0Bq.js} +1 -1
- package/dist/inspector/assets/timeline-B_D7qsoU.js +1 -0
- package/dist/inspector/assets/timeline-CLbhs2eG.js +1 -0
- package/dist/inspector/assets/timeline_event_detail-DF1jb7D8.js +1 -0
- package/dist/inspector/assets/trash-2-Bj69O07h.js +6 -0
- package/dist/inspector/assets/turn_detail-Btx7OUU3.js +1 -0
- package/dist/inspector/assets/turns-a3ZhmNMK.js +1 -0
- package/dist/inspector/assets/use_agents-DbRumskw.js +1 -0
- package/dist/inspector/assets/use_entities-CosQTZoS.js +1 -0
- package/dist/inspector/assets/use_interpretations-CyFYYw9f.js +1 -0
- package/dist/inspector/assets/use_mutations-BiggAKwe.js +1 -0
- package/dist/inspector/assets/use_peers-N5QIk_vW.js +1 -0
- package/dist/inspector/assets/use_recent_conversations-DrH7xddS.js +1 -0
- package/dist/inspector/assets/{use_relationships-BxnyinEx.js → use_relationships-QO4vMfMB.js} +1 -1
- package/dist/inspector/assets/use_schemas-DMLDIw9M.js +1 -0
- package/dist/inspector/assets/use_sources-CFfXCf1Q.js +1 -0
- package/dist/inspector/assets/use_stats-Dl20g0pT.js +1 -0
- package/dist/inspector/assets/use_timeline-DHzluypB.js +1 -0
- package/dist/inspector/assets/use_turns-B9mo1Zal.js +1 -0
- package/dist/inspector/index.html +2 -2
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +74 -9
- package/dist/server.js.map +1 -1
- package/dist/services/canonical_markdown.d.ts.map +1 -1
- package/dist/services/canonical_markdown.js +5 -1
- package/dist/services/canonical_markdown.js.map +1 -1
- package/dist/services/canonical_mirror.d.ts.map +1 -1
- package/dist/services/canonical_mirror.js +26 -7
- package/dist/services/canonical_mirror.js.map +1 -1
- package/dist/services/plans/seed_schema.d.ts.map +1 -1
- package/dist/services/plans/seed_schema.js +6 -1
- package/dist/services/plans/seed_schema.js.map +1 -1
- package/dist/services/root_landing/site_nav.d.ts.map +1 -1
- package/dist/services/root_landing/site_nav.js +9 -0
- package/dist/services/root_landing/site_nav.js.map +1 -1
- package/dist/services/schema_definitions.d.ts.map +1 -1
- package/dist/services/schema_definitions.js +46 -0
- package/dist/services/schema_definitions.js.map +1 -1
- package/dist/services/skills/seed_schema.d.ts +39 -0
- package/dist/services/skills/seed_schema.d.ts.map +1 -0
- package/dist/services/skills/seed_schema.js +151 -0
- package/dist/services/skills/seed_schema.js.map +1 -0
- package/dist/shared/action_handlers/entity_handlers.d.ts +17 -0
- package/dist/shared/action_handlers/entity_handlers.d.ts.map +1 -1
- package/dist/shared/action_handlers/entity_handlers.js +281 -56
- package/dist/shared/action_handlers/entity_handlers.js.map +1 -1
- package/dist/shared/action_schemas.d.ts +68 -4
- package/dist/shared/action_schemas.d.ts.map +1 -1
- package/dist/shared/action_schemas.js +30 -2
- package/dist/shared/action_schemas.js.map +1 -1
- package/dist/shared/openapi_types.d.ts +104 -15
- package/dist/shared/openapi_types.d.ts.map +1 -1
- package/dist/tool_definitions.d.ts.map +1 -1
- package/dist/tool_definitions.js +18 -0
- package/dist/tool_definitions.js.map +1 -1
- package/docs/developer/mcp/instructions.md +3 -3
- package/openapi.yaml +158 -0
- package/package.json +1 -1
- package/dist/inspector/assets/access_policies-BJGiuGT7.js +0 -1
- package/dist/inspector/assets/agent_badge-CxX5AoB3.js +0 -1
- package/dist/inspector/assets/agent_detail-CgynPJyi.js +0 -1
- package/dist/inspector/assets/agent_grant_detail-CVVt5jR0.js +0 -1
- package/dist/inspector/assets/agent_grant_form-CckwE47p.js +0 -1
- package/dist/inspector/assets/agent_grants-CEHtFG8M.js +0 -1
- package/dist/inspector/assets/agents-kgafkCf0.js +0 -1
- package/dist/inspector/assets/compliance-DIpTNThJ.js +0 -1
- package/dist/inspector/assets/confirm-dialog-BJb_7JCP.js +0 -1
- package/dist/inspector/assets/conversation_detail-DmN3Ciik.js +0 -1
- package/dist/inspector/assets/copy_id_button-O99Ypxsr.js +0 -1
- package/dist/inspector/assets/dashboard-Jm_bFVR7.js +0 -68
- package/dist/inspector/assets/dialog-BxsMqebA.js +0 -5
- package/dist/inspector/assets/docs-DPNYchG1.js +0 -1
- package/dist/inspector/assets/docs_page_layout-DF6Hggiv.js +0 -1
- package/dist/inspector/assets/entities-CFbkJ0kh.js +0 -1
- package/dist/inspector/assets/entity_correct-3VZy9c_B.js +0 -2
- package/dist/inspector/assets/entity_detail-DYTMD6CQ.js +0 -1
- package/dist/inspector/assets/entity_link-Bn-BZ7Ez.js +0 -1
- package/dist/inspector/assets/entity_relationships_by_type-CaEHjhuH.js +0 -1
- package/dist/inspector/assets/entity_segment_page-ram_dYBU.js +0 -1
- package/dist/inspector/assets/entity_table_column_toggle-DkgTfVe6.js +0 -1
- package/dist/inspector/assets/entity_timeline-D4Jx8j86.js +0 -1
- package/dist/inspector/assets/entity_types-C6xxaD9Q.js +0 -1
- package/dist/inspector/assets/faq-BlN0dwXU.js +0 -1
- package/dist/inspector/assets/field_value-CXrYP7U2.js +0 -1
- package/dist/inspector/assets/home-DMp787c9.js +0 -1
- package/dist/inspector/assets/index-CfBNe5Q5.css +0 -1
- package/dist/inspector/assets/index-Cr1MUTVf.js +0 -7899
- package/dist/inspector/assets/interpretations-B7IGjAGw.js +0 -1
- package/dist/inspector/assets/interpretations-BfvMft6w.js +0 -1
- package/dist/inspector/assets/issue_author_attribution-cYHL-sZs.js +0 -1
- package/dist/inspector/assets/issue_detail-DEw5DZIp.js +0 -1
- package/dist/inspector/assets/issues-DbmZ_PkV.js +0 -1
- package/dist/inspector/assets/json_viewer-CojB60Px.js +0 -1
- package/dist/inspector/assets/observation_timeline-B_wjamjQ.js +0 -1
- package/dist/inspector/assets/observations-BMh0l3dI.js +0 -1
- package/dist/inspector/assets/observations-BUPBgx6V.js +0 -1
- package/dist/inspector/assets/page_shell-D6MkYIq9.js +0 -1
- package/dist/inspector/assets/pagination-CRK2zZ5A.js +0 -1
- package/dist/inspector/assets/peer_detail-UOrmJwiA.js +0 -1
- package/dist/inspector/assets/peers-D2NFo46-.js +0 -1
- package/dist/inspector/assets/pin_primitive_button-BZ69erO4.js +0 -1
- package/dist/inspector/assets/query_refresh_indicator-DKC1GoKi.js +0 -1
- package/dist/inspector/assets/recent_activity-D0KUmHJS.js +0 -1
- package/dist/inspector/assets/recent_conversations--Z_aIJCk.js +0 -1
- package/dist/inspector/assets/recent_conversations-CAswLy6M.js +0 -1
- package/dist/inspector/assets/recent_records_feed-DuuyuJsg.js +0 -1
- package/dist/inspector/assets/record_activity-CTkV_H_X.js +0 -1
- package/dist/inspector/assets/relationship_detail-qmJQbwGY.js +0 -1
- package/dist/inspector/assets/relationship_panel_groups-e43Kdemt.js +0 -1
- package/dist/inspector/assets/relationships-CFs3OjfC.js +0 -1
- package/dist/inspector/assets/sandbox-BjTj_hQB.js +0 -1
- package/dist/inspector/assets/schema_detail-CT5ZSvKd.js +0 -1
- package/dist/inspector/assets/schemas-TGRdLTOx.js +0 -5
- package/dist/inspector/assets/search-CsuBd9XH.js +0 -1
- package/dist/inspector/assets/select-BbDWrJkS.js +0 -1
- package/dist/inspector/assets/settings-FIe7umOM.js +0 -1
- package/dist/inspector/assets/site_page-Cfc8rn3y.js +0 -1
- package/dist/inspector/assets/source_content-Dvp8_Hwr.js +0 -1
- package/dist/inspector/assets/source_content_open_button-F-UKNjcR.js +0 -1
- package/dist/inspector/assets/source_detail-CqK7ZqEB.js +0 -12
- package/dist/inspector/assets/sources-OEMKh04W.js +0 -4
- package/dist/inspector/assets/subscriptions-QCeImjtb.js +0 -1
- package/dist/inspector/assets/switch-PUyIT0vy.js +0 -1
- package/dist/inspector/assets/tabs-lHH0KCtY.js +0 -1
- package/dist/inspector/assets/timeline-D8IOTkCM.js +0 -1
- package/dist/inspector/assets/timeline-Y0ddX9vY.js +0 -1
- package/dist/inspector/assets/timeline_event_detail-95SVGtVI.js +0 -1
- package/dist/inspector/assets/turn_detail-WPsdYVhf.js +0 -1
- package/dist/inspector/assets/turns-Bf4tvAfT.js +0 -1
- package/dist/inspector/assets/use_agents-B6ystZbD.js +0 -1
- package/dist/inspector/assets/use_entities-C5894IaX.js +0 -1
- package/dist/inspector/assets/use_graph-BzTAlCFl.js +0 -1
- package/dist/inspector/assets/use_interpretations-EjpsDvcH.js +0 -1
- package/dist/inspector/assets/use_mutations-CP7Gko1Z.js +0 -1
- package/dist/inspector/assets/use_peers-Bq_Cmd4J.js +0 -1
- package/dist/inspector/assets/use_stats-DSEbyDC0.js +0 -1
- package/dist/inspector/assets/use_timeline-Bl4HOqZV.js +0 -1
- package/dist/inspector/assets/use_turns-Bq7rjQNk.js +0 -1
package/dist/actions.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAqC9B,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,6BAA6B,CAAC;AAarC,OAAO,EAGL,KAAK,aAAa,EAGnB,MAAM,4BAA4B,CAAC;AA+DpC,OAAO,EAgCL,KAAK,wBAAwB,EAE9B,MAAM,4BAA4B,CAAC;AAgCpC,eAAO,MAAM,GAAG,6CAAY,CAAC;AA+jB7B;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CA+B1F;AAmCD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CA2B5D;AA4PD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CA2BhD;AAw4CD,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,aAAa,CAAC;IACvB,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,KAAK,cAAc,GAAG,aAAa,GAAG,cAAc,CAAC;AA2CrD,4GAA4G;AAC5G,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,GAAG,OAAO,CAqBjG;AAED,oHAAoH;AACpH,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,GAC5C,OAAO,CAWT;AAED,mGAAmG;AACnG,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,GAAG,MAAM,CAanE;AA2FD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,OAAO,CAAC,OAAO,EACpB,SAAS,EAAE,cAAc,GACxB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4BxB;
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
|
package/dist/actions.js
CHANGED
|
@@ -2795,7 +2795,7 @@ app.post("/entities/query", async (req, res) => {
|
|
|
2795
2795
|
try {
|
|
2796
2796
|
// Get authenticated user_id (REQUIRED)
|
|
2797
2797
|
const userId = await getAuthenticatedUserId(req, parsed.data.user_id);
|
|
2798
|
-
const { entity_type, search, limit, offset, sort_by, sort_order, published, published_after, published_before, include_snapshots, include_merged, updated_since, created_since, identity_basis, } = parsed.data;
|
|
2798
|
+
const { entity_type, search, limit, offset, sort_by, sort_order, published, published_after, published_before, include_snapshots, include_merged, updated_since, created_since, identity_basis, exclude_bookkeeping, } = parsed.data;
|
|
2799
2799
|
const { entities, total } = await queryEntitiesWithCount({
|
|
2800
2800
|
userId,
|
|
2801
2801
|
entityType: entity_type,
|
|
@@ -2812,6 +2812,7 @@ app.post("/entities/query", async (req, res) => {
|
|
|
2812
2812
|
updatedSince: updated_since,
|
|
2813
2813
|
createdSince: created_since,
|
|
2814
2814
|
identityBasis: identity_basis,
|
|
2815
|
+
excludeBookkeeping: exclude_bookkeeping,
|
|
2815
2816
|
});
|
|
2816
2817
|
return res.json({
|
|
2817
2818
|
entities,
|
|
@@ -6170,32 +6171,64 @@ app.post("/list_relationships", async (req, res) => {
|
|
|
6170
6171
|
});
|
|
6171
6172
|
return sendValidationError(res, parsed.error.issues);
|
|
6172
6173
|
}
|
|
6173
|
-
const { entity_id, direction = "both", relationship_type } = parsed.data;
|
|
6174
|
-
const normalizedDirection = direction === "incoming" || direction === "inbound"
|
|
6175
|
-
? "incoming"
|
|
6176
|
-
: direction === "outgoing" || direction === "outbound"
|
|
6177
|
-
? "outgoing"
|
|
6178
|
-
: "both";
|
|
6179
|
-
const { relationshipsService } = await import("./services/relationships.js");
|
|
6174
|
+
const { entity_id, source_entity_id, target_entity_id, direction = "both", relationship_type, limit = 100, offset = 0, } = parsed.data;
|
|
6180
6175
|
try {
|
|
6181
|
-
|
|
6176
|
+
// Tenant isolation: resolve authenticated user and scope all queries to
|
|
6177
|
+
// their records. See docs/security/advisories/2026-05-21-relationship-
|
|
6178
|
+
// endpoint-tenant-isolation.md for context.
|
|
6179
|
+
const userId = await getAuthenticatedUserId(req, parsed.data.user_id);
|
|
6180
|
+
// Flexible query supporting source_entity_id / target_entity_id in addition
|
|
6181
|
+
// to the legacy entity_id + direction pattern.
|
|
6182
|
+
let query = db.from("relationship_snapshots").select("*").eq("user_id", userId);
|
|
6183
|
+
if (source_entity_id && target_entity_id) {
|
|
6184
|
+
query = query
|
|
6185
|
+
.eq("source_entity_id", source_entity_id)
|
|
6186
|
+
.eq("target_entity_id", target_entity_id);
|
|
6187
|
+
}
|
|
6188
|
+
else if (source_entity_id) {
|
|
6189
|
+
query = query.eq("source_entity_id", source_entity_id);
|
|
6190
|
+
}
|
|
6191
|
+
else if (target_entity_id) {
|
|
6192
|
+
query = query.eq("target_entity_id", target_entity_id);
|
|
6193
|
+
}
|
|
6194
|
+
else if (entity_id) {
|
|
6195
|
+
const normalizedDirection = direction === "incoming" || direction === "inbound"
|
|
6196
|
+
? "incoming"
|
|
6197
|
+
: direction === "outgoing" || direction === "outbound"
|
|
6198
|
+
? "outgoing"
|
|
6199
|
+
: "both";
|
|
6200
|
+
if (normalizedDirection === "outgoing") {
|
|
6201
|
+
query = query.eq("source_entity_id", entity_id);
|
|
6202
|
+
}
|
|
6203
|
+
else if (normalizedDirection === "incoming") {
|
|
6204
|
+
query = query.eq("target_entity_id", entity_id);
|
|
6205
|
+
}
|
|
6206
|
+
else {
|
|
6207
|
+
query = query.or(`source_entity_id.eq.${entity_id},target_entity_id.eq.${entity_id}`);
|
|
6208
|
+
}
|
|
6209
|
+
}
|
|
6182
6210
|
if (relationship_type) {
|
|
6183
|
-
|
|
6184
|
-
// Filter by entity_id
|
|
6185
|
-
relationships = relationships.filter((rel) => rel.source_entity_id === entity_id || rel.target_entity_id === entity_id);
|
|
6211
|
+
query = query.eq("relationship_type", relationship_type);
|
|
6186
6212
|
}
|
|
6187
|
-
|
|
6188
|
-
|
|
6213
|
+
query = query.order("last_observation_at", { ascending: false });
|
|
6214
|
+
const { data, error } = await query;
|
|
6215
|
+
if (error) {
|
|
6216
|
+
throw new Error(error.message);
|
|
6189
6217
|
}
|
|
6218
|
+
const all = data || [];
|
|
6219
|
+
const paginated = all.slice(offset, offset + limit);
|
|
6190
6220
|
logDebug("Success:list_relationships", req, {
|
|
6191
6221
|
entity_id,
|
|
6192
|
-
|
|
6222
|
+
source_entity_id,
|
|
6223
|
+
target_entity_id,
|
|
6224
|
+
relationship_type,
|
|
6225
|
+
count: paginated.length,
|
|
6226
|
+
total: all.length,
|
|
6193
6227
|
});
|
|
6194
|
-
return res.json({ relationships });
|
|
6228
|
+
return res.json({ relationships: paginated, total: all.length, limit, offset });
|
|
6195
6229
|
}
|
|
6196
6230
|
catch (error) {
|
|
6197
|
-
|
|
6198
|
-
return sendError(res, 500, "DB_QUERY_FAILED", error instanceof Error ? error.message : "Failed to query relationships");
|
|
6231
|
+
return handleApiError(req, res, error, "Failed to query relationships", "DB_QUERY_FAILED", "RelationshipQueryError:list_relationships");
|
|
6199
6232
|
}
|
|
6200
6233
|
});
|
|
6201
6234
|
app.get("/get_file_url", async (req, res) => {
|
|
@@ -6340,7 +6373,11 @@ app.post("/retrieve_graph_neighborhood", async (req, res) => {
|
|
|
6340
6373
|
return sendValidationError(res, parsed.error.issues);
|
|
6341
6374
|
}
|
|
6342
6375
|
try {
|
|
6343
|
-
const { node_id, node_type = "entity", include_relationships = true, include_sources = true, include_events: _include_events = true, include_observations = false, } = parsed.data;
|
|
6376
|
+
const { node_id, node_type = "entity", include_relationships = true, include_sources = true, include_events: _include_events = true, include_observations = false, limit = 100, offset = 0, } = parsed.data;
|
|
6377
|
+
// Tenant isolation: scope all queries to the authenticated user.
|
|
6378
|
+
// See docs/security/advisories/2026-05-21-relationship-endpoint-
|
|
6379
|
+
// tenant-isolation.md for context.
|
|
6380
|
+
const userId = await getAuthenticatedUserId(req, parsed.data.user_id);
|
|
6344
6381
|
const result = { node_id, node_type };
|
|
6345
6382
|
if (node_type === "entity") {
|
|
6346
6383
|
// Get entity
|
|
@@ -6348,16 +6385,28 @@ app.post("/retrieve_graph_neighborhood", async (req, res) => {
|
|
|
6348
6385
|
.from("entities")
|
|
6349
6386
|
.select("*")
|
|
6350
6387
|
.eq("id", node_id)
|
|
6388
|
+
.eq("user_id", userId)
|
|
6351
6389
|
.single();
|
|
6352
6390
|
if (!entityError && entity) {
|
|
6353
6391
|
result.entity = entity;
|
|
6354
6392
|
}
|
|
6355
6393
|
// Get relationships if requested
|
|
6356
6394
|
if (include_relationships) {
|
|
6395
|
+
// Count total relationships for pagination metadata
|
|
6396
|
+
const { count: totalCount, error: countError } = await db
|
|
6397
|
+
.from("relationship_snapshots")
|
|
6398
|
+
.select("*", { count: "exact", head: true })
|
|
6399
|
+
.or(`source_entity_id.eq.${node_id},target_entity_id.eq.${node_id}`)
|
|
6400
|
+
.eq("user_id", userId);
|
|
6401
|
+
const total = countError ? 0 : (totalCount ?? 0);
|
|
6402
|
+
result.total_count = total;
|
|
6403
|
+
result.has_more = offset + limit < total;
|
|
6357
6404
|
const { data: relationships, error: relError } = await db
|
|
6358
6405
|
.from("relationship_snapshots")
|
|
6359
6406
|
.select("*")
|
|
6360
|
-
.or(`source_entity_id.eq.${node_id},target_entity_id.eq.${node_id}`)
|
|
6407
|
+
.or(`source_entity_id.eq.${node_id},target_entity_id.eq.${node_id}`)
|
|
6408
|
+
.eq("user_id", userId)
|
|
6409
|
+
.range(offset, offset + limit - 1);
|
|
6361
6410
|
if (!relError) {
|
|
6362
6411
|
result.relationships = relationships || [];
|
|
6363
6412
|
const relatedEntityIds = Array.from(new Set((relationships || [])
|
|
@@ -6370,9 +6419,13 @@ app.post("/retrieve_graph_neighborhood", async (req, res) => {
|
|
|
6370
6419
|
const { data: relatedEntities, error: relatedEntitiesError } = await db
|
|
6371
6420
|
.from("entities")
|
|
6372
6421
|
.select("*")
|
|
6373
|
-
.in("id", relatedEntityIds)
|
|
6422
|
+
.in("id", relatedEntityIds)
|
|
6423
|
+
.eq("user_id", userId);
|
|
6374
6424
|
if (!relatedEntitiesError) {
|
|
6375
|
-
result.related_entities = relatedEntities || []
|
|
6425
|
+
result.related_entities = (relatedEntities || []).map(({ id, ...rest }) => ({
|
|
6426
|
+
entity_id: id,
|
|
6427
|
+
...rest,
|
|
6428
|
+
}));
|
|
6376
6429
|
}
|
|
6377
6430
|
}
|
|
6378
6431
|
}
|
|
@@ -6382,7 +6435,8 @@ app.post("/retrieve_graph_neighborhood", async (req, res) => {
|
|
|
6382
6435
|
const { data: observations, error: obsError } = await db
|
|
6383
6436
|
.from("observations")
|
|
6384
6437
|
.select("*")
|
|
6385
|
-
.eq("entity_id", node_id)
|
|
6438
|
+
.eq("entity_id", node_id)
|
|
6439
|
+
.eq("user_id", userId);
|
|
6386
6440
|
if (!obsError) {
|
|
6387
6441
|
result.observations = observations || [];
|
|
6388
6442
|
}
|
|
@@ -6394,7 +6448,8 @@ app.post("/retrieve_graph_neighborhood", async (req, res) => {
|
|
|
6394
6448
|
const { data: sources, error: srcError } = await db
|
|
6395
6449
|
.from("source")
|
|
6396
6450
|
.select("*")
|
|
6397
|
-
.in("id", sourceIds)
|
|
6451
|
+
.in("id", sourceIds)
|
|
6452
|
+
.eq("user_id", userId);
|
|
6398
6453
|
if (!srcError) {
|
|
6399
6454
|
result.sources = sources || [];
|
|
6400
6455
|
}
|
|
@@ -6407,6 +6462,7 @@ app.post("/retrieve_graph_neighborhood", async (req, res) => {
|
|
|
6407
6462
|
.from("source")
|
|
6408
6463
|
.select("*")
|
|
6409
6464
|
.eq("id", node_id)
|
|
6465
|
+
.eq("user_id", userId)
|
|
6410
6466
|
.single();
|
|
6411
6467
|
if (!srcError && source) {
|
|
6412
6468
|
result.source = source;
|
|
@@ -6416,7 +6472,8 @@ app.post("/retrieve_graph_neighborhood", async (req, res) => {
|
|
|
6416
6472
|
const { data: observations, error: obsError } = await db
|
|
6417
6473
|
.from("observations")
|
|
6418
6474
|
.select("*")
|
|
6419
|
-
.eq("source_id", node_id)
|
|
6475
|
+
.eq("source_id", node_id)
|
|
6476
|
+
.eq("user_id", userId);
|
|
6420
6477
|
if (!obsError) {
|
|
6421
6478
|
result.observations = observations || [];
|
|
6422
6479
|
}
|