node-autotask 0.17.0 → 0.18.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.
Files changed (36) hide show
  1. package/ARCHITECTURE.md +10 -4
  2. package/MCP_TOOL_CATALOG.json +2 -2
  3. package/MCP_TOOL_MANIFEST.md +4 -4
  4. package/N8N_MCP_MANIFEST.json +2 -2
  5. package/N8N_MCP_MANIFEST.md +3 -3
  6. package/capabilities.json +1571 -1571
  7. package/dist/capabilities.cjs +2 -2
  8. package/dist/capabilities.js +1 -1
  9. package/dist/{chunk-5ZGXWS4E.cjs → chunk-5O5EPYBO.cjs} +1570 -1570
  10. package/dist/{chunk-NQVD2XLH.cjs → chunk-7I3F3AJJ.cjs} +393 -393
  11. package/dist/{chunk-DQIZUZWP.cjs → chunk-G564CHXM.cjs} +135 -135
  12. package/dist/{chunk-EGR2ZLYM.js → chunk-HXOWEYV3.js} +2 -2
  13. package/dist/{chunk-6SP6GJJR.js → chunk-VV2UUW2J.js} +1570 -1570
  14. package/dist/{chunk-HC6YWPIY.js → chunk-VYUZZIEE.js} +31 -17
  15. package/dist/{chunk-UV2PECAL.js → chunk-W2WSZOZA.js} +2 -2
  16. package/dist/{chunk-4RJG73GY.cjs → chunk-WRWX6WIK.cjs} +33 -19
  17. package/dist/{index-BAFdPxjG.d.ts → index-BqPY04ZG.d.ts} +34 -10
  18. package/dist/{index-CjC0oWZX.d.cts → index-D7x3MkLK.d.cts} +34 -10
  19. package/dist/index.cjs +24 -22
  20. package/dist/index.d.cts +2 -2
  21. package/dist/index.d.ts +2 -2
  22. package/dist/index.js +6 -4
  23. package/dist/operations/index.cjs +178 -105
  24. package/dist/operations/index.d.cts +12 -3
  25. package/dist/operations/index.d.ts +12 -3
  26. package/dist/operations/index.js +77 -4
  27. package/dist/pool.cjs +8 -8
  28. package/dist/pool.d.cts +1 -1
  29. package/dist/pool.d.ts +1 -1
  30. package/dist/pool.js +4 -4
  31. package/dist/resources/index.cjs +4 -4
  32. package/dist/resources/index.d.cts +1 -1
  33. package/dist/resources/index.d.ts +1 -1
  34. package/dist/resources/index.js +3 -3
  35. package/docs/API.md +44 -8
  36. package/package.json +3 -2
