Skip to content

Commit a5d5f43

Browse files
ARHAEEMclaude
andcommitted
docs(sync): changelog for diff-detail id echo, autoNumber update-path strip, tool-config test isolation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent c34efd8 commit a5d5f43

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

packages/mcp-server/CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,23 @@
22

33
## [Unreleased]
44

5+
### Fixed (2026-07-30 review finish — diff detail id, autoNumber update path, test isolation)
6+
7+
- **`sync_base mode=diff` with `detail` but no `diffId` returned `diffId:null` on success.**
8+
`diffDetail()` resolves the latest saved diff when the param is omitted, but the tool echoed
9+
the caller's absent param — and the detail branch's machine payload carried no id at all.
10+
`diffDetail()` now returns the resolved id (top-level and in `machine`) and the tool reports
11+
it, so a caller can pin follow-up `detail`/`offset` pages to the exact diff it was served.
12+
- **A semantic `typeOptions` update on an existing autoNumber field shipped `maxUsedAutoNumber`.**
13+
The createField and reconcilePrimary paths already stripped the read-only runtime counter,
14+
but the generic updateField options path sent the raw remapped options — counter included —
15+
which the API 422s. The strip is now single-sourced (`stripAutoNumberCounter()`, apply.js)
16+
and applied at all three send sites.
17+
- **`test-tool-config.test.js` wrote the LIVE `~/.airtable-user-mcp/tools-config.json`.**
18+
`switchProfile()`/`toggleTool()` persist on every call; the suite ran unsandboxed, so tests
19+
raced the real daemon for the file (Windows EPERM rename flake) and could flip the user's
20+
real active profile. The whole file now runs under an `AIRTABLE_USER_MCP_HOME` temp dir.
21+
522
### Fixed (2026-07-30 sync drift detection — two ways a collaborator's edit got overwritten)
623

724
External review (PR #19) found both, with a reproduction. Sync's drift guard is what stops

0 commit comments

Comments
 (0)