@enfyra/mcp-server 0.1.73 → 0.1.74

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.
Files changed (54) hide show
  1. package/README.md +4 -0
  2. package/dist/index.js +2 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/lib/auth.d.ts +6 -31
  5. package/dist/lib/auth.js +6 -34
  6. package/dist/lib/auth.js.map +1 -1
  7. package/dist/lib/config-local-adapters.d.ts +10 -3
  8. package/dist/lib/config-local-adapters.js +70 -6
  9. package/dist/lib/config-local-adapters.js.map +1 -1
  10. package/dist/lib/config-local-contracts.d.ts +1 -1
  11. package/dist/lib/config-local-contracts.js +13 -0
  12. package/dist/lib/config-local-contracts.js.map +1 -1
  13. package/dist/lib/config-local-types.d.ts +5 -0
  14. package/dist/lib/config-local.js +2 -2
  15. package/dist/lib/config-local.js.map +1 -1
  16. package/dist/lib/discovery-tools.js +2 -1
  17. package/dist/lib/discovery-tools.js.map +1 -1
  18. package/dist/lib/enfyra-mcp-server.js +12 -1
  19. package/dist/lib/enfyra-mcp-server.js.map +1 -1
  20. package/dist/lib/fetch.js +1 -1
  21. package/dist/lib/fetch.js.map +1 -1
  22. package/dist/lib/mcp-example-queries-deep.js +15 -0
  23. package/dist/lib/mcp-example-queries-deep.js.map +1 -1
  24. package/dist/lib/mcp-instructions.js +6 -9
  25. package/dist/lib/mcp-instructions.js.map +1 -1
  26. package/dist/lib/query-contract-types.d.ts +33 -0
  27. package/dist/lib/query-contract-types.js +2 -0
  28. package/dist/lib/query-contract-types.js.map +1 -0
  29. package/dist/lib/query-contract.d.ts +2 -0
  30. package/dist/lib/query-contract.js +183 -0
  31. package/dist/lib/query-contract.js.map +1 -0
  32. package/dist/lib/record-tools.js +28 -6
  33. package/dist/lib/record-tools.js.map +1 -1
  34. package/dist/lib/required-knowledge.js +3 -2
  35. package/dist/lib/required-knowledge.js.map +1 -1
  36. package/dist/lib/rest-projection-types.d.ts +23 -0
  37. package/dist/lib/rest-projection-types.js +2 -0
  38. package/dist/lib/rest-projection-types.js.map +1 -0
  39. package/dist/lib/rest-projection.d.ts +58 -0
  40. package/dist/lib/rest-projection.js +225 -0
  41. package/dist/lib/rest-projection.js.map +1 -0
  42. package/dist/lib/runtime-cache-socket.js +6 -1
  43. package/dist/lib/runtime-cache-socket.js.map +1 -1
  44. package/dist/lib/runtime-zone-search.js +2 -2
  45. package/dist/lib/runtime-zone-search.js.map +1 -1
  46. package/dist/lib/tool-output-contracts.js +25 -0
  47. package/dist/lib/tool-output-contracts.js.map +1 -1
  48. package/dist/lib/toolset-filter.js +1 -1
  49. package/dist/lib/toolset-filter.js.map +1 -1
  50. package/dist/lib/workflow-definitions.js +5 -5
  51. package/dist/lib/workflow-definitions.js.map +1 -1
  52. package/dist/lib/workflow-planner.js +1 -1
  53. package/dist/lib/workflow-planner.js.map +1 -1
  54. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"record-tools.js","sourceRoot":"","sources":["../../src/lib/record-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record-tools.js","sourceRoot":"","sources":["../../src/lib/record-tools.ts"],"names":[],"mappings":"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"}
