diff --git a/.codenomad/background_processes/mok8a5od/index.json b/.codenomad/background_processes/mok8a5od/index.json new file mode 100644 index 00000000..f2eb9967 --- /dev/null +++ b/.codenomad/background_processes/mok8a5od/index.json @@ -0,0 +1,59 @@ +[ + { + "id": "proc_2026-04-29T1653_10415f", + "workspaceId": "mok8a5od", + "title": "prepare-e2e-build", + "command": "cd I:\\github\\TidGi-Desktop && pnpm run test:prepare-e2e 2>&1", + "cwd": "I:\\github\\TidGi-Desktop", + "status": "stopped", + "pid": 28884, + "startedAt": "2026-04-29T16:53:10.482Z", + "outputSizeBytes": 6774, + "notify": { + "sessionID": "ses_226dff628ffeEh32ekLSF2Ug9D", + "directory": "I:\\github\\TidGi-Desktop", + "sentAt": "2026-04-29T16:54:24.363Z" + }, + "terminalReason": "finished", + "exitCode": 0, + "stoppedAt": "2026-04-29T16:54:24.349Z" + }, + { + "id": "proc_2026-04-30T0023_0c6a5f", + "workspaceId": "mok8a5od", + "title": "ci-unit-tests", + "command": "cd I:\\github\\TidGi-Desktop && pnpm run test:unit 2>&1", + "cwd": "I:\\github\\TidGi-Desktop", + "status": "error", + "pid": 9852, + "startedAt": "2026-04-30T00:23:45.641Z", + "outputSizeBytes": 24244, + "notify": { + "sessionID": "ses_226dff628ffeEh32ekLSF2Ug9D", + "directory": "I:\\github\\TidGi-Desktop", + "sentAt": "2026-04-30T00:24:44.130Z" + }, + "terminalReason": "failed", + "exitCode": 1, + "stoppedAt": "2026-04-30T00:24:44.114Z" + }, + { + "id": "proc_2026-04-30T0024_74f973", + "workspaceId": "mok8a5od", + "title": "ci-e2e-prepare", + "command": "cd I:\\github\\TidGi-Desktop && pnpm run test:prepare-e2e 2>&1", + "cwd": "I:\\github\\TidGi-Desktop", + "status": "stopped", + "pid": 12620, + "startedAt": "2026-04-30T00:24:03.166Z", + "outputSizeBytes": 6774, + "notify": { + "sessionID": "ses_226dff628ffeEh32ekLSF2Ug9D", + "directory": "I:\\github\\TidGi-Desktop", + "sentAt": "2026-04-30T00:25:26.476Z" + }, + "terminalReason": "finished", + "exitCode": 0, + "stoppedAt": "2026-04-30T00:25:26.466Z" + } +] \ No newline at end of file diff --git a/.codenomad/background_processes/mok8a5od/proc_2026-04-29T1653_10415f/output.txt b/.codenomad/background_processes/mok8a5od/proc_2026-04-29T1653_10415f/output.txt new file mode 100644 index 00000000..dedbdb1f --- /dev/null +++ b/.codenomad/background_processes/mok8a5od/proc_2026-04-29T1653_10415f/output.txt @@ -0,0 +1,159 @@ + +> tidgi@0.13.0 test:prepare-e2e I:\github\TidGi-Desktop +> cross-env READ_DOC_BEFORE_USING='docs/Testing.md' && pnpm run clean && pnpm run build:plugin && cross-env NODE_ENV=test DEBUG=electron-forge:* electron-forge package + + +> tidgi@0.13.0 clean I:\github\TidGi-Desktop +> pnpm run clean:cache && rimraf -- ./out ./logs ./userData-dev ./userData-test ./wiki-dev ./wiki-test ./test-artifacts ./node_modules/tiddlywiki/plugins/linonetwo + + +> tidgi@0.13.0 clean:cache I:\github\TidGi-Desktop +> rimraf -- ./node_modules/.vite .vite + + +> tidgi@0.13.0 build:plugin I:\github\TidGi-Desktop +> zx scripts/compilePlugins.mjs + +Starting plugin compilation... + + +Building plugin: tidgi-ipc-syncadaptor + Output directories: 1 + + ...ins\linonetwo\tidgi-ipc-syncadaptor\Startup\mount-tidgi-service.js 883b + +Done in 10ms + + ...ywiki\plugins\linonetwo\tidgi-ipc-syncadaptor\fix-location-info.js 9.0kb + +Done in 12ms + + ...lywiki\plugins\linonetwo\tidgi-ipc-syncadaptor\ipc-syncadaptor.js 24.7kb + +Done in 15ms + + ...ugins\linonetwo\tidgi-ipc-syncadaptor\Startup\electron-ipc-cat.js 32.9kb + +Done in 18ms +✓ Copied tidgi-ipc-syncadaptor to: I:\github\TidGi-Desktop\node_modules\tiddlywiki\plugins\linonetwo\tidgi-ipc-syncadaptor +✓ Completed tidgi-ipc-syncadaptor + +Building plugin: tidgi-ipc-syncadaptor-ui + Output directories: 1 +✓ Copied tidgi-ipc-syncadaptor-ui to: I:\github\TidGi-Desktop\node_modules\tiddlywiki\plugins\linonetwo\tidgi-ipc-syncadaptor-ui +✓ Completed tidgi-ipc-syncadaptor-ui + +Building plugin: watch-filesystem-adaptor + Output directories: 1 + + ...es\tiddlywiki\plugins\linonetwo\watch-filesystem-adaptor\loader.js 283b + +Done in 4ms + + ...lywiki\plugins\linonetwo\watch-filesystem-adaptor\in-tagtree-of.js 2.2kb + +Done in 5ms + + ...i\plugins\linonetwo\watch-filesystem-adaptor\routingUtilities.js 228.3kb + +Done in 23ms + + ...ins\linonetwo\watch-filesystem-adaptor\WatchFileSystemAdaptor.js 681.8kb + +Done in 56ms +✓ Copied watch-filesystem-adaptor to: I:\github\TidGi-Desktop\node_modules\tiddlywiki\plugins\linonetwo\watch-filesystem-adaptor +✓ Completed watch-filesystem-adaptor + +✓ All plugins compiled successfully! +> Checking your system +2026-04-29T16:53:14.311Z electron-forge:check-system checking system, create ~/.skip-forge-system-check to stop doing this +> Checking package manager version +2026-04-29T16:53:14.314Z electron-forge:package-manager Resolved package manager to pnpm. (Derived from NODE_INSTALLER: undefined, npm_config_user_agent: pnpm/10.33.0 npm/? node/v22.20.0 win32 x64, lockfile: pnpm) +2026-04-29T16:53:14.916Z electron-forge:check-system Custom hoist pattern detected {"hoistPattern":"undefined","publicHoistPattern":"WARN  `pnpm config get` would display an array as comma-separated list due to legacy implementation, use `--json` to print them as json\n*eslint*"}, assuming that the user has configured pnpm to package dependencies. +√ Found pnpm@10.33.0 +√ Checking your system +[?25h> Preparing to package application +2026-04-29T16:53:15.615Z electron-forge:project-resolver searching for project in: I:\github\TidGi-Desktop +2026-04-29T16:53:15.619Z electron-forge:project-resolver package.json with forge dependency found in I:\github\TidGi-Desktop\package.json +2026-04-29T16:53:15.910Z electron-forge:plugin:vite hooking process events +√ Preparing to package application +> Running packaging hooks +> Running generateAssets hook +√ Running generateAssets hook +> Running prePackage hook +> [plugin-vite] Building production Vite bundles +> Building main and preload targets... +> Building renderer targets... +> Building src/main.ts target +> Building src/preload/index.ts target +2026-04-29T16:53:24.750Z electron-forge:plugin:vite no error in buildEnd and reached closeBundle so build succeeded +√ Building src/preload/index.ts target +2026-04-29T16:53:37.016Z electron-forge:plugin:vite no error in buildEnd and reached closeBundle so build succeeded +√ Building src/main.ts target +√ Building main and preload targets... +√ Built target renderer +√ Building renderer targets... +√ [plugin-vite] Building production Vite bundles +√ Running prePackage hook +√ Running packaging hooks +> Packaging application +› Determining targets... +2026-04-29T16:54:01.998Z electron-forge:packager packaging with options { + asar: { + unpack: '{{**/.webpack/main/*.worker.*,**/.webpack/main/native_modules/path.txt,**/{.**,**}/**/*.node},**/{.**,**}/**/*.node}' + }, + overwrite: true, + ignore: [Function (anonymous)], + quiet: true, + name: 'TidGi', + executableName: 'tidgi', + win32metadata: { + CompanyName: 'TiddlyWiki Community', + OriginalFilename: 'TidGi Desktop' + }, + protocols: [ { name: 'TidGi Launch Protocol', schemes: [Array] } ], + icon: 'build-resources/icon.ico', + extraResource: [ + 'localization', + 'template/wiki', + 'build-resources/tidgiMiniWindow@2x.png', + 'build-resources/tidgiMiniWindowTemplate@2x.png' + ], + mac: { + category: 'productivity', + target: 'dmg', + icon: 'build-resources/icon.icns', + electronLanguages: [ 'en', 'zh-Hans', 'zh-Hant', 'ja', 'fr', 'ru' ] + }, + appBundleId: 'com.tidgi', + afterPrune: [ [Function (anonymous)] ], + beforeAsar: [ [Function: _default] ], + dir: 'I:\\github\\TidGi-Desktop', + arch: 'x64', + platform: 'win32', + afterFinalizePackageTargets: [ [Function (anonymous)] ], + afterComplete: [ [Function (anonymous)] ], + afterCopy: [ [Function (anonymous)] ], + afterExtract: [ [Function (anonymous)] ], + out: 'I:\\github\\TidGi-Desktop\\out', + electronVersion: '41.1.1' +} +2026-04-29T16:54:02.008Z electron-forge:packager targets: [ { platform: 'win32', arch: 'x64' } ] +> Packaging for x64 on win32 +> Copying files +> Preparing native dependencies +> Finalizing package +√ Copying files +√ Preparing native dependencies +Copy npm packages with node-worker dependencies with binary (dugite) or __filename usages (tiddlywiki), which cannot be prepared properly by webpack +Copying tiddlywiki dependency to dist +Copying packagePathsToCopyDereferenced +Copy dugite +Copy registry-js (Windows only) +√ Finalizing package +√ Packaging for x64 on win32 +√ Packaging application +> Running postPackage hook +2026-04-29T16:54:23.631Z electron-forge:packager outputPaths: [ 'I:\\github\\TidGi-Desktop\\out\\TidGi-win32-x64' ] +√ Running postPackage hook +[?25h2026-04-29T16:54:23.632Z electron-forge:plugin:vite handling process exit with: { cleanup: true } diff --git a/.codenomad/background_processes/mok8a5od/proc_2026-04-30T0023_0c6a5f/output.txt b/.codenomad/background_processes/mok8a5od/proc_2026-04-30T0023_0c6a5f/output.txt new file mode 100644 index 00000000..e306d719 --- /dev/null +++ b/.codenomad/background_processes/mok8a5od/proc_2026-04-30T0023_0c6a5f/output.txt @@ -0,0 +1,230 @@ + +> tidgi@0.13.0 test:unit I:\github\TidGi-Desktop +> cross-env ELECTRON_RUN_AS_NODE=1 ./node_modules/.bin/electron --max-old-space-size=8192 ./node_modules/vitest/vitest.mjs run + + DEPRECATED  "environmentMatchGlobs" is deprecated. Use `test.projects` to define different configurations instead. + + RUN  v3.2.4 I:/github/TidGi-Desktop + + ✓ src/services/agentInstance/tools/__tests__/wikiSearchPlugin.test.ts (11 tests) 21ms + ✓ src/services/agentInstance/tools/__tests__/wikiOperationPlugin.test.ts (7 tests) 12ms + ✓ src/services/wiki/plugin/watchFileSystemAdaptor/__tests__/FileSystemAdaptor.routing.test.ts (24 tests) 14ms + ✓ src/services/wikiEmbedding/__tests__/index.test.ts (6 tests) 232ms + ✓ src/pages/ChatTabContent/components/MessageRenderer/__tests__/MessageRenderers.test.tsx (29 tests) 711ms + ✓ src/services/wikiEmbedding/__tests__/sqlite-vec.test.ts (8 tests) 57ms + ✓ src/services/agentInstance/agentFrameworks/__tests__/taskAgent.test.ts (4 tests) 189ms + ✓ src/pages/ChatTabContent/components/__tests__/MessageBubble.test.tsx (9 tests) 201ms + ✓ src/windows/Preferences/sections/__tests__/TidGiMiniWindow.test.tsx (29 tests) 2452ms + ✓ src/services/agentInstance/tools/__tests__/messageManagementPlugin.test.ts (3 tests) 291ms + ✓ src/services/agentInstance/__tests__/index.streaming.test.ts (4 tests) 104ms + ✓ src/pages/Agent/TabContent/TabTypes/__tests__/CreateNewAgentContent.test.tsx (16 tests) 811ms + ✓ src/services/agentInstance/tools/__tests__/fullReplacementPlugin.duration.test.ts (4 tests) 6ms + ✓ src/components/__tests__/KeyboardShortcutRegister.test.tsx (20 tests) 2059ms + ✓ KeyboardShortcutRegister Component > Confirm functionality > should close dialog after confirm  303ms + ✓ src/pages/ChatTabContent/components/PromptPreviewDialog/__tests__/PromptPreviewDialog.promptConcat.test.tsx (3 tests) 366ms + ✓ src/services/agentInstance/__tests__/scheduledTaskManager.test.ts (12 tests) 15ms +stderr | src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx > Preferences - All Sections Rendering > should render General section with key settings +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". + +stderr | src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx > Preferences - All Sections Rendering > should render Performance section +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". + +stderr | src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx > Preferences - All Sections Rendering > should render Downloads section +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". + +stderr | src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx > Preferences - All Sections Rendering > should render Network section +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". + +stderr | src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx > Preferences - All Sections Rendering > should render Privacy section +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". + +stderr | src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx > Preferences - All Sections Rendering > should render Updates section +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". + +stderr | src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx > Preferences - All Sections Rendering > should render Miscellaneous section +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". + +stderr | src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx > Preferences - All Sections Rendering > should render Notifications section +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". +MUI: You have provided an out-of-range value `zh-Hans` for the select component. +Consider providing a value that matches one of the available options or ''. +The available values are "". + + ✓ src/windows/Preferences/__tests__/AllSectionsRendering.test.tsx (11 tests | 3 skipped) 1908ms + ✓ Preferences - All Sections Rendering > should render General section with key settings  587ms + ✓ src/services/agentInstance/agentFrameworks/__tests__/taskAgent.failure.test.ts (2 tests) 548ms + ✓ basicPromptConcatHandler - failure path persists error message and logs > should cover two-round flow: tool_use then Chat.ConfigError.AIProviderError and print ordering  440ms + ✓ src/windows/AddWorkspace/__tests__/NewWikiForm.test.tsx (12 tests) 1769ms + ✓ NewWikiForm Component > User Interaction Tests > should handle wiki folder name input change  334ms + ✓ NewWikiForm Component > User Interaction Tests > should handle tag name input for sub workspace  379ms + ✓ src/services/wiki/plugin/watchFileSystemAdaptor/__tests__/FileSystemAdaptor.delete.test.ts (12 tests) 8ms + ✓ src/services/wiki/plugin/watchFileSystemAdaptor/__tests__/InverseFilesIndex.test.ts (18 tests) 9ms + ❯ src/services/workspaces/__tests__/useTidgiConfigSync.test.ts (8 tests | 2 failed) 23ms + × Workspace useTidgiConfigSync > create > should set useTidgiConfigSync to true by default when creating workspace 16ms + → No bindings found for service: "Symbol(Analytics)". + +Trying to resolve bindings for "Symbol(Analytics) (Root service)". + +Binding constraints: +- service identifier: Symbol(Analytics) +- name: - + × Workspace useTidgiConfigSync > create > should set useTidgiConfigSync to false when useTidgiConfig is false 1ms + → No bindings found for service: "Symbol(Analytics)". + +Trying to resolve bindings for "Symbol(Analytics) (Root service)". + +Binding constraints: +- service identifier: Symbol(Analytics) +- name: - + ✓ Workspace useTidgiConfigSync > set > should write tidgi.config.json and strip syncable fields from settings.json when useTidgiConfigSync is true and tidgi.config.json exists 3ms + ✓ Workspace useTidgiConfigSync > set > should NOT write tidgi.config.json and should keep syncable fields in settings.json when useTidgiConfigSync is false 1ms + ✓ Workspace useTidgiConfigSync > set > should NOT write tidgi.config.json even when syncable fields changed if useTidgiConfigSync is false 0ms + ✓ Workspace useTidgiConfigSync > sanitizeWorkspace > should read tidgi.config.json during initial load when useTidgiConfigSync is true 0ms + ✓ Workspace useTidgiConfigSync > sanitizeWorkspace > should NOT read tidgi.config.json during initial load when useTidgiConfigSync is false 0ms + ✓ Workspace useTidgiConfigSync > sanitizeWorkspace > should not read tidgi.config.json during runtime updates regardless of useTidgiConfigSync 0ms + ✓ src/__tests__/security/injection-prevention.test.ts (20 tests) 4ms + ✓ src/services/agentInstance/tools/__tests__/workspacesListPlugin.test.ts (5 tests) 19ms + ✓ src/services/agentDefinition/__tests__/index.test.ts (6 tests) 215ms + ✓ src/services/wiki/plugin/watchFileSystemAdaptor/__tests__/FileSystemAdaptor.save.test.ts (14 tests) 9462ms + ✓ FileSystemAdaptor - Save Operations > saveTiddler - File Lock Retry > should give up after max retries on persistent lock  9233ms + ✓ src/services/agentDefinition/__tests__/responsePatternUtility.test.ts (14 tests) 7ms + ✓ src/windows/Preferences/sections/ExternalAPI/__tests__/index.test.tsx (12 tests) 2798ms + ✓ ExternalAPI Component > should render loading state initially  428ms + ✓ ExternalAPI Component > should show model selectors with autocomplete inputs  384ms + ✓ ExternalAPI Component > should call delete API when default model is cleared and no embedding model exists  455ms + ✓ ExternalAPI Component > should only clear default field when embedding model exists  339ms + ✓ ExternalAPI Component > should call delete API when embedding model is cleared via autocomplete  348ms + ✓ src/windows/Preferences/sections/ExternalAPI/__tests__/useAIConfigManagement.test.ts (7 tests) 512ms + ✓ src/helpers/__tests__/url.test.ts (23 tests) 4ms + ✓ src/services/externalAPI/__tests__/autoFillDefaultModels.test.ts (6 tests) 4ms + ✓ src/pages/Agent/TabContent/TabTypes/__tests__/EditAgentDefinitionContent.test.tsx (18 tests) 8311ms + ✓ EditAgentDefinitionContent > should handle agent name changes  4483ms + ✓ EditAgentDefinitionContent > should show current agent information in form fields  357ms + ✓ EditAgentDefinitionContent > should handle save button click  513ms + ✓ EditAgentDefinitionContent > should disable save button when agent name is empty  532ms + ✓ EditAgentDefinitionContent > should handle save action  431ms + ✓ src/services/agentDefinition/__tests__/responsePatternUtility.security.test.ts (16 tests) 7ms + ✓ src/windows/Preferences/sections/__tests__/Sync.timezone.test.ts (13 tests) 4ms + ✓ src/services/agentInstance/__tests__/backgroundTaskSettings.test.ts (4 tests) 5ms + ✓ src/services/wiki/plugin/watchFileSystemAdaptor/__tests__/FileSystemAdaptor.basic.test.ts (12 tests) 9ms + ✓ src/pages/Main/__tests__/index.test.tsx (5 tests) 1234ms + ✓ Main Page > should display workspace names and icons in sidebar  477ms + ✓ src/services/wiki/wikiWorker/__tests__/ipcServerRoutes.test.ts (5 tests) 5ms + ✓ src/services/agentInstance/__tests__/index.failure.test.ts (1 test) 119ms + ✓ src/pages/Agent/TabContent/TabTypes/__tests__/NewTabContent.test.tsx (9 tests) 693ms + ✓ src/components/TokenForm/__tests__/GitTokenForm.test.tsx (4 tests) 1766ms + ✓ GitTokenForm > should update form when userInfo changes after OAuth login (BUG TEST)  343ms + ✓ GitTokenForm > should call auth.set when user types in input fields  808ms + ✓ GitTokenForm > should update form when userInfo is overwritten  319ms + ✓ src/services/agentInstance/utilities/__tests__/schemaToToolContent.test.ts (6 tests) 6ms + ✓ src/services/externalAPI/__tests__/externalAPI.logging.test.ts (2 tests) 98ms + ✓ src/services/agentInstance/utilities/__tests__/messageDurationFilter.test.ts (9 tests) 5ms + ✓ src/services/agentInstance/__tests__/index.wikiOperation.test.ts (1 test) 85ms + ✓ src/windows/Preferences/sections/ExternalAPI/components/__tests__/ProviderConfig.test.tsx (5 tests) 808ms + ✓ src/services/agentInstance/promptConcat/__tests__/promptConcatWithImage.test.ts (2 tests) 122ms + ✓ src/services/preferences/definitions/__tests__/schemaValidation.test.ts (8 tests) 7ms + ✓ src/services/agentInstance/promptConcat/__tests__/flattenPrompts.test.ts (3 tests) 3ms + ✓ src/components/StorageService/__tests__/SearchGithubRepo.test.tsx (2 tests) 315ms + ✓ src/pages/ChatTabContent/components/PromptPreviewDialog/__tests__/PromptPreviewDialog.ui.test.tsx (2 tests) 465ms + ✓ PromptPreviewDialog - Tool Information Rendering > should render dialog when open=true  406ms + ✓ src/constants/__tests__/appPaths.test.ts (5 tests) 4ms + ✓ src/windows/Preferences/sections/ExternalAPI/components/__tests__/NewModelDialog.test.tsx (7 tests) 877ms + ✓ NewModelDialog - ComfyUI workflow support > should show workflow file input for ComfyUI provider  407ms + ✓ src/services/wiki/wikiWorker/__tests__/applyInitialPalette.test.ts (3 tests) 5ms + ✓ src/services/agentInstance/__tests__/agentRepository.test.ts (3 tests) 4ms + ✓ src/services/libs/__tests__/port.test.ts (5 tests) 34ms + ✓ src/services/agentDefinition/__tests__/getAgentDefinitionTemplatesFromWikis.test.ts (2 tests) 3ms + ✓ src/services/workspaces/__tests__/tokenAuth.test.ts (2 tests) 3ms + ✓ src/pages/ChatTabContent/components/__tests__/PromptTree.test.tsx (1 test) 79ms + ✓ src/services/agentInstance/__tests__/utilities.test.ts (2 tests) 3ms + ✓ src/windows/Preferences/sections/ExternalAPI/__tests__/addProviderIntegration.test.tsx (4 tests) 1090ms + ✓ ExternalAPI Add Provider with Embedding Model > should show add provider functionality  419ms + ✓ ExternalAPI Add Provider with Embedding Model > should handle embedding model selection correctly  437ms +stdout | src/services/context/__tests__/contextService.spec.ts +[viteEntry] Using production file URL: file://I:/github/TidGi-Desktop/src/services/renderer/index.html __dirname: I:\github\TidGi-Desktop\src\services\windows + + ✓ src/services/context/__tests__/contextService.spec.ts (2 tests) 2ms + ✓ src/__tests__/environment.test.ts (5 tests) 2ms +Sourcemap for "I:/github/TidGi-Desktop/node_modules/git-sync-js/dist/src/inspect.js" points to missing source files +Sourcemap for "I:/github/TidGi-Desktop/node_modules/git-sync-js/dist/src/errors.js" points to missing source files +Sourcemap for "I:/github/TidGi-Desktop/node_modules/git-sync-js/dist/src/interface.js" points to missing source files +Sourcemap for "I:/github/TidGi-Desktop/node_modules/git-sync-js/dist/src/utils.js" points to missing source files + ✓ src/services/git/__tests__/gitSyncRepoDetection.test.ts (1 test) 476ms + ✓ git-sync-js repo detection compatibility > treats Windows path format differences and benign stderr as a valid git repository  475ms + ✓ features/supports/mockOpenAI.test.ts (6 tests) 15115ms + ✓ Mock OpenAI Server > should integrate with streamFromProvider (SDK) for streaming responses  15053ms + +⎯⎯⎯⎯⎯⎯⎯ Failed Tests 2 ⎯⎯⎯⎯⎯⎯⎯ + + FAIL  src/services/workspaces/__tests__/useTidgiConfigSync.test.ts > Workspace useTidgiConfigSync > create > should set useTidgiConfigSync to true by default when creating workspace + FAIL  src/services/workspaces/__tests__/useTidgiConfigSync.test.ts > Workspace useTidgiConfigSync > create > should set useTidgiConfigSync to false when useTidgiConfig is false +Error: No bindings found for service: "Symbol(Analytics)". + +Trying to resolve bindings for "Symbol(Analytics) (Root service)". + +Binding constraints: +- service identifier: Symbol(Analytics) +- name: - + ❯ throwBindingNotFoundError node_modules/@inversifyjs/core/src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts:59:9 + ❯ throwErrorWhenMultipleUnexpectedBindingsAmountFound node_modules/@inversifyjs/core/src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts:72:7 + ❯ throwErrorWhenUnexpectedBindingsAmountFound node_modules/@inversifyjs/core/src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts:26:5 + ❯ checkServiceNodeSingleInjectionBindings node_modules/@inversifyjs/core/src/planning/calculations/checkServiceNodeSingleInjectionBindings.ts:35:3 + ❯ buildPlanServiceNode node_modules/@inversifyjs/core/src/planning/actions/curryBuildPlanServiceNode.ts:63:7 + ❯ plan node_modules/@inversifyjs/core/src/planning/actions/plan.ts:103:42 + ❯ Y.buildPlanResult node_modules/@inversifyjs/container/src/container/services/ServiceResolutionManager.ts:260:36 + ❯ Y.get node_modules/@inversifyjs/container/src/container/services/ServiceResolutionManager.ts:80:41 + ❯ ne.get node_modules/@inversifyjs/container/src/container/services/Container.ts:111:43 + ❯ ne. src/services/workspaces/__tests__/useTidgiConfigSync.test.ts:67:33 +  65|  } +  66|  // eslint-disable-next-line @typescript-eslint/no-unsafe-return +  67|  return actual.container.get(identifier); +  |  ^ +  68|  }), +  69|  }), + +⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/2]⎯ + + + Test Files  1 failed | 64 passed (65) + Tests  2 failed | 529 passed | 3 skipped (534) + Start at  08:23:47 + Duration  55.49s (transform 3.66s, setup 71.52s, collect 57.67s, tests 56.59s, environment 38.36s, prepare 5.39s) + + ELIFECYCLE  Command failed with exit code 1. diff --git a/.codenomad/background_processes/mok8a5od/proc_2026-04-30T0024_74f973/output.txt b/.codenomad/background_processes/mok8a5od/proc_2026-04-30T0024_74f973/output.txt new file mode 100644 index 00000000..551c6e5f --- /dev/null +++ b/.codenomad/background_processes/mok8a5od/proc_2026-04-30T0024_74f973/output.txt @@ -0,0 +1,159 @@ + +> tidgi@0.13.0 test:prepare-e2e I:\github\TidGi-Desktop +> cross-env READ_DOC_BEFORE_USING='docs/Testing.md' && pnpm run clean && pnpm run build:plugin && cross-env NODE_ENV=test DEBUG=electron-forge:* electron-forge package + + +> tidgi@0.13.0 clean I:\github\TidGi-Desktop +> pnpm run clean:cache && rimraf -- ./out ./logs ./userData-dev ./userData-test ./wiki-dev ./wiki-test ./test-artifacts ./node_modules/tiddlywiki/plugins/linonetwo + + +> tidgi@0.13.0 clean:cache I:\github\TidGi-Desktop +> rimraf -- ./node_modules/.vite .vite + + +> tidgi@0.13.0 build:plugin I:\github\TidGi-Desktop +> zx scripts/compilePlugins.mjs + +Starting plugin compilation... + + +Building plugin: tidgi-ipc-syncadaptor + Output directories: 1 + + ...ins\linonetwo\tidgi-ipc-syncadaptor\Startup\mount-tidgi-service.js 883b + +Done in 10ms + + ...ywiki\plugins\linonetwo\tidgi-ipc-syncadaptor\fix-location-info.js 9.0kb + +Done in 13ms + + ...lywiki\plugins\linonetwo\tidgi-ipc-syncadaptor\ipc-syncadaptor.js 24.7kb + +Done in 19ms + + ...ugins\linonetwo\tidgi-ipc-syncadaptor\Startup\electron-ipc-cat.js 32.9kb + +Done in 20ms +✓ Copied tidgi-ipc-syncadaptor to: I:\github\TidGi-Desktop\node_modules\tiddlywiki\plugins\linonetwo\tidgi-ipc-syncadaptor +✓ Completed tidgi-ipc-syncadaptor + +Building plugin: tidgi-ipc-syncadaptor-ui + Output directories: 1 +✓ Copied tidgi-ipc-syncadaptor-ui to: I:\github\TidGi-Desktop\node_modules\tiddlywiki\plugins\linonetwo\tidgi-ipc-syncadaptor-ui +✓ Completed tidgi-ipc-syncadaptor-ui + +Building plugin: watch-filesystem-adaptor + Output directories: 1 + + ...es\tiddlywiki\plugins\linonetwo\watch-filesystem-adaptor\loader.js 283b + +Done in 5ms + + ...lywiki\plugins\linonetwo\watch-filesystem-adaptor\in-tagtree-of.js 2.2kb + +Done in 6ms + + ...i\plugins\linonetwo\watch-filesystem-adaptor\routingUtilities.js 228.3kb + +Done in 28ms + + ...ins\linonetwo\watch-filesystem-adaptor\WatchFileSystemAdaptor.js 681.8kb + +Done in 62ms +✓ Copied watch-filesystem-adaptor to: I:\github\TidGi-Desktop\node_modules\tiddlywiki\plugins\linonetwo\watch-filesystem-adaptor +✓ Completed watch-filesystem-adaptor + +✓ All plugins compiled successfully! +> Checking your system +2026-04-30T00:24:07.305Z electron-forge:check-system checking system, create ~/.skip-forge-system-check to stop doing this +> Checking package manager version +2026-04-30T00:24:07.310Z electron-forge:package-manager Resolved package manager to pnpm. (Derived from NODE_INSTALLER: undefined, npm_config_user_agent: pnpm/10.33.0 npm/? node/v22.20.0 win32 x64, lockfile: pnpm) +2026-04-30T00:24:08.070Z electron-forge:check-system Custom hoist pattern detected {"hoistPattern":"undefined","publicHoistPattern":"WARN  `pnpm config get` would display an array as comma-separated list due to legacy implementation, use `--json` to print them as json\n*eslint*"}, assuming that the user has configured pnpm to package dependencies. +√ Found pnpm@10.33.0 +√ Checking your system +[?25h> Preparing to package application +2026-04-30T00:24:09.308Z electron-forge:project-resolver searching for project in: I:\github\TidGi-Desktop +2026-04-30T00:24:09.315Z electron-forge:project-resolver package.json with forge dependency found in I:\github\TidGi-Desktop\package.json +2026-04-30T00:24:09.717Z electron-forge:plugin:vite hooking process events +√ Preparing to package application +> Running packaging hooks +> Running generateAssets hook +√ Running generateAssets hook +> Running prePackage hook +> [plugin-vite] Building production Vite bundles +> Building main and preload targets... +> Building renderer targets... +> Building src/main.ts target +> Building src/preload/index.ts target +2026-04-30T00:24:21.382Z electron-forge:plugin:vite no error in buildEnd and reached closeBundle so build succeeded +√ Building src/preload/index.ts target +2026-04-30T00:24:37.212Z electron-forge:plugin:vite no error in buildEnd and reached closeBundle so build succeeded +√ Building src/main.ts target +√ Building main and preload targets... +√ Built target renderer +√ Building renderer targets... +√ [plugin-vite] Building production Vite bundles +√ Running prePackage hook +√ Running packaging hooks +> Packaging application +› Determining targets... +2026-04-30T00:25:03.025Z electron-forge:packager packaging with options { + asar: { + unpack: '{{**/.webpack/main/*.worker.*,**/.webpack/main/native_modules/path.txt,**/{.**,**}/**/*.node},**/{.**,**}/**/*.node}' + }, + overwrite: true, + ignore: [Function (anonymous)], + quiet: true, + name: 'TidGi', + executableName: 'tidgi', + win32metadata: { + CompanyName: 'TiddlyWiki Community', + OriginalFilename: 'TidGi Desktop' + }, + protocols: [ { name: 'TidGi Launch Protocol', schemes: [Array] } ], + icon: 'build-resources/icon.ico', + extraResource: [ + 'localization', + 'template/wiki', + 'build-resources/tidgiMiniWindow@2x.png', + 'build-resources/tidgiMiniWindowTemplate@2x.png' + ], + mac: { + category: 'productivity', + target: 'dmg', + icon: 'build-resources/icon.icns', + electronLanguages: [ 'en', 'zh-Hans', 'zh-Hant', 'ja', 'fr', 'ru' ] + }, + appBundleId: 'com.tidgi', + afterPrune: [ [Function (anonymous)] ], + beforeAsar: [ [Function: _default] ], + dir: 'I:\\github\\TidGi-Desktop', + arch: 'x64', + platform: 'win32', + afterFinalizePackageTargets: [ [Function (anonymous)] ], + afterComplete: [ [Function (anonymous)] ], + afterCopy: [ [Function (anonymous)] ], + afterExtract: [ [Function (anonymous)] ], + out: 'I:\\github\\TidGi-Desktop\\out', + electronVersion: '41.1.1' +} +2026-04-30T00:25:03.031Z electron-forge:packager targets: [ { platform: 'win32', arch: 'x64' } ] +> Packaging for x64 on win32 +> Copying files +> Preparing native dependencies +> Finalizing package +√ Copying files +√ Preparing native dependencies +Copy npm packages with node-worker dependencies with binary (dugite) or __filename usages (tiddlywiki), which cannot be prepared properly by webpack +Copying tiddlywiki dependency to dist +Copying packagePathsToCopyDereferenced +Copy dugite +Copy registry-js (Windows only) +√ Finalizing package +√ Packaging for x64 on win32 +√ Packaging application +> Running postPackage hook +2026-04-30T00:25:25.685Z electron-forge:packager outputPaths: [ 'I:\\github\\TidGi-Desktop\\out\\TidGi-win32-x64' ] +√ Running postPackage hook +[?25h2026-04-30T00:25:25.686Z electron-forge:plugin:vite handling process exit with: { cleanup: true } diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c5c708ef..4b4d736b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -64,7 +64,10 @@ jobs: # Set Chinese locale for i18n testing LANG: zh_CN.UTF-8 LC_ALL: zh_CN.UTF-8 - timeout-minutes: 30 + # Timeout calculation: BASE_TIMEOUT (25s) × fallback_multiplier (4.0) × scenario_count (~65) / 60 ≈ 108min + # Conservative 40min allows for CI overhead, native module init, and future scenario growth + # If E2E suite grows significantly, increase proportionally or implement calibration preflight + timeout-minutes: 40 # Upload test artifacts (screenshots, logs) - name: Upload test artifacts diff --git a/features/supports/calibration.ts b/features/supports/calibration.ts index 894fd344..37b4f4f7 100644 --- a/features/supports/calibration.ts +++ b/features/supports/calibration.ts @@ -100,13 +100,14 @@ export function getPerformanceMultiplier(): number { } // Fallback if calibration preflight did not run. + // Conservative 4.0× to accommodate slow CI environments and native module initialization console.warn( - '[E2E Calibration] Calibration file not found, using fallback multiplier 3.0×', + '[E2E Calibration] Calibration file not found, using fallback multiplier 4.0×', ); console.warn( '[E2E Calibration] Expected preflight calibration to run before cucumber startup', ); - return 3.0; + return 4.0; } /**