Commit graph

11 commits

Author SHA1 Message Date
777genius
af8a5fc66e fix(renderer): dedupe runtime watcher and model badges 2026-06-06 21:20:58 +03:00
777genius
4defb4aafc Merge remote-tracking branch 'origin/main'
# Conflicts:
#	landing/components/layout/AppFooter.vue
#	landing/components/layout/AppHeader.vue
#	src/features/localization/renderer/locales/ar/settings.json
#	src/features/localization/renderer/locales/bn/settings.json
#	src/features/localization/renderer/locales/de/settings.json
#	src/features/localization/renderer/locales/es/settings.json
#	src/features/localization/renderer/locales/fr/settings.json
#	src/features/localization/renderer/locales/hi/settings.json
#	src/features/localization/renderer/locales/id/settings.json
#	src/features/localization/renderer/locales/ja/settings.json
#	src/features/localization/renderer/locales/ko/settings.json
#	src/features/localization/renderer/locales/pt/settings.json
#	src/features/localization/renderer/locales/ur/settings.json
#	src/features/localization/renderer/locales/zh/settings.json
#	src/features/tmux-installer/main/infrastructure/runtime/TmuxPlatformCommandExecutor.ts
#	src/features/tmux-installer/main/infrastructure/runtime/__tests__/TmuxPlatformCommandExecutor.test.ts
#	src/main/services/team/TeamProvisioningService.ts
#	src/main/services/team/TeamRuntimeLivenessResolver.ts
#	src/main/services/team/TeamTaskActivityIntervalService.ts
#	src/main/services/team/TeamTranscriptProjectResolver.ts
#	src/main/services/team/provisioning/TeamProvisioningPromptBuilders.ts
#	src/renderer/components/team/messages/MessageComposer.pendingSend.test.tsx
#	src/renderer/components/team/messages/MessageComposer.tsx
#	src/renderer/components/team/messages/MessagesPanel.tsx
#	src/renderer/components/team/messages/messagesPanelLogic.ts
#	src/renderer/components/team/useTeamAgentRuntimeWatcher.ts
#	src/renderer/index.css
#	src/renderer/store/index.ts
#	src/renderer/store/team/teamResolvedMembers.ts
#	src/renderer/utils/__tests__/teamModelAvailability.codexCatalog.test.ts
#	src/renderer/utils/teamModelCatalog.ts
#	src/shared/utils/contextMetrics.ts
#	test/main/services/team/TeamProvisioningPromptBuilders.test.ts
#	test/main/services/team/TeamProvisioningService.test.ts
#	test/main/services/team/TeamProvisioningServiceRelay.test.ts
#	test/main/services/team/TeamRuntimeLivenessResolver.test.ts
#	test/main/services/team/TeamTranscriptProjectResolver.test.ts
#	test/renderer/components/team/messages/MessagesPanel.test.ts
#	test/renderer/utils/teamModelAvailability.test.ts
2026-06-06 17:44:52 +03:00
777genius
c85b0d94ce perf(main): cache task activity file reads 2026-05-31 11:11:01 +03:00
777genius
2866b10bbc perf(main): cache no-op task activity sync 2026-05-31 10:59:45 +03:00
777genius
c2ab7a7ff4 perf(main): skip unchanged task resume locks 2026-05-30 22:47:52 +03:00
777genius
4575255c28 perf(main): skip redundant task interval resume scans 2026-05-30 22:07:24 +03:00
777genius
f79ea145d7 perf: batch per-member task-interval resume into one locked pass
During launch the live-status loop resumes every alive member every audit cycle.
resumeActiveIntervalsForMember runs a synchronous file-lock + full read of every
task file, so for an N-member team with M task files it did N locked passes x M
readFileSync per cycle (e.g. 6 members x 20 task files), blocking the main event
loop. Profiling a 6-member mixed launch showed mutateTeamTasks/withFileLockSync as
a top main-thread cost (~14%).

Add resumeActiveIntervalsForMembers that applies the identical per-member resume
logic against a member set in a single locked pass, and use it in the live-status
loop. Same mutations, but one lock + task read per cycle instead of one per member.
Adds a test covering multi-member resume in one pass.
2026-05-30 10:02:01 +03:00
777genius
9e3efa18ce perf(team): batch task activity interval resume across alive members
Collapses the per-member resume scan in getMemberSpawnStatuses into a single
readdir + file lock + pass over the team's tasks. Avoids N x IO when multiple
members become alive at launch. Semantics of the applied-set guard are
preserved 1:1; the single-member API stays as a wrapper around the batch.
2026-05-29 00:44:31 +03:00
777genius
d5894c029d feat(team): improve runtime bootstrap controls 2026-05-19 22:39:13 +03:00
777genius
80acc3b663 feat(team): harden runtime delivery and diagnostics 2026-05-09 00:25:55 +03:00
777genius
f6e95f5b2f chore(team): checkpoint current frontend work 2026-05-08 21:48:27 +03:00