package/ARCHITECTURE.md CHANGED
@@ -396,8 +396,13 @@ The only total is `count()` (`/query/count`); "more rows exist" is `nextPageUrl
396
396
  The node follows `pageDetails.nextPageUrl` (an absolute vendor URL, POSTing the
397
397
  filter to it), and the SDK does the same: the walk is the fetcher
398
398
  (`BaseResource.fetchPage`), which POSTs the `QueryModel` body to
399
- `/V1.0/<E>/query` for page 1 (`MaxRecords = pageSize`) and POSTs the preserved
400
- filter to the ABSOLUTE cursor for every later page. The cursor is rebased to
399
+ `/V1.0/<E>/query` for page 1 (`MaxRecords = pageSize`) and POSTs the SAME body
400
+ (`buildQueryBody` — `MaxRecords`, `IncludeFields` with the `id` append, the
401
+ preserved `filter`) to the ABSOLUTE cursor for every later page (issue #118:
402
+ before the fix the continuation carried `{ filter }` alone and returned the
403
+ full vendor model). Live-verified 2026-10-19: the vendor HONOURS
404
+ `IncludeFields` on a continuation and IGNORES `MaxRecords` (its own 500-row
405
+ page; the walk slices to its limit). The cursor is rebased to
401
406
  the client base URL (`cursorToPath`): same-origin cursors are stripped of the
402
407
  base and used verbatim, cross-origin ones are re-based onto the client base —
403
408
  mirroring the node's custom-zone behaviour. A page reports `hasMore` when
@@ -993,8 +998,9 @@ export const NoopLogger: Logger = {};
993
998
  envelope pass-through, per-envelope unwrap errors, error mapping per status (vendor error
994
999
  body formatting), retry/backoff on 429 with `Retry-After`, `Itgenatr005` as retryable
995
1000
  `RateLimitError`, `AbortSignal` timeout, concurrency guard.
996
- - **Pagination (`pagination.test.ts`)**: multi-page cursor-follow walk (POST the filter
997
- to the absolute `nextPageUrl`, rebased to the client base URL), early stop on short
1001
+ - **Pagination (`pagination.test.ts`)**: multi-page cursor-follow walk (POST the same
1002
+ `QueryModel` body to the absolute `nextPageUrl`, rebased to the client base URL;
1003
+ issue #118 pins the continuation's `IncludeFields`/`MaxRecords`), early stop on short
998
1004
  page, **1000-page guard** (`PaginationLimitError`), `collectAll` equivalence.
999
1005
  - **Query (`query.test.ts`)**: filter builder (13 operators, and/or wrapping, UDF flag),
1000
1006
  cap enforcement (500 OR-conditions, 1 UDF/query), GET-length measurement.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "generatedBy": "scripts/build-tool-catalog.mjs",
3
- "generatedAt": "2026-10-17T13:48:44.078Z",
4
- "planHash": "bd88648453f58ede018062ce66acefacb672fecaa450af89f421057809971e14",
3
+ "generatedAt": "2026-10-19T05:26:26.501Z",
4
+ "planHash": "5176d37fc9bae34139c151ae0ea8336dab63a30382f04acbcaed0e24cdd71d5f",
5
5
  "metaTools": [
6
6
  {
7
7
  "name": "autotask_catalog",
@@ -1,6 +1,6 @@
1
1
  # MCP Tool Manifest — node-autotask
2
2
 
3
- <!-- GENERATED by scripts/project-mcp-tools.mjs at 2026-10-17T13:48:43.787Z — do not hand-edit. -->
3
+ <!-- GENERATED by scripts/project-mcp-tools.mjs at 2026-10-19T05:26:26.653Z — do not hand-edit. -->
4
4
 
5
5
  Mechanical MCP projection of the capability registry (generator-design section 7, ARCHITECTURE section 19.5).
6
6
  Tool names are the plan `mcpTool` columns (entity-first `autotask_<entity>_<verb>`); descriptions are the
@@ -8,7 +8,7 @@ registry `purpose` + a mechanical bounds/flags sentence; annotations derive from
8
8
  Curation edits live ONLY in `MCP_TOOL_OVERRIDES.json` (records `{ tool, field, newValue, reason }`).
9
9
 
10
10
  Registry: 1213 operations; projected tools: 850 (one per registry op with a non-null `mcpTool`);
11
- not projected (catalog/describe material): 363. planHash: `bd88648453f58ede…`
11
+ not projected (catalog/describe material): 363. planHash: `5176d37fc9bae341…`
12
12
 
13
13
  ## Always-on core tier (CORE_RULE — computed, never a hand list)
14
14
 
@@ -947,8 +947,8 @@ singleton, so no helper tier is expected there; G8, 2026-09-26.)
947
947
 
948
948
  ## Meta
949
949
 
950
- - generatedAt: 2026-10-17T13:48:43.787Z
951
- - planHash: bd88648453f58ede018062ce66acefacb672fecaa450af89f421057809971e14
950
+ - generatedAt: 2026-10-19T05:26:26.653Z
951
+ - planHash: 5176d37fc9bae34139c151ae0ea8336dab63a30382f04acbcaed0e24cdd71d5f
952
952
  - registry records: 1213
953
953
  - projected tools: 850
954
954
  - core tier: 15
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schema": "node-autotask n8n consumer mcp projection v1",
3
- "generatedAt": "2026-10-18T23:23:18.804Z",
3
+ "generatedAt": "2026-10-19T05:26:26.775Z",
4
4
  "generator": "scripts/project-n8n-mcp.mjs",
5
5
  "inputs": {
6
6
  "capabilities": "capabilities.json (the capability registry — the single source of truth)",
@@ -3667,6 +3667,6 @@
3667
3667
  "approvalGatedWrites": 2,
3668
3668
  "destructiveExcluded": 3
3669
3669
  },
3670
- "capabilitiesHash": "26246eab57263743486ab1afda89379b7b26462c592c5b104e727e337de92886",
3670
+ "capabilitiesHash": "d30f65bc49ac2898667865b753c0f0cd3f0c951c337a1036b48b049e8c32c61a",
3671
3671
  "curationHash": "e19117ce73e38d9aded3be7e7f077a4e185d2e10294622b76c17d67f63cf9e3b"
3672
3672
  }
@@ -1,6 +1,6 @@
1
1
  # N8N MCP Manifest — node-autotask (consumer projection)
2
2
 
3
- <!-- GENERATED by scripts/project-n8n-mcp.mjs at 2026-10-18T23:23:18.804Z — do not hand-edit. -->
3
+ <!-- GENERATED by scripts/project-n8n-mcp.mjs at 2026-10-19T05:26:26.775Z — do not hand-edit. -->
4
4
 
5
5
  The n8n CONSUMER projection of the capability registry: the canonical source for what the
6
6
  n8n-side MCP tools must expose. The SDK is canonical — this is a projection of it, never a
@@ -282,6 +282,6 @@ only via a recorded change to `n8n-mcp.curation.json`.
282
282
 
283
283
  ## Meta
284
284
 
285
- - generatedAt: 2026-10-18T23:23:18.804Z
286
- - capabilitiesHash: 26246eab57263743486ab1afda89379b7b26462c592c5b104e727e337de92886
285
+ - generatedAt: 2026-10-19T05:26:26.775Z
286
+ - capabilitiesHash: d30f65bc49ac2898667865b753c0f0cd3f0c951c337a1036b48b049e8c32c61a
287
287
  - curationHash: e19117ce73e38d9aded3be7e7f077a4e185d2e10294622b76c17d67f63cf9e3b