Vendor the IO engine from docmost-sync into packages/git-sync/src/engine: - git.ts (VaultGit, execFile shell-out — verbatim) - pull.ts (readExisting, computePullActions, applyPullActions) - push.ts (classifyRenameMoves, computePushActions, applyPushActions, runPush) - settings.ts adapted (pure parseSettings + Settings type; no process.env binding — the server builds Settings from EnvironmentService later), config-errors.ts. CLI main()/import.meta entrypoints dropped (server drives in-process). Client seam: new engine/client.types.ts defines GitSyncClient; pull.ts/push.ts now use Pick<GitSyncClient, ...> instead of the non-vendored DocmostClient. Engine logic byte-identical except a zod4-compat fix in config-errors (zod4 dropped the issue.received==='undefined' signal; match /received undefined/ on the message). Ported the engine unit tests (compute/apply pull+push actions, classify-rename- moves, run-push, settings, config-errors) incl. real-git temp-repo tests: 431 pass / 3 expected-fail (was 314/3). REST/CLI-coupled upstream tests skipped (noted). CJS build clean. No apps/server wiring yet (next step). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
45 lines
1.2 KiB
JSON
45 lines
1.2 KiB
JSON
{
|
|
"name": "@docmost/git-sync",
|
|
"version": "0.1.0",
|
|
"description": "Vendored pure converter + pure sync engine for the Docmost <-> git Markdown sync (Phase A). See docs/git-sync-plan.md.",
|
|
"private": true,
|
|
"main": "./build/index.js",
|
|
"types": "./build/index.d.ts",
|
|
"exports": {
|
|
".": {
|
|
"types": "./build/index.d.ts",
|
|
"default": "./build/index.js"
|
|
}
|
|
},
|
|
"scripts": {
|
|
"build": "tsc",
|
|
"watch": "tsc --watch",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest"
|
|
},
|
|
"license": "MIT",
|
|
"dependencies": {
|
|
"@fellow/prosemirror-recreate-transform": "^1.2.3",
|
|
"@tiptap/core": "3.20.4",
|
|
"@tiptap/extension-highlight": "3.20.4",
|
|
"@tiptap/extension-image": "3.20.4",
|
|
"@tiptap/extension-subscript": "3.20.4",
|
|
"@tiptap/extension-superscript": "3.20.4",
|
|
"@tiptap/extension-task-item": "3.20.4",
|
|
"@tiptap/extension-task-list": "3.20.4",
|
|
"@tiptap/html": "3.20.4",
|
|
"@tiptap/pm": "3.20.4",
|
|
"@tiptap/starter-kit": "3.20.4",
|
|
"jsdom": "25.0.0",
|
|
"marked": "17.0.5",
|
|
"zod": "4.3.6"
|
|
},
|
|
"devDependencies": {
|
|
"@types/jsdom": "^21.1.7",
|
|
"@types/node": "^20.0.0",
|
|
"fast-check": "^4.8.0",
|
|
"typescript": "^5.0.0",
|
|
"vitest": "4.1.6"
|
|
}
|
|
}
|