Conversation
🎩 PreviewA preview build has been created at: |
Mbeaulne
added this pull request to stack #2752
September 22, 2026 13:07
5 tasks
…ne-autosave # Conflicts: # src/routes/v2/pages/Editor/store/autoSaveStore.ts
…ne-autosave # Conflicts: # docs/remote-pipelines.md # src/components/Home/PipelineSection/PipelineFiltersBar.tsx # src/components/Home/PipelineSection/PipelineSection.tsx # src/components/Home/PipelineSection/useRemotePipelineList.test.ts # src/components/Home/PipelineSection/useRemotePipelineList.ts # src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.test.tsx # src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.tsx # src/routes/v2/pages/Editor/store/autoSaveStore.test.ts # src/routes/v2/pages/Editor/store/autoSaveStore.ts # src/services/pipelineStorage/PipelineFile.ts # src/services/pipelineStorage/PipelineStorageService.test.ts # src/services/pipelineStorage/PipelineStorageService.ts # src/services/pipelineStorage/RemotePipelineStore.test.ts # src/services/pipelineStorage/RemotePipelineStore.ts
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Batch remote pipeline autosaves without delaying local recovery. This is the next layer above #2739 and contains only the autosave follow-up.
Related Issue and Pull requests
Stacked on #2739 (
mb/remote-pipeline-storage), the final layer of the existing remote-pipeline stack.Type of Change
Checklist
Screenshots (if applicable)
N/A.
Test Instructions
Review validation after the interrupted-migration fix:
pnpm exec vitest run src/routes/v2/pages/Editor/store/autoSaveStore.test.ts src/routes/v2/pages/Editor/store/autoSaveSnapshot.test.ts src/services/pipelineStorage src/routes/v2/pages/Editor/hooks/useLoadSpec.test.tsx src/routes/v2/pages/Editor/hooks/useSpecLifecycle.test.tsx src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.test.tsx --reporter=dot: 156 passed, including the new interrupted-migration regression.pnpm exec tsc --noEmitandgit diff --check: passed.pnpm exec eslint src/services/pipelineStorage/RemotePipelineStore.ts src/services/pipelineStorage/RemotePipelineStore.test.ts: passed with the existing React-version configuration warning.pnpm exec prettier --check src/services/pipelineStorage/RemotePipelineStore.ts src/services/pipelineStorage/RemotePipelineStore.test.ts: passed.CI=1 pnpm run test:e2e:remote --reporter=line: 16 passed during review, before the fix. The tests use a mocked backend.CI=1 pnpm run test:e2e:remote --reporter=line --grep "migrates a local pipeline|the first local edit|renaming a local pipeline": all three affected browser flows passed again after the fix.Save indicator validation:
pnpm exec vitest run src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.test.tsx --reporter=dot: 12 passed.pnpm exec eslint src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.tsx src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.test.tsx: passed with the existing React-version configuration warning.pnpm exec prettier --check src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.tsx src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.test.tsx src/styles/global.css: passed.pnpm exec tsc --noEmitandgit diff --check: passed.Earlier autosave validation, before the indicator changes:
pnpm exec vitest run src/routes/v2/pages/Editor/store/autoSaveStore.test.ts src/routes/v2/pages/Editor/store/autoSaveSnapshot.test.ts src/services/pipelineStorage src/routes/v2/pages/Editor/hooks/useLoadSpec.test.tsx src/routes/v2/pages/Editor/hooks/useSpecLifecycle.test.tsx src/routes/v2/pages/Editor/components/EditorMenuBar/components/AutoSaveIndicator.test.tsx --reporter=dot: 133 passed.pnpm exec vitest run --reporter=dot: initial full run had four failures; a subsequent full run using a JSON reporter had 2,693 passes, three network-dependent failures, and two existing todo tests. All three remaining failures were inComponentEditorDialog.test.tsx;pnpm exec vitest run src/components/shared/ComponentEditor/ComponentEditorDialog.test.tsx --reporter=dotpassed all 11 tests when network access was allowed for its schema download. The other initial failure did not reproduce.CI=1 pnpm run test:e2e:remote --reporter=line: 15 passed and one startup failure.CI=1 pnpm run test:e2e:remote --reporter=line --grep "remote mode preserves"passed the remaining test. These tests use a mocked backend.pnpm exec tsc --noEmit,pnpm run knip, andgit diff --check: passed.pnpm exec eslint src/routes/v2/pages/Editor/store/autoSaveStore.ts src/routes/v2/pages/Editor/store/autoSaveStore.test.ts src/routes/v2/pages/Editor/store/autoSaveSnapshot.ts src/routes/v2/pages/Editor/store/autoSaveSnapshot.test.ts src/services/pipelineStorage/PipelineFile.ts src/services/pipelineStorage/PipelineStorageService.ts src/services/pipelineStorage/PipelineStorageService.test.ts src/services/pipelineStorage/RemotePipelineStore.ts src/services/pipelineStorage/RemotePipelineStore.test.ts: passed with the existing React-version configuration warning.pnpm exec prettier --check docs/remote-pipelines.md src/routes/v2/pages/Editor/store/autoSaveStore.ts src/routes/v2/pages/Editor/store/autoSaveStore.test.ts src/routes/v2/pages/Editor/store/autoSaveSnapshot.ts src/routes/v2/pages/Editor/store/autoSaveSnapshot.test.ts src/services/pipelineStorage/PipelineFile.ts src/services/pipelineStorage/PipelineStorageService.ts src/services/pipelineStorage/PipelineStorageService.test.ts src/services/pipelineStorage/RemotePipelineStore.ts src/services/pipelineStorage/RemotePipelineStore.test.ts: passed.Manual smoke test, not yet run against a real backend:
VITE_REMOTE_PIPELINES_ENABLED=trueand connect to a compatible backend as a user with write permission. Watch pipeline PUT requests in the browser Network panel.Additional Comments
No service worker, backend, list-fetching, conflict-resolution, or automatic retry-policy changes. Cross-session saves remain last-writer-wins. Real-backend load testing and staging validation have not been performed.
Change Size
Relative to
mb/remote-pipeline-storagefor this PR only. Changed lines = additions + deletions.Application code excludes test files. Tests include unit, component, and browser test source; test-runner configuration, CI, package scripts, compiler configuration, and documentation are counted separately.