@@ -151,7 +151,7 @@ const GLOBAL_RULES_SECTIONS = [
151
151
  'When inserting/updating records with relations, use relation propertyName values in the body, not hidden physical FK columns. Inspect the table to learn propertyName values.',
152
152
  'For record writes, always use create_records/update_records/delete_records with native array inputs; these tools validate every item against live metadata before posting/patching/deleting sequentially.',
153
153
  'Generic record CRUD cannot mutate domain-owned structure rows in enfyra_table, enfyra_column, enfyra_relation, or enfyra_route. Use the table/column/relation tools or API endpoint/route tools so physical changes, dependencies, reloads, and previews stay correct.',
154
- 'For reads, query_table accepts native object filter/deep/aggregate values. Deep keys are relation names; query_table auto-adds missing top-level deep relation keys to fields so nested records can appear. Inside deep, use fields/filter/sort/limit/page/deep; never use _fields.',
154
+ 'For reads, query_table accepts native object filter/deep/aggregate values. Deep keys are relation names; query_table auto-adds missing top-level deep relation keys to fields so nested records can appear. Explicit dotted fields and fields inside deep are recursively checked against each relation target metadata before the REST request. Inside deep, use fields/filter/sort/limit/page/deep; never use _fields.',
155
155
  'Filters use Enfyra operators, not SQL operators. Use _contains, _starts_with, or _ends_with for text matching; do not use _like.',
156
156
  'This auto-add behavior is MCP query_table only. Inside dynamic server scripts, repository find({ deep }) requires the relation property to also be present in top-level fields, otherwise row.<relation> may be undefined.',
157
157
  'For table schema, a field that appears in any uniques group, including composite unique groups such as ["event","attendee"], must not appear in indexes.',
@@ -160,6 +160,7 @@ const GLOBAL_RULES_SECTIONS = [
160
160
  'create_tables preflights all items before posting tables and rejects unique/index overlap for the whole batch; update_tables applies the same guard before patching constraints.',
161
161
  'Before update_tables with indexes/uniques, inspect the current table and remove indexes that reference unique fields.',
162
162
  'query_table always requires limit or all=true. Use meta=filterCount/totalCount or count_records for counts. Do not guess aggregate operators such as _sum/_count; call discover_query_capabilities first when an aggregate object is needed.',
163
+ 'When a field is missing, permission-dependent, or unexpectedly public, use inspect_rest_projection with explicit fields. It validates the recursive metadata contract first and can compare authenticated and anonymous response shape without returning record values.',
163
164
  'Run schema mutation calls through the plural tools; they serialize work internally. Do not parallelize schema mutation tool calls.',
164
165
  ],
165
166
  },
@@ -212,7 +213,7 @@ const DYNAMIC_CODE_SECTIONS = [
212
213
  'Unpublished fields and private relations are sensitive even when the field is not selected.',
213
214
  'Do not expose filter predicate-oracle behavior over hidden fields in user-facing endpoints.',
214
215
  'Do not expose aggregate, _max, _min, _count, sort helpers, or counts over unpublished fields/private relations unless the endpoint intentionally exposes that fact.',
215
- 'If a normal REST read returns an isPublished=false field through fields/deep/dotted projection, treat it as an Enfyra core bug and verify the minimal REST repro.',
216
+ 'If a normal REST read returns an isPublished=false field through fields/deep/dotted projection, use inspect_rest_projection to verify the metadata contract and authenticated/anonymous response shape. Treat confirmed anonymous exposure as an Enfyra core bug.',
216
217
  ],
217
218
  },
