Date: 2026-08-31 Active feature: Issue #143 — reduce redundant real-provider E2E round trips. Working tree: Complete and uncommitted; no production files changed.
- Provider settings identity is now the selected
github/gitlab/giteaprovider in both SyncManager fixtures. - Added batch baseline helpers. The single-client multi-file scenarios (including mixed-100's 70 files) now create one baseline commit; two-client P0-2 does the same while mirroring verified metadata into client B.
- Added fetch-once
GitVerifier.snapshot()/GitSnapshot;SourceControlScenarioinvalidates and recreates a shared snapshot after remote mutations, and convergence assertions use one snapshot for all files/tree reads. - GitHub batch/rename/delete checks poll only branch-head movement, then verify one snapshot. GitLab and Gitea batch tests also assert exactly one new commit.
- Added
e2e-tests/provider/suites/git-verifier.e2e.test.ts, a local-git regression test proving all snapshot reads run after one fetch. - Registered that suite in
scripts/e2e-suites.txt; the first CI run rejected it as unregistered before executing provider tests.
npx eslint .— 0 errors, 0 warnings.npx vitest run— 68 files / 862 tests passed.npx vitest -c vitest.e2e.config.ts run e2e-tests/provider/suites/git-verifier.e2e.test.ts— 1 file / 1 test passed.npm run build— passed (including Obsidian 1.11.0 compatibility check).
Run the provisioned real-provider matrix for GitHub, GitLab, and Gitea. Confirm mixed-100 stays within its 120s timeout and measure against the <60s / <30s targets before committing and pushing.