@lerianstudio/matcher-mcp 5.0.0-beta.9 → 5.0.0-beta.91
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/README.md +28 -13
- package/dist/auth/request-token.js +11 -69
- package/dist/auth/request-token.js.map +1 -1
- package/dist/config.js +6 -21
- package/dist/config.js.map +1 -1
- package/dist/copilot/agent.js +5 -9
- package/dist/copilot/agent.js.map +1 -1
- package/dist/copilot/provider-anthropic.js +75 -23
- package/dist/copilot/provider-anthropic.js.map +1 -1
- package/dist/copilot/provider-openrouter.js +5 -18
- package/dist/copilot/provider-openrouter.js.map +1 -1
- package/dist/copilot/provider-shared.js +11 -0
- package/dist/copilot/provider-shared.js.map +1 -1
- package/dist/copilot/speech-provider.js +84 -0
- package/dist/copilot/speech-provider.js.map +1 -0
- package/dist/copilot/sse.js +5 -0
- package/dist/copilot/sse.js.map +1 -1
- package/dist/copilot/tools.js +14 -65
- package/dist/copilot/tools.js.map +1 -1
- package/dist/copilot/transcribe-handler.js +8 -93
- package/dist/copilot/transcribe-handler.js.map +1 -1
- package/dist/copilot/turn-request.js +76 -0
- package/dist/copilot/turn-request.js.map +1 -0
- package/dist/copilot/turns-handler.js +11 -102
- package/dist/copilot/turns-handler.js.map +1 -1
- package/dist/matcher/client.js +14 -0
- package/dist/matcher/client.js.map +1 -1
- package/dist/matcher/idempotency.js +94 -0
- package/dist/matcher/idempotency.js.map +1 -0
- package/dist/observability/otel.js +7 -29
- package/dist/observability/otel.js.map +1 -1
- package/dist/server.js +12 -81
- package/dist/server.js.map +1 -1
- package/dist/spec/curated-operations.js +111 -95
- package/dist/spec/curated-operations.js.map +1 -1
- package/dist/spec/enum-policy.js +21 -26
- package/dist/spec/enum-policy.js.map +1 -1
- package/dist/spec/openapi.yaml +844 -59
- package/dist/spec/schema-parity.js +23 -28
- package/dist/spec/schema-parity.js.map +1 -1
- package/dist/tools/context/create.js +3 -2
- package/dist/tools/context/create.js.map +1 -1
- package/dist/tools/context/index.js +137 -17
- package/dist/tools/context/index.js.map +1 -1
- package/dist/tools/context/list.js +9 -35
- package/dist/tools/context/list.js.map +1 -1
- package/dist/tools/context/setup-progress.js +3 -2
- package/dist/tools/context/setup-progress.js.map +1 -1
- package/dist/tools/context/shared.js +7 -48
- package/dist/tools/context/shared.js.map +1 -1
- package/dist/tools/context/update.js +5 -5
- package/dist/tools/context/update.js.map +1 -1
- package/dist/tools/curated-tool.js +39 -0
- package/dist/tools/curated-tool.js.map +1 -0
- package/dist/tools/dashboard/index.js +124 -19
- package/dist/tools/dashboard/index.js.map +1 -1
- package/dist/tools/dashboard/shared.js +9 -68
- package/dist/tools/dashboard/shared.js.map +1 -1
- package/dist/tools/dispute/close.js +5 -5
- package/dist/tools/dispute/close.js.map +1 -1
- package/dist/tools/dispute/index.js +34 -6
- package/dist/tools/dispute/index.js.map +1 -1
- package/dist/tools/dispute/list.js +18 -47
- package/dist/tools/dispute/list.js.map +1 -1
- package/dist/tools/dispute/shared.js +4 -43
- package/dist/tools/dispute/shared.js.map +1 -1
- package/dist/tools/dispute/submit-evidence.js +5 -5
- package/dist/tools/dispute/submit-evidence.js.map +1 -1
- package/dist/tools/exception/add-comment.js +3 -2
- package/dist/tools/exception/add-comment.js.map +1 -1
- package/dist/tools/exception/adjust-entry.js +5 -5
- package/dist/tools/exception/adjust-entry.js.map +1 -1
- package/dist/tools/exception/bulk-assign.js +3 -2
- package/dist/tools/exception/bulk-assign.js.map +1 -1
- package/dist/tools/exception/bulk-dispatch.js +12 -4
- package/dist/tools/exception/bulk-dispatch.js.map +1 -1
- package/dist/tools/exception/bulk-resolve.js +3 -2
- package/dist/tools/exception/bulk-resolve.js.map +1 -1
- package/dist/tools/exception/dispatch.js +13 -5
- package/dist/tools/exception/dispatch.js.map +1 -1
- package/dist/tools/exception/force-match.js +3 -2
- package/dist/tools/exception/force-match.js.map +1 -1
- package/dist/tools/exception/history.js +8 -24
- package/dist/tools/exception/history.js.map +1 -1
- package/dist/tools/exception/index.js +88 -18
- package/dist/tools/exception/index.js.map +1 -1
- package/dist/tools/exception/list.js +14 -57
- package/dist/tools/exception/list.js.map +1 -1
- package/dist/tools/exception/open-dispute.js +3 -2
- package/dist/tools/exception/open-dispute.js.map +1 -1
- package/dist/tools/exception/shared.js +10 -46
- package/dist/tools/exception/shared.js.map +1 -1
- package/dist/tools/fee-rule/create.js +5 -5
- package/dist/tools/fee-rule/create.js.map +1 -1
- package/dist/tools/fee-rule/index.js +50 -8
- package/dist/tools/fee-rule/index.js.map +1 -1
- package/dist/tools/fee-rule/list.js +9 -29
- package/dist/tools/fee-rule/list.js.map +1 -1
- package/dist/tools/fee-rule/shared.js +5 -47
- package/dist/tools/fee-rule/shared.js.map +1 -1
- package/dist/tools/fee-rule/update.js +5 -5
- package/dist/tools/fee-rule/update.js.map +1 -1
- package/dist/tools/fee-schedule/create.js +8 -3
- package/dist/tools/fee-schedule/create.js.map +1 -1
- package/dist/tools/fee-schedule/index.js +62 -11
- package/dist/tools/fee-schedule/index.js.map +1 -1
- package/dist/tools/fee-schedule/list.js +8 -24
- package/dist/tools/fee-schedule/list.js.map +1 -1
- package/dist/tools/fee-schedule/shared.js +5 -44
- package/dist/tools/fee-schedule/shared.js.map +1 -1
- package/dist/tools/fee-schedule/simulate.js +5 -5
- package/dist/tools/fee-schedule/simulate.js.map +1 -1
- package/dist/tools/fee-schedule/update.js +5 -5
- package/dist/tools/fee-schedule/update.js.map +1 -1
- package/dist/tools/field-map/create.js +3 -2
- package/dist/tools/field-map/create.js.map +1 -1
- package/dist/tools/field-map/index.js +65 -11
- package/dist/tools/field-map/index.js.map +1 -1
- package/dist/tools/field-map/list.js +9 -29
- package/dist/tools/field-map/list.js.map +1 -1
- package/dist/tools/field-map/shared.js +6 -42
- package/dist/tools/field-map/shared.js.map +1 -1
- package/dist/tools/field-map/update.js +3 -2
- package/dist/tools/field-map/update.js.map +1 -1
- package/dist/tools/generic/invoke.js +16 -39
- package/dist/tools/generic/invoke.js.map +1 -1
- package/dist/tools/ingestion/index.js +100 -12
- package/dist/tools/ingestion/index.js.map +1 -1
- package/dist/tools/ingestion/job-transactions-list.js +10 -40
- package/dist/tools/ingestion/job-transactions-list.js.map +1 -1
- package/dist/tools/ingestion/jobs-list.js +9 -35
- package/dist/tools/ingestion/jobs-list.js.map +1 -1
- package/dist/tools/ingestion/shared.js +4 -41
- package/dist/tools/ingestion/shared.js.map +1 -1
- package/dist/tools/ingestion/transactions-search.js +9 -44
- package/dist/tools/ingestion/transactions-search.js.map +1 -1
- package/dist/tools/ingestion/upload.js +3 -2
- package/dist/tools/ingestion/upload.js.map +1 -1
- package/dist/tools/input-fields.js +51 -0
- package/dist/tools/input-fields.js.map +1 -0
- package/dist/tools/match-rule/index.js +130 -13
- package/dist/tools/match-rule/index.js.map +1 -1
- package/dist/tools/match-rule/list.js +9 -33
- package/dist/tools/match-rule/list.js.map +1 -1
- package/dist/tools/match-rule/shared.js +16 -46
- package/dist/tools/match-rule/shared.js.map +1 -1
- package/dist/tools/match-rule/update.js +7 -11
- package/dist/tools/match-rule/update.js.map +1 -1
- package/dist/tools/matching/get.js +5 -5
- package/dist/tools/matching/get.js.map +1 -1
- package/dist/tools/matching/groups.js +6 -14
- package/dist/tools/matching/groups.js.map +1 -1
- package/dist/tools/matching/index.js +77 -5
- package/dist/tools/matching/index.js.map +1 -1
- package/dist/tools/matching/list.js +9 -32
- package/dist/tools/matching/list.js.map +1 -1
- package/dist/tools/matching/shared.js +5 -46
- package/dist/tools/matching/shared.js.map +1 -1
- package/dist/tools/query-handler.js +9 -0
- package/dist/tools/query-handler.js.map +1 -0
- package/dist/tools/report/index.js +260 -30
- package/dist/tools/report/index.js.map +1 -1
- package/dist/tools/report/shared.js +24 -98
- package/dist/tools/report/shared.js.map +1 -1
- package/dist/tools/request-fields.js +17 -0
- package/dist/tools/request-fields.js.map +1 -0
- package/dist/tools/shared-dispatch.js +38 -0
- package/dist/tools/shared-dispatch.js.map +1 -0
- package/dist/tools/source/create.js +146 -23
- package/dist/tools/source/create.js.map +1 -1
- package/dist/tools/source/index.js +101 -13
- package/dist/tools/source/index.js.map +1 -1
- package/dist/tools/source/list.js +9 -32
- package/dist/tools/source/list.js.map +1 -1
- package/dist/tools/source/shared.js +5 -42
- package/dist/tools/source/shared.js.map +1 -1
- package/dist/tools/source/update.js +16 -33
- package/dist/tools/source/update.js.map +1 -1
- package/dist/tools/workspace/usage.js +27 -41
- package/dist/tools/workspace/usage.js.map +1 -1
- package/package.json +4 -4
- package/dist/tools/context/archive.js +0 -37
- package/dist/tools/context/archive.js.map +0 -1
- package/dist/tools/context/get.js +0 -31
- package/dist/tools/context/get.js.map +0 -1
- package/dist/tools/context/next-step.js +0 -99
- package/dist/tools/context/next-step.js.map +0 -1
- package/dist/tools/context/restore.js +0 -34
- package/dist/tools/context/restore.js.map +0 -1
- package/dist/tools/dashboard/aggregates.js +0 -37
- package/dist/tools/dashboard/aggregates.js.map +0 -1
- package/dist/tools/dashboard/cash-impact.js +0 -37
- package/dist/tools/dashboard/cash-impact.js.map +0 -1
- package/dist/tools/dashboard/match-rate.js +0 -37
- package/dist/tools/dashboard/match-rate.js.map +0 -1
- package/dist/tools/dashboard/metrics.js +0 -37
- package/dist/tools/dashboard/metrics.js.map +0 -1
- package/dist/tools/dashboard/sla.js +0 -34
- package/dist/tools/dashboard/sla.js.map +0 -1
- package/dist/tools/dashboard/source-breakdown.js +0 -37
- package/dist/tools/dashboard/source-breakdown.js.map +0 -1
- package/dist/tools/dashboard/volume.js +0 -37
- package/dist/tools/dashboard/volume.js.map +0 -1
- package/dist/tools/dispute/get.js +0 -27
- package/dist/tools/dispute/get.js.map +0 -1
- package/dist/tools/exception/delete-comment.js +0 -40
- package/dist/tools/exception/delete-comment.js.map +0 -1
- package/dist/tools/exception/get.js +0 -34
- package/dist/tools/exception/get.js.map +0 -1
- package/dist/tools/exception/list-comments.js +0 -35
- package/dist/tools/exception/list-comments.js.map +0 -1
- package/dist/tools/fee-rule/delete.js +0 -27
- package/dist/tools/fee-rule/delete.js.map +0 -1
- package/dist/tools/fee-rule/get.js +0 -27
- package/dist/tools/fee-rule/get.js.map +0 -1
- package/dist/tools/fee-schedule/delete.js +0 -32
- package/dist/tools/fee-schedule/delete.js.map +0 -1
- package/dist/tools/fee-schedule/get.js +0 -30
- package/dist/tools/fee-schedule/get.js.map +0 -1
- package/dist/tools/field-map/delete.js +0 -37
- package/dist/tools/field-map/delete.js.map +0 -1
- package/dist/tools/field-map/get.js +0 -43
- package/dist/tools/field-map/get.js.map +0 -1
- package/dist/tools/ingestion/job-errors-list.js +0 -45
- package/dist/tools/ingestion/job-errors-list.js.map +0 -1
- package/dist/tools/ingestion/job-get.js +0 -42
- package/dist/tools/ingestion/job-get.js.map +0 -1
- package/dist/tools/ingestion/transaction-ignore.js +0 -51
- package/dist/tools/ingestion/transaction-ignore.js.map +0 -1
- package/dist/tools/match-rule/create.js +0 -67
- package/dist/tools/match-rule/create.js.map +0 -1
- package/dist/tools/match-rule/delete.js +0 -35
- package/dist/tools/match-rule/delete.js.map +0 -1
- package/dist/tools/match-rule/get.js +0 -32
- package/dist/tools/match-rule/get.js.map +0 -1
- package/dist/tools/match-rule/reorder.js +0 -45
- package/dist/tools/match-rule/reorder.js.map +0 -1
- package/dist/tools/matching/start.js +0 -81
- package/dist/tools/matching/start.js.map +0 -1
- package/dist/tools/report/count-exceptions.js +0 -46
- package/dist/tools/report/count-exceptions.js.map +0 -1
- package/dist/tools/report/count-matched.js +0 -47
- package/dist/tools/report/count-matched.js.map +0 -1
- package/dist/tools/report/count-transactions.js +0 -45
- package/dist/tools/report/count-transactions.js.map +0 -1
- package/dist/tools/report/count-unmatched.js +0 -45
- package/dist/tools/report/count-unmatched.js.map +0 -1
- package/dist/tools/report/export-exceptions.js +0 -48
- package/dist/tools/report/export-exceptions.js.map +0 -1
- package/dist/tools/report/export-matched.js +0 -49
- package/dist/tools/report/export-matched.js.map +0 -1
- package/dist/tools/report/export-summary.js +0 -49
- package/dist/tools/report/export-summary.js.map +0 -1
- package/dist/tools/report/export-unmatched.js +0 -49
- package/dist/tools/report/export-unmatched.js.map +0 -1
- package/dist/tools/report/export-variance.js +0 -48
- package/dist/tools/report/export-variance.js.map +0 -1
- package/dist/tools/report/matched.js +0 -48
- package/dist/tools/report/matched.js.map +0 -1
- package/dist/tools/report/summary.js +0 -43
- package/dist/tools/report/summary.js.map +0 -1
- package/dist/tools/report/unmatched.js +0 -48
- package/dist/tools/report/unmatched.js.map +0 -1
- package/dist/tools/report/variance.js +0 -48
- package/dist/tools/report/variance.js.map +0 -1
- package/dist/tools/source/archive.js +0 -46
- package/dist/tools/source/archive.js.map +0 -1
- package/dist/tools/source/get.js +0 -57
- package/dist/tools/source/get.js.map +0 -1
- package/dist/tools/source/restore.js +0 -39
- package/dist/tools/source/restore.js.map +0 -1
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AACA,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,12 +12,14 @@
|
|
|
12
12
|
// tautological w.r.t. the spec. So if matcher renames or removes an
|
|
13
13
|
// operation, a curated tool silently keeps sending the stale contract.
|
|
14
14
|
//
|
|
15
|
-
// This file closes that gap: it is the single, hand-curated
|
|
16
|
-
//
|
|
17
|
-
// leave to generic-invoke
|
|
18
|
-
// against the real spec —
|
|
19
|
-
//
|
|
20
|
-
//
|
|
15
|
+
// This file closes that gap: it is the single, hand-curated map from the
|
|
16
|
+
// operationId each curated tool covers to the `METHOD path` that tool
|
|
17
|
+
// dispatches, plus the operationIds we deliberately leave to generic-invoke
|
|
18
|
+
// only. `curated-operations.test.ts` keeps it honest against the real spec —
|
|
19
|
+
// STRUCTURAL drift (a covered op no longer exists), COVERAGE drift (a new op
|
|
20
|
+
// nobody triaged) and DISPATCH drift (the spec moved the method or the path
|
|
21
|
+
// while keeping the operationId) all fail that test. It does NOT attempt deep
|
|
22
|
+
// Zod-vs-JSONSchema field equivalence — that is out of scope and a
|
|
21
23
|
// false-positive factory; this is a cheap "layer 1" tripwire.
|
|
22
24
|
//
|
|
23
25
|
// HOW IT WAS DERIVED (and how to keep it correct)
|
|
@@ -25,110 +27,120 @@
|
|
|
25
27
|
// (see each `src/tools/<family>/*.ts` and its `shared.ts` path helper) against
|
|
26
28
|
// the spec's method+path → operationId map. It is NOT copied from any external
|
|
27
29
|
// list. When a curated tool is added/removed/retargeted, update the matching
|
|
28
|
-
//
|
|
30
|
+
// entry below and re-run `curated-operations.test.ts`.
|
|
29
31
|
/**
|
|
30
|
-
* Every operationId covered by a curated Zod tool,
|
|
31
|
-
*
|
|
32
|
+
* Every operationId covered by a curated Zod tool, mapped to the `METHOD path`
|
|
33
|
+
* that tool dispatches, grouped by tool family. Order within a family follows
|
|
34
|
+
* the tool files; the test treats the keys as a set and the values as the
|
|
35
|
+
* reconciliation target.
|
|
36
|
+
*
|
|
37
|
+
* The value is DATA, not prose: `curated-operations.test.ts` asserts each one
|
|
38
|
+
* against `index.operations.get(id)`, so a matcher release that renames a path
|
|
39
|
+
* while keeping the operationId turns this file red instead of leaving the tool
|
|
40
|
+
* dispatching to a dead route. Keep it the only copy — the tool sources build
|
|
41
|
+
* their paths from `shared.ts` helpers, so do not re-state it there.
|
|
32
42
|
*/
|
|
33
|
-
export const
|
|
43
|
+
export const CURATED_OPERATIONS = {
|
|
34
44
|
// fee-schedule (src/tools/fee-schedule/) — 6
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
45
|
+
createFeeSchedule: 'POST /v1/fee-schedules', // fee_schedule_create
|
|
46
|
+
deleteFeeSchedule: 'DELETE /v1/fee-schedules/{scheduleId}', // fee_schedule_delete
|
|
47
|
+
getFeeSchedule: 'GET /v1/fee-schedules/{scheduleId}', // fee_schedule_get
|
|
48
|
+
listFeeSchedules: 'GET /v1/fee-schedules', // fee_schedule_list
|
|
49
|
+
simulateFeeSchedule: 'POST /v1/fee-schedules/{scheduleId}/simulate', // fee_schedule_simulate
|
|
50
|
+
updateFeeSchedule: 'PATCH /v1/fee-schedules/{scheduleId}', // fee_schedule_update
|
|
41
51
|
// fee-rule (src/tools/fee-rule/) — 5
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
52
|
+
createFeeRule: 'POST /v1/contexts/{contextId}/fee-rules', // fee_rule_create
|
|
53
|
+
deleteFeeRule: 'DELETE /v1/fee-rules/{feeRuleId}', // fee_rule_delete
|
|
54
|
+
getFeeRule: 'GET /v1/fee-rules/{feeRuleId}', // fee_rule_get
|
|
55
|
+
listFeeRules: 'GET /v1/contexts/{contextId}/fee-rules', // fee_rule_list
|
|
56
|
+
updateFeeRule: 'PATCH /v1/fee-rules/{feeRuleId}', // fee_rule_update
|
|
47
57
|
// match-rule (src/tools/match-rule/) — 6
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
58
|
+
createMatchRule: 'POST /v1/contexts/{contextId}/rules', // match_rule_create
|
|
59
|
+
deleteMatchRule: 'DELETE /v1/contexts/{contextId}/rules/{ruleId}', // match_rule_delete
|
|
60
|
+
getMatchRule: 'GET /v1/contexts/{contextId}/rules/{ruleId}', // match_rule_get
|
|
61
|
+
listMatchRules: 'GET /v1/contexts/{contextId}/rules', // match_rule_list
|
|
62
|
+
reorderMatchRules: 'POST /v1/contexts/{contextId}/rules/reorder', // match_rule_reorder
|
|
63
|
+
updateMatchRule: 'PATCH /v1/contexts/{contextId}/rules/{ruleId}', // match_rule_update
|
|
54
64
|
// context (src/tools/context/) — 7 (delete removed: hard-delete → archive/restore lifecycle, now curated — F12)
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
65
|
+
createContext: 'POST /v1/contexts', // context_create
|
|
66
|
+
getContext: 'GET /v1/contexts/{contextId}', // context_get
|
|
67
|
+
listContexts: 'GET /v1/contexts', // context_list
|
|
68
|
+
updateContext: 'PATCH /v1/contexts/{contextId}', // context_update
|
|
69
|
+
archiveContext: 'POST /v1/contexts/{contextId}/archive', // context_archive (F12)
|
|
70
|
+
restoreContext: 'POST /v1/contexts/{contextId}/restore', // context_restore (F12)
|
|
71
|
+
getSetupProgress: 'GET /v1/contexts/{contextId}/setup-progress', // context_setup_progress (F3 fix)
|
|
62
72
|
// source (src/tools/source/) — 6 (delete removed: hard-delete → archive/restore lifecycle, now curated — F12)
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
73
|
+
createSource: 'POST /v1/contexts/{contextId}/sources', // source_create
|
|
74
|
+
getSource: 'GET /v1/contexts/{contextId}/sources/{sourceId}', // source_get
|
|
75
|
+
listSources: 'GET /v1/contexts/{contextId}/sources', // source_list
|
|
76
|
+
updateSource: 'PATCH /v1/contexts/{contextId}/sources/{sourceId}', // source_update
|
|
77
|
+
archiveSource: 'POST /v1/contexts/{contextId}/sources/{sourceId}/archive', // source_archive (F12)
|
|
78
|
+
restoreSource: 'POST /v1/contexts/{contextId}/sources/{sourceId}/restore', // source_restore (F12)
|
|
69
79
|
// field-map (src/tools/field-map/) — 5 (N3/N4/F6 fix: previously UNCOVERED)
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
80
|
+
createFieldMap: 'POST /v1/contexts/{contextId}/sources/{sourceId}/field-maps', // field_map_create
|
|
81
|
+
getFieldMapBySource: 'GET /v1/contexts/{contextId}/sources/{sourceId}/field-maps', // field_map_get
|
|
82
|
+
listContextFieldMaps: 'GET /v1/contexts/{contextId}/field-maps', // field_map_list
|
|
83
|
+
updateFieldMap: 'PATCH /v1/field-maps/{fieldMapId}', // field_map_update
|
|
84
|
+
deleteFieldMap: 'DELETE /v1/field-maps/{fieldMapId}', // field_map_delete
|
|
75
85
|
// matching (src/tools/matching/) — 4
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
86
|
+
getMatchRun: 'GET /v1/matching/runs/{runId}', // match_run_get
|
|
87
|
+
getMatchRunGroups: 'GET /v1/matching/runs/{runId}/groups', // match_run_groups
|
|
88
|
+
listMatchRuns: 'GET /v1/matching/contexts/{contextId}/runs', // match_run_list
|
|
89
|
+
runMatch: 'POST /v1/matching/contexts/{contextId}/run', // match_run_start
|
|
80
90
|
// exception (src/tools/exception/) — 13
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
91
|
+
addComment: 'POST /v1/exceptions/{exceptionId}/comments', // exception_add_comment
|
|
92
|
+
adjustEntryException: 'POST /v1/exceptions/{exceptionId}/adjust-entry', // exception_adjust_entry
|
|
93
|
+
bulkAssignExceptions: 'POST /v1/exceptions/bulk/assign', // exception_bulk_assign
|
|
94
|
+
bulkDispatchExceptions: 'POST /v1/exceptions/bulk/dispatch', // exception_bulk_dispatch
|
|
95
|
+
bulkResolveExceptions: 'POST /v1/exceptions/bulk/resolve', // exception_bulk_resolve
|
|
96
|
+
deleteComment: 'DELETE /v1/exceptions/{exceptionId}/comments/{commentId}', // exception_delete_comment
|
|
97
|
+
dispatchException: 'POST /v1/exceptions/{exceptionId}/dispatch', // exception_dispatch
|
|
98
|
+
forceMatchException: 'POST /v1/exceptions/{exceptionId}/force-match', // exception_force_match
|
|
99
|
+
getException: 'GET /v1/exceptions/{exceptionId}', // exception_get
|
|
100
|
+
getExceptionHistory: 'GET /v1/exceptions/{exceptionId}/history', // exception_history
|
|
101
|
+
listComments: 'GET /v1/exceptions/{exceptionId}/comments', // exception_list_comments
|
|
102
|
+
listExceptions: 'GET /v1/exceptions', // exception_list
|
|
103
|
+
openDispute: 'POST /v1/exceptions/{exceptionId}/disputes', // exception_open_dispute
|
|
94
104
|
// dispute (src/tools/dispute/) — 4
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
105
|
+
closeDispute: 'POST /v1/disputes/{disputeId}/close', // dispute_close
|
|
106
|
+
getDispute: 'GET /v1/disputes/{disputeId}', // dispute_get
|
|
107
|
+
listDisputes: 'GET /v1/disputes', // dispute_list
|
|
108
|
+
submitEvidence: 'POST /v1/disputes/{disputeId}/evidence', // dispute_submit_evidence
|
|
99
109
|
// ingestion (src/tools/ingestion/) — 7
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
110
|
+
listIngestionJobErrors: 'GET /v1/imports/contexts/{contextId}/jobs/{jobId}/errors', // ingestion_job_errors_list
|
|
111
|
+
getIngestionJob: 'GET /v1/imports/contexts/{contextId}/jobs/{jobId}', // ingestion_job_get
|
|
112
|
+
listJobTransactions: 'GET /v1/imports/contexts/{contextId}/jobs/{jobId}/transactions', // ingestion_job_transactions_list
|
|
113
|
+
listIngestionJobs: 'GET /v1/imports/contexts/{contextId}/jobs', // ingestion_jobs_list
|
|
114
|
+
ignoreTransaction: 'POST /v1/imports/contexts/{contextId}/transactions/{transactionId}/ignore', // ingestion_transaction_ignore
|
|
115
|
+
searchTransactions: 'GET /v1/imports/contexts/{contextId}/transactions/search', // ingestion_transactions_search
|
|
116
|
+
uploadFile: 'POST /v1/imports/contexts/{contextId}/sources/{sourceId}/upload', // ingestion_upload (base64-in-JSON; relay rebuilds multipart)
|
|
107
117
|
// dashboard (src/tools/dashboard/) — 7
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
118
|
+
getDashboardAggregates: 'GET /v1/reports/contexts/{contextId}/dashboard', // dashboard_aggregates
|
|
119
|
+
getCashImpactSummary: 'GET /v1/reports/contexts/{contextId}/dashboard/cash-impact', // dashboard_cash_impact
|
|
120
|
+
getMatchRateStats: 'GET /v1/reports/contexts/{contextId}/dashboard/match-rate', // dashboard_match_rate
|
|
121
|
+
getMatcherDashboardMetrics: 'GET /v1/reports/contexts/{contextId}/dashboard/metrics', // dashboard_metrics
|
|
122
|
+
getSLAStats: 'GET /v1/reports/contexts/{contextId}/dashboard/sla', // dashboard_sla
|
|
123
|
+
getSourceBreakdown: 'GET /v1/reports/contexts/{contextId}/dashboard/source-breakdown', // dashboard_source_breakdown
|
|
124
|
+
getVolumeStats: 'GET /v1/reports/contexts/{contextId}/dashboard/volume', // dashboard_volume
|
|
115
125
|
// report (src/tools/report/) — 13
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
126
|
+
countExceptions: 'GET /v1/reports/contexts/{contextId}/exceptions/count', // report_count_exceptions
|
|
127
|
+
countMatched: 'GET /v1/reports/contexts/{contextId}/matches/count', // report_count_matched
|
|
128
|
+
countTransactions: 'GET /v1/reports/contexts/{contextId}/transactions/count', // report_count_transactions
|
|
129
|
+
countUnmatched: 'GET /v1/reports/contexts/{contextId}/unmatched/count', // report_count_unmatched
|
|
130
|
+
exportExceptionsReport: 'GET /v1/reports/contexts/{contextId}/exceptions/export', // report_export_exceptions
|
|
131
|
+
exportMatchedReport: 'GET /v1/reports/contexts/{contextId}/matched/export', // report_export_matched
|
|
132
|
+
exportSummaryReport: 'GET /v1/reports/contexts/{contextId}/summary/export', // report_export_summary
|
|
133
|
+
exportUnmatchedReport: 'GET /v1/reports/contexts/{contextId}/unmatched/export', // report_export_unmatched
|
|
134
|
+
exportVarianceReport: 'GET /v1/reports/contexts/{contextId}/variance/export', // report_export_variance
|
|
135
|
+
getMatchedReport: 'GET /v1/reports/contexts/{contextId}/matched', // report_matched
|
|
136
|
+
getSummaryReport: 'GET /v1/reports/contexts/{contextId}/summary', // report_summary
|
|
137
|
+
getUnmatchedReport: 'GET /v1/reports/contexts/{contextId}/unmatched', // report_unmatched
|
|
138
|
+
getVarianceReport: 'GET /v1/reports/contexts/{contextId}/variance', // report_variance
|
|
129
139
|
// workspace (src/tools/workspace/) — 1 (standalone-SaaS Phase 3)
|
|
130
|
-
'workspace-billing'
|
|
131
|
-
|
|
140
|
+
'workspace-billing': 'GET /v1/workspace/billing', // workspace_usage (tenant from the token)
|
|
141
|
+
};
|
|
142
|
+
/** Just the covered operationIds, keeping the literal union the policy tables need. */
|
|
143
|
+
export const CURATED_OPERATION_IDS = Object.keys(CURATED_OPERATIONS);
|
|
132
144
|
/**
|
|
133
145
|
* Operations DELIBERATELY left to generic-invoke only — a JSON-shaped curated
|
|
134
146
|
* tool can't (or shouldn't) express them. Each carries the reason inline. The
|
|
@@ -172,6 +184,10 @@ export const GENERIC_ONLY_OPERATION_IDS = [
|
|
|
172
184
|
// required knowing the operationId.)
|
|
173
185
|
'admin-suspend-workspace', // PUT /v1/admin/workspaces/{slug}/suspend
|
|
174
186
|
'admin-reactivate-workspace', // PUT /v1/admin/workspaces/{slug}/reactivate
|
|
187
|
+
// The enterprise plan assignment joins its two siblings above, and is the one of the
|
|
188
|
+
// four an agent must least be able to reach: it changes what a company is charged, on
|
|
189
|
+
// a workspace named in the path rather than in the caller's own token.
|
|
190
|
+
'admin-assign-workspace-plan', // PUT /v1/admin/workspaces/{slug}/plan
|
|
175
191
|
// The backoffice invoicing read belongs with its two siblings above and NOT with the
|
|
176
192
|
// curated tools, for a reason stronger than "it is an operator surface": it is
|
|
177
193
|
// addressed by slug and answers with another company's name, address and CPF/CNPJ.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curated-operations.js","sourceRoot":"","sources":["../../src/spec/curated-operations.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,wDAAwD;AACxD,EAAE;AACF,kBAAkB;AAClB,uEAAuE;AACvE,gFAAgF;AAChF,4EAA4E;AAC5E,2EAA2E;AAC3E,+EAA+E;AAC/E,4EAA4E;AAC5E,+EAA+E;AAC/E,yEAAyE;AACzE,4EAA4E;AAC5E,EAAE;AACF,
|
|
1
|
+
{"version":3,"file":"curated-operations.js","sourceRoot":"","sources":["../../src/spec/curated-operations.ts"],"names":[],"mappings":"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"}
|
package/dist/spec/enum-policy.js
CHANGED
|
@@ -1,29 +1,8 @@
|
|
|
1
|
-
// Enum
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
// A curated tool models a field as a CLOSED Zod enum only for a closed,
|
|
7
|
-
// slow-moving algebra — comparison operators, context cardinality (1:1|1:N|N:M),
|
|
8
|
-
// fee normalization (NET|GROSS), lifecycle status transitions, fee-rule sides,
|
|
9
|
-
// sort orders, and the like. Anything that GROWS — business-day calendars,
|
|
10
|
-
// metadata field names, connection/config names, exception reason codes, format
|
|
11
|
-
// tokens that expand — is typed as a free `string` whose `.describe()` enumerates
|
|
12
|
-
// the CURRENT known values as a hint. Rationale: a closed enum that lags the
|
|
13
|
-
// backend REJECTS A VALID BACKEND VALUE at the client — strictly worse than a
|
|
14
|
-
// free string that lets the backend do final validation.
|
|
15
|
-
//
|
|
16
|
-
// HOW THE GATE USES THESE
|
|
17
|
-
// The parity gate compares each curated tool field against the spec. Two
|
|
18
|
-
// divergences are legitimate and must be declared here or the gate fails:
|
|
19
|
-
// - INTENTIONALLY_OPEN_FIELDS: the spec declares an enum but the tool
|
|
20
|
-
// deliberately types the field as a free string (a growing taxonomy).
|
|
21
|
-
// - INTENTIONALLY_OMITTED_FIELDS: a spec request-body/query field the curated
|
|
22
|
-
// tool deliberately does not expose (curation is opinionated). `reason` is
|
|
23
|
-
// required so the omission is a considered call, not an oversight.
|
|
24
|
-
//
|
|
25
|
-
// Both lists are EMPTY BY DEFAULT — add an entry only with a real, reasoned case.
|
|
26
|
-
// `operationId` is compile-time constrained to a real curated operation.
|
|
1
|
+
// Enum-parity exceptions; full policy: docs/enum-policy.md.
|
|
2
|
+
// Closed, stable algebras use Zod enums. Growing taxonomies use strings with
|
|
3
|
+
// current values as descriptive hints, so new backend values are not rejected.
|
|
4
|
+
// Exceptions name real curated operations; omissions/injected fields require
|
|
5
|
+
// reasons. Never add an exception merely to silence unexplained contract drift.
|
|
27
6
|
import { CURATED_OPERATION_IDS } from './curated-operations.js';
|
|
28
7
|
/**
|
|
29
8
|
* Spec-enum fields the curated tools deliberately type as a free string because
|
|
@@ -71,6 +50,22 @@ export const INTENTIONALLY_OMITTED_FIELDS = [
|
|
|
71
50
|
{ operationId: 'createContext', fieldPath: 'sources[].side', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
72
51
|
{ operationId: 'createContext', fieldPath: 'sources[].config', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
73
52
|
{ operationId: 'createContext', fieldPath: 'sources[].mapping', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
53
|
+
// Exact-path matching: the parent config exemption does not cover children.
|
|
54
|
+
// Inline sources remain opaque; source_create/source_update type these fields.
|
|
55
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.dialect', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
56
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.dialect.encoding', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
57
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.dialect.delimiter', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
58
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.dialect.decimal_style', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
59
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.dialect.date_style', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
60
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.duplicate_policy', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
61
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.duplicate_key', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
62
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.blank_external_id', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
63
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.camt053', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
64
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.camt053.date_basis', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
65
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.camt053.external_id_source', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
66
|
+
{ operationId: 'createContext', fieldPath: 'sources[].config.fail_on_error_rate_percent', reason: 'inline sources[] passed through as an opaque record; matcher validates' },
|
|
67
|
+
// duplicate_key_changed_at is response-only: no request-schema exemption.
|
|
68
|
+
// Matcher discards client-sent stamps; do not reject valid read-modify-writes.
|
|
74
69
|
];
|
|
75
70
|
/**
|
|
76
71
|
* Spec-required fields the curated tools satisfy by INJECTING the value in the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enum-policy.js","sourceRoot":"","sources":["../../src/spec/enum-policy.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"enum-policy.js","sourceRoot":"","sources":["../../src/spec/enum-policy.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,gFAAgF;AAEhF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAuC/D;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAsC;IAC1E,2EAA2E;IAC3E,8EAA8E;IAC9E,4DAA4D;IAC5D,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE;IACtD,4EAA4E;IAC5E,8DAA8D;IAC9D,mCAAmC;IACnC,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE;CACnD,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAyC;IAChF,uEAAuE;IACvE,gFAAgF;IAChF,+EAA+E;IAC/E,0EAA0E;IAC1E,4EAA4E;IAC5E,iFAAiF;IACjF,gFAAgF;IAChF,sEAAsE;IACtE,iCAAiC;IACjC,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,sEAAsE,EAAE;IAC/I,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,sEAAsE,EAAE;IAC3I,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,sEAAsE,EAAE;IAC7I,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAC/I,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAC/I,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAC/I,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,wEAAwE,EAAE;IACjJ,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAClJ,4EAA4E;IAC5E,+EAA+E;IAC/E,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,0BAA0B,EAAE,MAAM,EAAE,wEAAwE,EAAE;IACzJ,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,mCAAmC,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAClK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,oCAAoC,EAAE,MAAM,EAAE,wEAAwE,EAAE;IACnK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,wCAAwC,EAAE,MAAM,EAAE,wEAAwE,EAAE;IACvK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,qCAAqC,EAAE,MAAM,EAAE,wEAAwE,EAAE;IACpK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,mCAAmC,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAClK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,gCAAgC,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAC/J,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,oCAAoC,EAAE,MAAM,EAAE,wEAAwE,EAAE;IACnK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,0BAA0B,EAAE,MAAM,EAAE,wEAAwE,EAAE;IACzJ,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,qCAAqC,EAAE,MAAM,EAAE,wEAAwE,EAAE;IACpK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,6CAA6C,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAC5K,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,6CAA6C,EAAE,MAAM,EAAE,wEAAwE,EAAE;IAC5K,0EAA0E;IAC1E,+EAA+E;CAChF,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sCAAsC,GACjD,EAAE,CAAA"}
|