218
219
  {
@@ -1 +1 @@
1
- {"version":3,"file":"required-knowledge.js","sourceRoot":"","sources":["../../src/lib/required-knowledge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"required-knowledge.js","sourceRoot":"","sources":["../../src/lib/required-knowledge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { UnknownRecord } from './types.js';
2
+ export type RestProjectionAccess = 'authenticated' | 'anonymous' | 'compare';
3
+ export type ProjectionPathPresence = 'present' | 'missing' | 'indeterminate' | 'no_rows' | 'not_evaluated';
4
+ export interface RestProjectionHttpResponse {
5
+ ok: boolean;
6
+ status: number;
7
+ statusText: string;
8
+ body: unknown;
9
+ }
10
+ export interface InspectRestProjectionInput {
11
+ tableName: string;
12
+ fields: string[];
13
+ routePath?: string;
14
+ filter?: UnknownRecord;
15
+ sort?: string;
16
+ deep?: UnknownRecord;
17
+ limit?: number;
18
+ access?: RestProjectionAccess;
19
+ }
20
+ export interface RestProjectionDependencies {
21
+ loadTable?: (tableName: string) => Promise<UnknownRecord>;
22
+ request?: (url: string, authenticated: boolean) => Promise<RestProjectionHttpResponse>;
23
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=rest-projection-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rest-projection-types.js","sourceRoot":"","sources":["../../src/lib/rest-projection-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,58 @@
1
+ import type { InspectRestProjectionInput, ProjectionPathPresence, RestProjectionDependencies } from './rest-projection-types.js';
2
+ export declare function inspectRestProjection(apiUrl: string, input: InspectRestProjectionInput, dependencies?: RestProjectionDependencies): Promise<{
3
+ action: string;
4
+ tableName: string;
5
+ access: import("./rest-projection-types.js").RestProjectionAccess;
6
+ verdict: string;
7
+ contractError: string;
8
+ requestExecuted: boolean;
9
+ request?: undefined;
10
+ schemaReceipt?: undefined;
11
+ authenticated?: undefined;
12
+ anonymous?: undefined;
13
+ differences?: undefined;
14
+ } | {
15
+ action: string;
16
+ tableName: string;
17
+ access: import("./rest-projection-types.js").RestProjectionAccess;
18
+ verdict: string;
19
+ requestExecuted: boolean;
20
+ request: {
21
+ method: string;
22
+ path: string;
23
+ fields: any[];
24
+ autoAddedDeepFields: any[];
25
+ limit: number;
26
+ filterApplied: boolean;
27
+ deepApplied: boolean;
28
+ };
29
+ schemaReceipt: any;
30
+ authenticated: {
31
+ ok: boolean;
32
+ status: number;
33
+ statusText: string;
34
+ rowCount: number;
35
+ responseKeys: string[];
36
+ firstRowKeys: string[];
37
+ pathPresence: {
38
+ path: string;
39
+ presence: ProjectionPathPresence;
40
+ isPublished: boolean;
41
+ }[];
42
+ };
43
+ anonymous: {
44
+ ok: boolean;
45
+ status: number;
46
+ statusText: string;
47
+ rowCount: number;
48
+ responseKeys: string[];
49
+ firstRowKeys: string[];
50
+ pathPresence: {
51
+ path: string;
52
+ presence: ProjectionPathPresence;
53
+ isPublished: boolean;
54
+ }[];
55
+ };
56
+ differences: any;
57
+ contractError?: undefined;
58
+ }>;
@@ -0,0 +1,225 @@
1
+ import { getValidToken } from './auth.js';
2
+ import { fetchTableMetadata } from './metadata-client.js';
3
+ import { validateQueryContract } from './query-contract.js';
4
+ import { applyDeepFieldSelections } from './tool-record-operations.js';
5
+ function normalizeRoutePath(routePath) {
6
+ if (/^https?:\/\//iu.test(routePath))
7
+ throw new Error('routePath must be an Enfyra API path, not a full URL.');
8
+ const path = routePath.startsWith('/') ? routePath : `/${routePath}`;
9
+ if (path.includes('?'))
10
+ throw new Error('routePath must not include a query string. Use filter, sort, deep, and limit inputs.');
11
+ return path;
12
+ }
13
+ function primaryKey(table) {
14
+ if (table.primaryKey)
15
+ return String(table.primaryKey);
16
+ const columns = Array.isArray(table.columns) ? table.columns : [];
17
+ const primary = columns.find((column) => column && typeof column === 'object' && column.isPrimary === true);
18
+ return primary?.name ? String(primary.name) : null;
19
+ }
20
+ function rowsFromBody(body) {
21
+ if (Array.isArray(body))
22
+ return body.filter((item) => Boolean(item && typeof item === 'object'));
23
+ if (!body || typeof body !== 'object')
24
+ return [];
25
+ const data = body.data;
26
+ return Array.isArray(data) ? data.filter((item) => Boolean(item && typeof item === 'object')) : [];
27
+ }
28
+ function expandNodes(values) {
29
+ return values.flatMap((value) => Array.isArray(value) ? value : [value]).filter((value) => value != null);
30
+ }
31
+ function pathPresence(rows, path) {
32
+ if (!rows.length)
33
+ return 'no_rows';
34
+ if (!path || path.includes('*'))
35
+ return 'not_evaluated';
36
+ let nodes = rows;
37
+ const segments = path.split('.').filter(Boolean);
38
+ for (let index = 0; index < segments.length; index += 1) {
39
+ const segment = segments[index];
40
+ const values = [];
41
+ let propertySeen = false;
42
+ for (const node of expandNodes(nodes)) {
43
+ if (!node || typeof node !== 'object' || Array.isArray(node))
44
+ continue;
45
+ if (!Object.prototype.hasOwnProperty.call(node, segment))
46
+ continue;
47
+ propertySeen = true;
48
+ values.push(node[segment]);
49
+ }
50
+ if (!propertySeen)
51
+ return 'missing';
52
+ if (index === segments.length - 1)
53
+ return 'present';
54
+ nodes = expandNodes(values);
55
+ if (!nodes.length)
56
+ return 'indeterminate';
57
+ }
58
+ return 'present';
59
+ }
60
+ function summarizeResponse(response, paths) {
61
+ const rows = rowsFromBody(response.body);
62
+ const body = response.body && typeof response.body === 'object' && !Array.isArray(response.body)
63
+ ? response.body
64
+ : null;
65
+ return {
66
+ ok: response.ok,
67
+ status: response.status,
68
+ statusText: response.statusText,
69
+ rowCount: rows.length,
70
+ responseKeys: body ? Object.keys(body).slice(0, 20) : [],
71
+ firstRowKeys: rows[0] ? Object.keys(rows[0]).slice(0, 30) : [],
72
+ pathPresence: paths.map((item) => ({
73
+ path: item.path,
74
+ presence: pathPresence(rows, item.path),
75
+ isPublished: item.isPublished,
76
+ })),
77
+ };
78
+ }
79
+ async function defaultRequest(apiUrl, url, authenticated) {
80
+ const headers = { 'Content-Type': 'application/json' };
81
+ if (authenticated)
82
+ headers.Authorization = `Bearer ${await getValidToken(apiUrl)}`;
83
+ const response = await fetch(url, { method: 'GET', headers });
84
+ const text = await response.text();
85
+ let body = text;
86
+ if ((response.headers.get('content-type') || '').includes('application/json') && text) {
87
+ try {
88
+ body = JSON.parse(text);
89
+ }
90
+ catch {
91
+ body = null;
92
+ }
93
+ }
94
+ return { ok: response.ok, status: response.status, statusText: response.statusText, body };
95
+ }
96
+ function isContractError(error) {
97
+ const message = error instanceof Error ? error.message : String(error);
98
+ return /^(Unknown query_table field|Unknown deep|Relation |deep for |'limit'|'page')/u.test(message);
99
+ }
100
+ function presenceMap(summary) {
101
+ return new Map((summary?.pathPresence || []).map((item) => [item.path, item.presence]));
102
+ }
103
+ export async function inspectRestProjection(apiUrl, input, dependencies = {}) {
104
+ const fields = input.fields.flatMap((field) => String(field).split(',')).map((field) => field.trim()).filter(Boolean);
105
+ if (!fields.length)
106
+ throw new Error('inspect_rest_projection requires explicit fields.');
107
+ if (fields.some((field) => field.startsWith('-') || field.includes('*'))) {
108
+ throw new Error('inspect_rest_projection requires explicit include fields without wildcard or exclude selectors.');
109
+ }
110
+ const access = input.access ?? 'compare';
111
+ const limit = Math.min(Math.max(Number(input.limit ?? 1), 1), 10);
112
+ const loadTable = dependencies.loadTable ?? ((tableName) => fetchTableMetadata(apiUrl, tableName));
113
+ const request = dependencies.request ?? ((url, authenticated) => defaultRequest(apiUrl, url, authenticated));
114
+ const rootMetadata = await loadTable(input.tableName);
115
+ const rootTable = { ...rootMetadata, primaryKey: primaryKey(rootMetadata) };
116
+ const selection = applyDeepFieldSelections(fields, input.deep);
117
+ let schemaReceipt;
118
+ try {
119
+ schemaReceipt = await validateQueryContract({
120
+ rootTable,
121
+ fields: selection.fields,
122
+ deep: input.deep,
123
+ loadTable,
124
+ });
125
+ }
126
+ catch (error) {
127
+ if (!isContractError(error))
128
+ throw error;
129
+ return {
130
+ action: 'rest_projection_inspected',
131
+ tableName: input.tableName,
132
+ access,
133
+ verdict: 'schema_contract_mismatch',
134
+ contractError: error instanceof Error ? error.message : String(error),
135
+ requestExecuted: false,
136
+ };
137
+ }
138
+ const routePath = normalizeRoutePath(input.routePath ?? `/${input.tableName}`);
139
+ const params = new URLSearchParams();
140
+ params.set('fields', selection.fields.join(','));
141
+ params.set('limit', String(limit));
142
+ if (input.filter)
143
+ params.set('filter', JSON.stringify(input.filter));
144
+ if (input.sort)
145
+ params.set('sort', input.sort);
146
+ if (input.deep)
147
+ params.set('deep', JSON.stringify(input.deep));
148
+ const url = `${apiUrl.replace(/\/$/u, '')}${routePath}?${params.toString()}`;
149
+ const paths = schemaReceipt.pathMetadata;
150
+ const shouldAuthenticate = access === 'authenticated' || access === 'compare';
151
+ const shouldRunAnonymous = access === 'anonymous' || access === 'compare';
152
+ const [authenticatedResponse, anonymousResponse] = await Promise.all([
153
+ shouldAuthenticate ? request(url, true) : null,
154
+ shouldRunAnonymous ? request(url, false) : null,
155
+ ]);
156
+ const authenticated = authenticatedResponse ? summarizeResponse(authenticatedResponse, paths) : null;
157
+ const anonymous = anonymousResponse ? summarizeResponse(anonymousResponse, paths) : null;
158
+ const authenticatedPresence = presenceMap(authenticated);
159
+ const anonymousPresence = presenceMap(anonymous);
160
+ const differences = access === 'compare'
161
+ ? paths.flatMap((path) => {
162
+ const authenticatedValue = authenticatedPresence.get(path.path);
163
+ const anonymousValue = anonymousPresence.get(path.path);
164
+ if (authenticatedValue === anonymousValue)
165
+ return [];
166
+ return [{
167
+ path: path.path,
168
+ authenticated: authenticatedValue,
169
+ anonymous: anonymousValue,
170
+ isPublished: path.isPublished,
171
+ }];
172
+ })
173
+ : [];
174
+ let verdict = 'projection_inspected';
175
+ if (access === 'compare') {
176
+ const publicLeak = paths.some((path) => path.isPublished === false && anonymousPresence.get(path.path) === 'present');
177
+ const publishedDifference = differences.some((item) => item.isPublished !== false);
178
+ if (publicLeak)
179
+ verdict = 'unexpected_public_exposure';
180
+ else if (!authenticated?.ok)
181
+ verdict = 'authenticated_request_failed';
182
+ else if (anonymous?.status === 401 || anonymous?.status === 403)
183
+ verdict = 'private_route';
184
+ else if (!anonymous?.ok)
185
+ verdict = 'anonymous_request_failed';
186
+ else if (authenticated.rowCount === 0 && anonymous.rowCount === 0)
187
+ verdict = 'projection_indeterminate_no_rows';
188
+ else if (publishedDifference)
189
+ verdict = 'access_projection_difference';
190
+ else if (differences.length)
191
+ verdict = 'expected_unpublished_omission';
192
+ else
193
+ verdict = 'projections_match';
194
+ }
195
+ else if (access === 'anonymous') {
196
+ if (anonymous?.status === 401 || anonymous?.status === 403)
197
+ verdict = 'private_route';
198
+ else if (paths.some((path) => path.isPublished === false && anonymousPresence.get(path.path) === 'present'))
199
+ verdict = 'unexpected_public_exposure';
200
+ }
201
+ else if (!authenticated?.ok) {
202
+ verdict = 'authenticated_request_failed';
203
+ }
204
+ return {
205
+ action: 'rest_projection_inspected',
206
+ tableName: input.tableName,
207
+ access,
208
+ verdict,
209
+ requestExecuted: true,
210
+ request: {
211
+ method: 'GET',
212
+ path: routePath,
213
+ fields: selection.fields,
214
+ autoAddedDeepFields: selection.autoAdded,
215
+ limit,
216
+ filterApplied: Boolean(input.filter),
217
+ deepApplied: Boolean(input.deep),
218
+ },
219
+ schemaReceipt,
220
+ authenticated,
221
+ anonymous,
222
+ differences,
223
+ };
224
+ }
225
+ //# sourceMappingURL=rest-projection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rest-projection.js","sourceRoot":"","sources":["../../src/lib/rest-projection.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { io } from 'socket.io-client';
2
2
  import { getValidToken } from './auth.js';
3
3
  import { fetchAPI } from './fetch.js';
4
- import { clearRuntimeCacheDomains, recordRuntimeCacheWarm, runtimeCacheDomainsForReloadSteps, runtimeCacheKeysForDomains } from './runtime-cache.js';
4
+ import { clearRuntimeCache, clearRuntimeCacheDomains, recordRuntimeCacheWarm, runtimeCacheDomainsForReloadSteps, runtimeCacheKeysForDomains } from './runtime-cache.js';
5
5
  let socket = null;
6
6
  let socketStarting = false;
7
7
  let warmTimer = null;
@@ -79,11 +79,16 @@ function scheduleRuntimeCacheSocketReconnect(apiUrl) {
79
79
  }, reconnectDelay());
80
80
  }
81
81
  function bindRuntimeCacheSocketEvents(nextSocket, apiUrl) {
82
+ let hasConnectedBefore = false;
82
83
  nextSocket.on('$system:reload', (payload) => {
83
84
  if (payload?.status === 'done')
84
85
  invalidateAndWarm(apiUrl, payload.steps || []);
85
86
  });
86
87
  nextSocket.on('connect', () => {
88
+ if (hasConnectedBefore) {
89
+ clearRuntimeCache('reload');
90
+ }
91
+ hasConnectedBefore = true;
87
92
  reconnectAttempt = 0;
88
93
  });
89
94
  nextSocket.on('disconnect', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-cache-socket.js","sourceRoot":"","sources":["../../src/lib/runtime-cache-socket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-cache-socket.js","sourceRoot":"","sources":["../../src/lib/runtime-cache-socket.ts"],"names":[],"mappings":"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"}
@@ -560,8 +560,8 @@ export function registerRuntimeZoneTools(server, ENFYRA_API_URL) {
560
560
  includeSourceArtifact: z.boolean().optional().default(false),
561
561
  }, async (input) => jsonContent(await searchAdminExtensions(ENFYRA_API_URL, input)));
562
562
  server.tool('debug_field_exposure', [
563
- 'Diagnose whether a REST fields/deep projection exposes an isPublished=false field.',
564
- 'Use this for suspected secret/private field leaks. It builds a minimal repro and tells the agent when this is a core bug rather than a hook/frontend fix.',
563
+ 'Compatibility inspector for a single suspected isPublished=false REST field exposure.',
564
+ 'Prefer inspect_rest_projection for recursive metadata validation and authenticated/anonymous projection comparison.',
565
565
  ].join(' '), {
566
566
  tableName: z.string().describe('Root route-backed table name used by the REST request.'),
567
567
  fieldPath: z.string().describe('Field path to test, for example "secret_token", "owner.api_key", or "children.owner.email". Relation segments must be propertyName values.'),