Commit graph

1228 commits

Author SHA1 Message Date
infiniti
c57c513cf1
fix(opencode): recover agenda sync after missing proof
Recover OpenCode agenda sync after protocol-proof-missing delivery failures and harden Anthropic provider readiness handling.
2026-05-14 11:12:37 +03:00
777genius
b77eaf2b26 fix(team): scope OpenCode preflight runtime failures 2026-05-14 11:10:34 +03:00
777genius
9a8a59757c fix: harden opencode delivery e2e flows 2026-05-14 09:51:29 +03:00
777genius
6dc0c1b233 test(opencode): cover accept-fast live delivery 2026-05-14 08:40:16 +03:00
777genius
3e1695fd80 fix(team): recover duplicate opencode send outcomes 2026-05-14 06:13:31 +03:00
777genius
9dc7858e22 fix(team): guard opencode acceptance sends 2026-05-14 06:00:58 +03:00
777genius
55e1c8f3c4 fix(team): harden opencode delivery prompt evidence 2026-05-14 04:25:48 +03:00
777genius
f055193b16 fix(team): observe opencode deliveries by prompt id 2026-05-14 03:39:07 +03:00
777genius
565362a911 fix(team): refresh task logs from opencode session evidence 2026-05-14 03:05:54 +03:00
777genius
dd412355d2 fix(team): load opencode task logs from delivery session evidence 2026-05-14 02:53:52 +03:00
777genius
662691b24b fix(team): use exact opencode sessions for task logs 2026-05-14 02:36:21 +03:00
777genius
72b7d9ee72 fix(team): clarify task in-progress duration label 2026-05-14 02:24:57 +03:00
777genius
05acff348b test(member-work-sync): assert busy intent keys 2026-05-14 02:17:59 +03:00
777genius
3f40ea7840 test(opencode): cover proof missing recovery suppression 2026-05-14 02:16:03 +03:00
777genius
e016515024 fix(opencode): queue specific relay behind active relay 2026-05-14 02:14:09 +03:00
777genius
bc571f5fc7 fix(member-work-sync): guard proof-missing recovery dispatch 2026-05-14 02:09:18 +03:00
777genius
d048113c1d fix(member-work-sync): avoid self-blocking proof recovery 2026-05-14 01:54:16 +03:00
777genius
39c52c3847 feat(member-work-sync): recover missing opencode proof 2026-05-14 01:48:49 +03:00
777genius
6aad8b9c2c feat(member-work-sync): add proof missing recovery contracts 2026-05-14 01:26:29 +03:00
777genius
75a3938f84 fix(member-work-sync): validate inbox nudge payload hash 2026-05-14 01:20:39 +03:00
777genius
6726c4c55d Merge branch 'dev' of https://github.com/777genius/agent-teams-ai into dev
# Conflicts:
#	src/main/services/infrastructure/codexAppServer/__tests__/CodexBinaryResolver.test.ts
2026-05-14 00:35:42 +03:00
infiniti
6dc103b731
fix(runtime): stabilize provider readiness checks 2026-05-14 00:22:57 +03:00
777genius
4c5a752342 chore: commit remaining workspace updates 2026-05-13 22:34:13 +03:00
777genius
a474076330 feat: add managed codex runtime installer 2026-05-13 22:30:25 +03:00
777genius
6e67e9b3a4 fix(team): stabilize launch readiness signals 2026-05-13 18:09:05 +03:00
777genius
29ea1ae724 feat: add workspace trust preflight 2026-05-13 17:56:00 +03:00
777genius
20c3194160 feat(runtime): improve provider delivery visibility 2026-05-12 23:33:08 +03:00
777genius
7138887a3b feat(runtime): detect Claude Platform on AWS safely 2026-05-12 21:26:38 +03:00
777genius
3f2b807bbc feat(opencode): improve runtime delivery diagnostics 2026-05-12 13:26:33 +03:00
777genius
67b0f40607 test(team): update launch bootstrap prompt expectations 2026-05-11 17:51:11 +03:00
777genius
e3d0d56073 feat(team): capture launch failure artifacts 2026-05-11 17:29:19 +03:00
777genius
064f5b977d fix(team): watch task log freshness from team state 2026-05-11 15:19:45 +03:00
777genius
26c394674b feat(team): improve graph member log previews 2026-05-10 23:49:38 +03:00
777genius
cbe8d194ef chore: sync current frontend updates 2026-05-10 21:29:07 +03:00
777genius
da1e5dfc81 feat(team): warn on large native bootstrap context 2026-05-10 15:43:50 +03:00
777genius
63b89fcd39 feat: improve team model availability diagnostics 2026-05-10 10:11:44 +03:00
777genius
d0cfabca48 fix(ci): stabilize dev branch checks 2026-05-09 23:40:13 +03:00
777genius
92e84c8461 feat(team): refine review workflow indicators 2026-05-09 22:10:29 +03:00
777genius
bceef9dec5 feat(team): improve review change evidence flow 2026-05-09 17:44:09 +03:00
777genius
5d3ec8a8bd fix(team): hide review pickup escalation rows 2026-05-09 16:01:20 +03:00
777genius
fa829f92c8 fix(team): refine change extraction evidence 2026-05-09 15:30:51 +03:00
777genius
2ddfbf62ee test(team): checkpoint latest change extractor fixture 2026-05-09 14:36:35 +03:00
777genius
044e0231ae test(team): align change extractor review fixture 2026-05-09 14:36:10 +03:00
777genius
33c362b990 fix(team): checkpoint task detail review updates 2026-05-09 14:35:46 +03:00
777genius
ae717c7f00 test(team): update change extractor review coverage 2026-05-09 14:35:26 +03:00
777genius
bda2af87e4 feat(sync): expand member work review signals 2026-05-09 14:34:33 +03:00
777genius
e5278d1dbf test(team): update provisioning service coverage 2026-05-09 13:17:45 +03:00
777genius
8fd8949684 feat(team): harden opencode delivery advisories 2026-05-09 13:17:23 +03:00
777genius
409f84110e feat(team): checkpoint dashboard and runtime UX updates 2026-05-09 12:20:39 +03:00
777genius
96b9eab346 fix(team): refine provider diagnostics and model UI 2026-05-09 08:50:16 +03:00
777genius
4e3183d186 test(team): improve provider launch stress runner 2026-05-09 07:53:11 +03:00
777genius
0cb30b6ce3 fix(team): support pure opencode restart 2026-05-09 07:41:14 +03:00
777genius
6dab896aee fix(team): harden process launch diagnostics 2026-05-09 07:33:33 +03:00
777genius
81700a1a14 test(team): harden live launch smoke matrix 2026-05-09 05:52:26 +03:00
777genius
fc3bd61f93 chore(team): checkpoint launch stability work 2026-05-09 05:04:46 +03:00
777genius
869a443255 fix(attachments): persist opencode missing payload failures 2026-05-09 04:41:31 +03:00
777genius
bcbcb621c2 fix(opencode): harden team delivery reconciliation 2026-05-09 01:52:29 +03:00
777genius
7a29a0f2e8 test(team): update opencode semantic gauntlet 2026-05-09 00:26:42 +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
777genius
9d7542e9c4 fix(team): refine task duration timeline 2026-05-08 09:58:57 +03:00
777genius
51650dca33 fix(team): harden runtime advisory and pending sends 2026-05-08 09:49:05 +03:00
777genius
08ab7c6b6d fix(team): harden process bootstrap and codex auth 2026-05-08 09:28:28 +03:00
777genius
26baaf6924 chore: checkpoint agent launch hardening 2026-05-07 23:26:37 +03:00
777genius
5730ddc7af fix(team): harden codex login and runtime previews 2026-05-07 21:18:39 +03:00
777genius
8d06ee81c2 fix(team): stabilize launch previews and codex reconnect 2026-05-07 20:58:40 +03:00
777genius
0f9f79da66 fix(logs): scope graph preview lane requests 2026-05-07 20:14:59 +03:00
777genius
e777610baa test(sync): allow slower windows reconciliation 2026-05-07 19:32:27 +03:00
777genius
9d419626ef fix(ci): apply frontend validation fixes 2026-05-07 18:43:37 +03:00
777genius
30a6e36976 fix(team): stabilize graph preview validation 2026-05-07 18:07:00 +03:00
777genius
b9f82f8162 fix(team): preserve log stream participant filter 2026-05-07 17:52:03 +03:00
777genius
2e05941cba test(team): align launch dialog expectations 2026-05-07 17:27:45 +03:00
777genius
9a1b01b2b6 chore(runtime): bump runtime lock to 0.0.22 2026-05-07 17:16:06 +03:00
777genius
8caa962dec merge: member log stream v2
# Conflicts:
#	src/renderer/components/team/taskLogs/TaskLogStreamSection.tsx
#	test/main/services/team/TeamMemberLogsFinder.test.ts
2026-05-07 15:24:04 +03:00
777genius
9505ef8485 feat: add graph member log previews 2026-05-07 15:18:21 +03:00
777genius
fcca3649bf feat: add member log stream v2 2026-05-07 13:19:56 +03:00
777genius
a6f078c3d7 test(team): normalize log root expectation 2026-05-07 02:19:12 +03:00
777genius
43aba1ef11 fix(team): stabilize frontend ci checks 2026-05-07 01:57:33 +03:00
777genius
cbf2d364be fix(team): restore task automation ci 2026-05-07 01:38:28 +03:00
777genius
38b3a1e789 feat(team): update task automation state 2026-05-07 01:22:16 +03:00
777genius
2c30fd2235 feat(agent-graph): show live task log indicator 2026-05-07 01:07:06 +03:00
777genius
9b5b4023d2 perf(team): extend task log activity pulse 2026-05-07 00:44:25 +03:00
777genius
abe26ddcc4 perf(team): skip data refresh for log activity pulses 2026-05-06 23:30:51 +03:00
777genius
b7fa5443fd feat(team): show live task log activity 2026-05-06 23:15:27 +03:00
777genius
f57b1bf18b feat(opencode): surface runtime delivery diagnostics 2026-05-06 21:56:47 +03:00
777genius
3992ab0dab feat(tasks): update team task status timeline 2026-05-06 20:41:24 +03:00
777genius
9e1abb0332 chore(runtime): pin orchestrator 0.0.20 2026-05-06 20:20:26 +03:00
777genius
e96a74f4fa test(team): cover opencode repair policies 2026-05-06 19:22:14 +03:00
777genius
ac2b6c9352 fix(team): recognize native bootstrap control envelopes 2026-05-06 18:59:54 +03:00
777genius
2080e86f44 fix(team): satisfy bootstrap redaction lint 2026-05-06 18:39:17 +03:00
777genius
2a41010610 fix(team): filter internal control messages 2026-05-06 18:17:56 +03:00
777genius
1febc3448b feat(team): add app-managed native bootstrap 2026-05-06 17:34:01 +03:00
777genius
d60abd54fe chore: checkpoint team runtime work 2026-05-06 11:53:34 +03:00
777genius
d0012ed4cc test(member-work-sync): allow preserving claude stop hook temp dirs 2026-05-06 00:08:37 +03:00
777genius
ca28e1cef6 chore(runtime): pin orchestrator 0.0.18 2026-05-06 00:02:51 +03:00
777genius
899596b258 feat(member-work-sync): track task impact handoffs 2026-05-05 23:00:10 +03:00
777genius
bbafedf06a fix: stabilize OpenCode team runtime delivery 2026-05-05 17:07:21 +03:00
777genius
5d670ee51a test(composer): simplify draft storage idb mock 2026-05-05 10:43:01 +03:00
777genius
8558acbbc9 fix(landing): publish docs with pages build 2026-05-05 10:42:13 +03:00
777genius
b192ed4bae feat(team): improve composer persistence flow 2026-05-05 10:35:33 +03:00
777genius
7ab57bc8be fix(ci): stabilize opencode delivery checks 2026-05-05 01:16:55 +03:00
777genius
c8edfc6026 fix(team): harden opencode launch diagnostics 2026-05-05 00:47:05 +03:00
777genius
77c1fcc4e8 fix(team): preserve opencode bootstrap stall snapshots 2026-05-04 21:17:27 +03:00
777genius
dad9fefdc7 fix(team): handle partial opencode bootstrap stalls 2026-05-04 21:12:14 +03:00
777genius
cde85c0396 fix(team): stabilize mixed launch runtime states 2026-05-04 21:03:41 +03:00
777genius
d20fe2a538 feat: docs + optmizitation + improve launch 2026-05-04 17:21:05 +03:00
777genius
5c65f55067 feat(team): retry failed opencode secondary lanes 2026-05-04 14:48:55 +03:00
777genius
b1b2e696e5 perf(team): defer enrichments after first paint 2026-05-04 14:47:46 +03:00
777genius
f57d15c68f fix(team): preserve mixed launch failure diagnostics 2026-05-04 11:26:55 +03:00
777genius
b1d27c1382 perf(renderer): suppress launch structural refreshes 2026-05-04 11:12:20 +03:00
777genius
24d96b5bec fix(ci): handle windows-only test behavior 2026-05-04 09:37:58 +03:00
777genius
92a1c2067b fix(ci): restore dev validation gates 2026-05-04 09:12:53 +03:00
Илия
b92c8c2f54
Merge pull request #97 from sardorb3k/fix/globaltasklist-memo-rerender-test
fix(test): repair GlobalTaskList memo re-render test
2026-05-04 08:43:43 +03:00
777genius
eda62c3ab3 fix(team): stabilize mixed provider runtime auth 2026-05-03 23:51:49 +03:00
Mike
75c7bf47f3 fix(test): repair GlobalTaskList memo re-render test
React.memo blocks root.render() re-renders when props are unchanged,
so storeState task updates were invisible to the memoized component.
Switch useStore mock to a subscription model (useState + useEffect)
so notifyStoreUpdate() forces a proper re-render in the expansion test.
2026-05-04 01:47:11 +05:00
777genius
1a872b592a fix: clear stale team launch reconciliation 2026-05-03 15:00:16 +03:00
777genius
d0341e58af fix(team): retain launch status and clarify notifications 2026-05-03 13:18:53 +03:00
777genius
69a47fda07 test(team): cover stalled bootstrap runtime rows 2026-05-03 13:09:21 +03:00
777genius
e3c62eb620 fix(team): harden runtime status and opencode bootstrap 2026-05-03 13:09:21 +03:00
777genius
7e55fdd9cd chore(team): instrument refresh fanout diagnostics 2026-05-03 13:07:34 +03:00
Илия
e21d89a057
perf(renderer): performance improvements — React.memo + test stabilization Merge pull request #93 from sardorb3k/improve/v1.3
Merge pull request #93 from sardorb3k/improve/v1.3
2026-05-03 13:02:14 +03:00
777genius
b99be7d007 fix(team): lazy load lead context detail 2026-05-03 10:52:38 +03:00
777genius
9421fad08d fix(team): surface stalled OpenCode bootstrap lanes 2026-05-03 10:32:37 +03:00
777genius
1339629da2 fix(team): scope log source tracking 2026-05-03 10:25:38 +03:00
777genius
2fde1ad7fc fix(team): avoid full session scan on team open 2026-05-03 09:42:14 +03:00
777genius
511e4178be fix(team): streamline opencode secondary lane launch 2026-05-03 09:30:56 +03:00
777genius
90d887fcce chore: merge dev into improve/v1.3 2026-05-03 09:15:14 +03:00
777genius
ad7c4e24ad perf(team): reduce launch status IO churn 2026-05-02 23:55:09 +03:00
777genius
fcb9179990 perf(team): reduce launch IO pressure 2026-05-02 23:15:34 +03:00
777genius
b187bbcdd0 perf: add launch IO governor for team summaries 2026-05-02 22:14:08 +03:00
777genius
a652c44794 perf(team): reduce verified config reads 2026-05-02 21:29:22 +03:00
777genius
4385b0c679 perf(team): cache team data reads safely 2026-05-02 20:24:46 +03:00
Mike
7609c548c5 fix(tests): resolve pre-existing test failures on non-standard environments
- TeamProvisioningServiceRelay: add missing stat fields (mode, dev, ino,
  mtimeMs, ctimeMs, birthtimeMs) to fs mock so new fingerprint-based
  TeamConfigReader cache can read config in tests
- TeamMcpConfigBuilder: export clearResolvedNodePathForTests() to reset
  module-level node path cache between tests; restore execFileMock
  implementation in beforeEach after vi.restoreAllMocks() clears it;
  broaden node binary regex to accept versioned names (node-22, node-20)
  common on Fedora/RHEL systems
- ScheduledTaskExecutor: strip CLAUDECODE at spawn site as last defence
  so nested-session detection is prevented even when buildProviderAwareCliEnv
  merges it back in from the outer process environment
2026-05-02 20:10:42 +05:00
777genius
e96f97d83d fix: stabilize team launch runtime status 2026-05-02 11:50:07 +03:00
777genius
01b8161f41 fix(team): preserve explicit launch defaults 2026-05-01 23:43:36 +03:00
777genius
90aa2942f9 feat(task-logs): show codex native trace fallback 2026-05-01 22:43:11 +03:00
Zelen
ca21ab206e
fix(team): render agent error messages
* fix(team): render agent error messages

* test(team): cover agent error activity rendering

* fix(ci): clear ui lint gate

* test(team): reset config cache in relay suites

* test(team): harden mixed lane matrix waits

* test(team): harden ci-sensitive team assertions

---------

Co-authored-by: iliya <iliyazelenkog@gmail.com>
Co-authored-by: 777genius <quantjumppro@gmail.com>
2026-05-01 21:25:03 +03:00
777genius
f7e14e2b9a test(team): harden runtime advisory live smoke 2026-05-01 20:13:28 +03:00
777genius
601d51d54e fix(team): harden launch reconciliation and diagnostics 2026-05-01 20:10:14 +03:00
777genius
db4a73bda7 test(team): cover advisory snapshot timeout 2026-05-01 18:43:28 +03:00
777genius
44f609ab6a fix(team): harden launch state tracking 2026-05-01 18:41:33 +03:00
777genius
511ea75c4f fix(task-logs): invalidate sources before change events 2026-05-01 17:56:33 +03:00
777genius
b584fa0403 fix(task-logs): cache transcript discovery safely 2026-05-01 17:46:49 +03:00
777genius
50ce94dcaa fix(team-runtime): suppress opencode heartbeat spawn noise 2026-05-01 17:24:24 +03:00
777genius
c536557991 fix(member-work-sync): serialize audit journal appends 2026-05-01 17:15:16 +03:00
777genius
5224fe4cda fix: harden opencode launch recovery 2026-05-01 17:00:20 +03:00
777genius
3240ea6406 fix: harden teammate runtime lifecycle handling 2026-05-01 12:23:10 +03:00
777genius
0ace2a6255 fix(team): harden opencode runtime status and effort UI 2026-04-30 23:11:22 +03:00
777genius
752ae9ea4b fix(team): materialize recovered opencode lane manifests 2026-04-30 23:11:20 +03:00
777genius
7dc4a1976d test(member-work-sync): restore boundary coverage 2026-04-30 23:11:20 +03:00
777genius
9fb9e5f66a chore: snapshot dev work sync state 2026-04-30 23:11:18 +03:00
777genius
62691e203d test(member-work-sync): clean claude live temp dirs 2026-04-30 23:11:15 +03:00
777genius
f391dda3cb fix(opencode): pass full MCP launch args 2026-04-30 23:11:13 +03:00
777genius
0b28d8f4b2 fix(member-work-sync): ignore non-terminal opencode turns 2026-04-30 23:10:05 +03:00
777genius
f0a5cf7617 test(opencode): await live provisioning cleanup 2026-04-30 23:10:03 +03:00
777genius
0af9994c9a feat(member-work-sync): ingest opencode turn-settled events 2026-04-30 23:09:59 +03:00
iliya
62a1b0e865 fix: show effective Anthropic API key status 2026-04-30 22:21:29 +03:00
iliya
bab17e91ba test: launch dev mcp preflight through tsx bin 2026-04-30 11:32:41 +03:00
777genius
7d08205a23 fix(ci): clean member work sync validation 2026-04-30 00:05:58 +03:00
777genius
7fa71019b2 fix: launch dev mcp server via node 2026-04-29 22:43:42 +03:00
777genius
27a38034cc fix(member-work-sync): infer codex settled env from model 2026-04-29 22:43:42 +03:00
777genius
55ffb185c3 fix(member-work-sync): reclaim stale turn settled payloads 2026-04-29 22:43:41 +03:00
777genius
3ce183a229 fix(member-work-sync): pass codex turn settled env to mixed teams 2026-04-29 22:43:41 +03:00
777genius
8e7f7bea43 feat(member-work-sync): ingest codex turn settled events 2026-04-29 22:43:41 +03:00
777genius
adb2b5c351 test(member-work-sync): support codex connected-account live runs 2026-04-29 22:43:41 +03:00
777genius
b8cbe40c01 test: stabilize claude stop hook live report check 2026-04-29 22:43:41 +03:00
777genius
88d9b7c0c5 test(member-work-sync): fail fast on codex live runtime errors 2026-04-29 22:43:41 +03:00
777genius
ad331b131f test: preserve opencode semantic live artifacts 2026-04-29 22:43:41 +03:00
777genius
dbec466c14 test: fail fast on claude live api errors 2026-04-29 22:43:41 +03:00
777genius
0d83f94537 test: require post-validation claude stop hook 2026-04-29 22:43:41 +03:00
777genius
10188109eb fix(team-mcp): route agent teams mcp to app state 2026-04-29 22:43:41 +03:00
777genius
bfd8b30ad5 test: expand claude work sync live scenarios 2026-04-29 22:43:20 +03:00
777genius
7cb6cddee8 test: stabilize claude work sync live e2e 2026-04-29 22:43:20 +03:00
777genius
4d0cce601a test: add member work sync live e2e coverage 2026-04-29 22:43:20 +03:00
777genius
05d9b5a9b1 feat: add member work sync stop hook ingest 2026-04-29 22:43:19 +03:00
777genius
b2edfe5d2a test: characterize runtime settings hook merge 2026-04-29 22:43:19 +03:00
777genius
90401b41a1 chore(member-work-sync): clarify lifecycle dispatch boundary 2026-04-29 22:43:19 +03:00
777genius
d27c1bcc51 fix(member-work-sync): preserve undelivered nudge retries 2026-04-29 22:43:19 +03:00
777genius
f705cd25cb feat(member-work-sync): schedule due nudge dispatch 2026-04-29 22:43:19 +03:00
777genius
53c72e56ae feat(member-work-sync): suppress nudges while members are busy 2026-04-29 22:43:19 +03:00
777genius
325f1ffba2 fix(member-work-sync): keep diagnostics reads passive 2026-04-29 22:43:19 +03:00
777genius
99b636fd33 feat(member-work-sync): rate limit nudge retries 2026-04-29 22:43:19 +03:00
777genius
895c3afc5e feat(member-work-sync): dispatch nudges after reconcile 2026-04-29 22:43:18 +03:00
777genius
23714f5ca8 feat(member-work-sync): add guarded nudge dispatcher 2026-04-29 22:43:18 +03:00
777genius
3552a4ba61 feat(member-work-sync): plan nudges behind readiness 2026-04-29 22:43:18 +03:00
777genius
ec7935e593 feat(member-work-sync): add durable nudge outbox store 2026-04-29 22:43:18 +03:00
777genius
c5a97fd796 feat(member-work-sync): assess phase two readiness 2026-04-29 22:43:18 +03:00
777genius
ab459fbae0 feat(member-work-sync): show status in member details 2026-04-29 22:43:18 +03:00
777genius
98a7c915ed feat(member-work-sync): add neutral renderer diagnostics 2026-04-29 22:43:18 +03:00
777genius
246f31bbdb feat(member-work-sync): expose shadow metrics 2026-04-29 22:43:17 +03:00
777genius
99b0279841 feat(member-work-sync): add renderer status view model 2026-04-29 22:43:17 +03:00
777genius
253ddf293d feat(member-work-sync): replay pending report intents 2026-04-29 22:43:17 +03:00
777genius
10e405573e feat(member-work-sync): add passive event queue 2026-04-29 22:43:17 +03:00
777genius
b346a1146c feat(member-work-sync): require report tokens for reports 2026-04-29 22:43:17 +03:00
777genius
c39167ece7 feat: add member work sync control plane 2026-04-29 22:43:17 +03:00
iliya
5a8a934d8d fix: make Windows agent launches independent of tmux 2026-04-29 12:30:37 +03:00
777genius
02c7e99970 test(changes): drop legacy evidence mode assertions 2026-04-29 11:26:43 +03:00
777genius
ca16ccecce merge: opencode hybrid evidence ui continuation 2026-04-29 11:19:19 +03:00
777genius
93532f3ff5 feat: expose agent teams control via MCP 2026-04-29 10:55:07 +03:00
777genius
07a9f603de fix(changes): require strict ledger hunk rejects 2026-04-29 00:14:53 +03:00
777genius
d3399e631b test(team): stabilize mixed opencode lane readiness check 2026-04-28 23:54:51 +03:00
777genius
642cea8857 fix(changes): rank full text evidence by blobs 2026-04-28 23:42:35 +03:00
777genius
fdf5ddeb61 fix(changes): project opencode upgrades in detail view 2026-04-28 23:34:17 +03:00
777genius
756fd7f537 feat(team): refine team list status display 2026-04-28 23:15:32 +03:00
777genius
143f905b86 test(changes): cover supported opencode backfill cache 2026-04-28 23:14:22 +03:00
777genius
ef82755b17 fix(changes): avoid caching stale opencode contracts 2026-04-28 23:10:41 +03:00
777genius
7b5924c8bd fix(changes): accept opencode evidence contract version 2026-04-28 23:05:44 +03:00
777genius
53012ed623 fix(changes): pass verified opencode delivery context 2026-04-28 22:52:05 +03:00
777genius
ee590d0a62 test(changes): ignore related opencode deliveries 2026-04-28 22:39:47 +03:00
777genius
6bc9ddbc3e test(changes): ignore display-only opencode delivery 2026-04-28 22:34:27 +03:00
777genius
9d9c7fbd38 fix(changes): reread ledger after opencode backfill failure 2026-04-28 22:33:11 +03:00
777genius
ba09010fcb fix(changes): derive opencode backfill member from delivery 2026-04-28 22:28:58 +03:00
777genius
819a1f6e8f test(changes): reset decisions on ledger evidence upgrade 2026-04-28 21:58:24 +03:00
777genius
9f785ee3b2 test(changes): keep opencode transient backfill retryable 2026-04-28 21:47:52 +03:00
777genius
c065dc703d fix(changes): remove opencode evidence mode from ui bridge 2026-04-28 21:41:56 +03:00
777genius
ff506d0d96 fix(changes): fingerprint projected ledger summaries 2026-04-28 21:08:10 +03:00
777genius
4895a00474 fix(ci): restore opencode relay recovery 2026-04-28 21:03:21 +03:00
777genius
50b2c715e7 feat(changes): use default opencode evidence path 2026-04-28 20:51:05 +03:00
777genius
8ac0b43a2a perf(runtime): speed up dashboard provider status loading 2026-04-28 20:36:17 +03:00
777genius
8da5b7f25d feat(changes): pass opencode evidence mode 2026-04-28 20:20:07 +03:00
777genius
051bfe2319 feat: prefer orchestrator codex model catalog 2026-04-28 20:13:03 +03:00
777genius
42c9cbd227 fix(team): restart shell-only tmux teammates directly 2026-04-28 19:06:36 +03:00
777genius
4d5533585c fix(team): reconcile teammate launch liveness 2026-04-28 18:38:46 +03:00
Илия
1d19a59b12
Merge pull request #91 from 777genius/feat/tmux-optional-process-backend
test(team): strengthen tmux decoupling checks
2026-04-28 17:49:40 +03:00
Илия
ec3740d9c8
Merge pull request #90 from 777genius/fix/provisioning-live-output-trace
feat(team): surface provisioning trace in live output
2026-04-28 17:49:18 +03:00
777genius
7bb24934a5 feat(team): enable task stall monitoring by default 2026-04-28 17:42:19 +03:00
777genius
28d0ab20c0 feat(team): support controlled opencode teammate relaunch 2026-04-28 17:42:19 +03:00
777genius
95da573081 fix(agent-graph): improve stopped team visuals 2026-04-28 17:42:18 +03:00
777genius
e87ef2dd85 fix(codex): propagate native runtime context 2026-04-28 17:42:18 +03:00
777genius
bef34983f5 fix(team): recover opencode runtime lane indexes 2026-04-28 17:42:18 +03:00
777genius
1f7f31f3ee fix(team): preserve task log owners across codex transcripts 2026-04-28 17:41:06 +03:00
777genius
075976fd23 feat(team): surface provisioning trace in live output 2026-04-28 17:25:10 +03:00
iliya
c66923c868 test(team): strengthen tmux decoupling checks 2026-04-28 17:14:14 +03:00
Илия
2c2f84a00e
feat(team): make tmux optional for desktop teammates Merge pull request #89 from 777genius/feat/tmux-optional-process-backend
Merge pull request #89 from 777genius/feat/tmux-optional-process-backend
2026-04-28 16:42:43 +03:00
iliya
31ae128778 feat(team): make tmux optional for desktop teammates 2026-04-28 16:13:45 +03:00
Илия
a8d53ca5cb
fix(ci): restore dev validation 2026-04-28 16:08:05 +03:00
777genius
82f73e58c2 fix: improve team runtime recovery and launch settings 2026-04-28 12:08:01 +03:00
777genius
e48ecf664a fix(changes): keep metadata-only ledger events manual 2026-04-28 11:28:20 +03:00
777genius
8f7712ed74 fix(team): improve opencode task log rendering 2026-04-27 23:50:23 +03:00
777genius
531a10e34f fix: improve opencode runtime task logs 2026-04-27 20:49:44 +03:00
777genius
376480b84f feat(team): improve stall monitor signals 2026-04-27 20:01:05 +03:00
777genius
212cd37d3f feat(team): improve runtime lane presence state 2026-04-27 17:40:13 +03:00
777genius
afe50439b1 refactor(team): move opencode retry policy helper 2026-04-27 13:47:04 +03:00
777genius
9fe9f81046 feat(team): add worktree readiness checks 2026-04-27 13:46:11 +03:00
777genius
ea25e6ba58 perf(team): cache board task activity records 2026-04-27 12:40:11 +03:00
777genius
6707cc3b60 test(team): stabilize windows launch matrix checks 2026-04-27 12:21:22 +03:00
777genius
11d5851953 perf(team): defer task log stream work until opened 2026-04-27 12:20:16 +03:00
777genius
ba06fba5a5 fix: remove legacy opencode prompt markers 2026-04-27 11:45:05 +03:00
777genius
9a3e17ce70 feat: add opencode task change diagnostics 2026-04-27 11:23:35 +03:00
777genius
fe3a1a3cb3 test(team): cover shared task log layout work 2026-04-27 11:18:30 +03:00
777genius
068e473d2d fix(team): clear delivered runtime message warnings 2026-04-27 11:15:57 +03:00
777genius
b26f0b05ba fix: hide duplicate opencode runtime replies 2026-04-26 21:52:24 +03:00
777genius
dc3eae1555 fix: keep opencode follow-up messages visible 2026-04-26 21:44:39 +03:00
777genius
b67168a9e8 fix: show opencode teammate replies in messages 2026-04-26 21:35:48 +03:00
777genius
8061b66c34 merge: sync main into dev 2026-04-26 13:12:20 +03:00
777genius
bf0e209d77 fix: remove duplicate opencode gauntlet property 2026-04-26 12:44:08 +03:00
777genius
06beb7f416 merge: opencode ledger bridge ui 2026-04-26 12:42:17 +03:00
777genius
f2c43dc4b3 feat: add opencode ledger bridge ui 2026-04-26 12:41:44 +03:00
777genius
17e1a448dc merge: integrate runtime compatibility notices 2026-04-26 12:33:45 +03:00
777genius
610bfc561d feat(opencode): persist teammate worktree context 2026-04-26 12:31:15 +03:00
iliya
3f1c1acb4f fix(windows): harden runtime project compatibility 2026-04-26 11:44:35 +03:00
777genius
49982a1db8 feat: improve opencode model verification ux 2026-04-26 10:21:18 +03:00
777genius
238900f3cf feat(runtime-provider-management): expand opencode setup UI 2026-04-25 23:36:28 +03:00
777genius
c2e14ea9df fix(runtime-provider-management): unify opencode provider list 2026-04-25 21:15:52 +03:00
777genius
2518445b3b test(opencode): allow live harness real credentials 2026-04-25 20:36:14 +03:00
777genius
427f48dd71 merge: integrate runtime compatibility notices 2026-04-25 20:28:36 +03:00
iliya
645ac4573e fix(windows): align session paths and validators 2026-04-25 20:23:03 +03:00
777genius
951c52a5d2 fix(runtime-provider-management): keep filtered provider selection explicit 2026-04-25 20:18:11 +03:00
777genius
41ca9fc0cb fix(runtime-provider-management): harden provider directory interactions 2026-04-25 19:48:23 +03:00
777genius
7fb5c8cf85 feat(runtime-provider-management): add provider directory bridge 2026-04-25 19:20:59 +03:00
iliya
f2b7024226 fix(windows): support path mentions and editor launch 2026-04-25 19:12:11 +03:00
777genius
825cfc00d1 test(runtime-provider-management): cover project-aware opencode flow 2026-04-25 18:40:01 +03:00
777genius
351ae4f4ed fix(opencode): explain missing openrouter catalog provider 2026-04-25 18:01:49 +03:00
777genius
661f308ab4 fix(opencode): accept openrouter nested model aliases 2026-04-25 17:44:28 +03:00
777genius
523d450bc8 feat(app): improve runtime provider and tmux flows 2026-04-25 17:28:56 +03:00
iliya
75f9e6bcec feat: add teammate runtime compatibility notices and test coverage 2026-04-25 17:19:30 +03:00
777genius
19b6937446 feat(opencode): harden delivery and provider UI 2026-04-25 14:30:10 +03:00
777genius
ade312ad87 fix(agent-graph): tune stable slot spacing 2026-04-25 09:47:14 +03:00
777genius
937b23be4b fix(ci): isolate vitest home path 2026-04-25 02:27:40 +03:00
777genius
78c49fc631 fix(ci): stabilize ubuntu runtime tests 2026-04-25 02:09:01 +03:00
777genius
f06dc16a63 fix(ci): harden windows runtime smoke tests 2026-04-25 01:35:07 +03:00
777genius
465b031873 fix(ci): stabilize windows team runtime tests 2026-04-25 00:56:30 +03:00
777genius
2f37be4bd0 fix(opencode): harden runtime projection delivery 2026-04-25 00:41:27 +03:00
777genius
dec0eaba18 feat(team): harden messaging tools and runtime bootstrap 2026-04-24 23:44:44 +03:00
777genius
e6e3ae9f54 fix(team): harden launch failure recovery copy 2026-04-24 23:25:53 +03:00
777genius
84412066e8 feat(opencode): add host cleanup lifecycle bridge 2026-04-24 22:57:58 +03:00
777genius
7f9afeef14 test(opencode): align semantic messaging merge tests 2026-04-24 22:52:58 +03:00
777genius
4d1a6149b0 Merge branch 'dev' into feat/opencode-semantic-messaging-seam
# Conflicts:
#	agent-teams-controller/src/internal/crossTeam.js
#	mcp-server/src/tools/messageTools.ts
#	mcp-server/src/tools/taskTools.ts
#	src/main/services/team/opencode/bridge/OpenCodeReadinessBridge.ts
#	src/main/services/team/opencode/e2e/OpenCodeProductionE2EEvidence.ts
#	test/main/services/team/OpenCodeProductionE2EEvidence.test.ts
#	test/main/services/team/OpenCodeProductionGate.live.test.ts
#	test/main/services/team/OpenCodeReadinessBridge.test.ts
2026-04-24 22:48:59 +03:00
777genius
64c9ddc78c feat(opencode): add semantic messaging seam 2026-04-24 22:41:16 +03:00
777genius
3fe9a24e41 feat(team): harden launch liveness and recovery 2026-04-24 22:34:08 +03:00
777genius
2c286a453e test: align opencode project evidence notes 2026-04-24 20:59:47 +03:00
777genius
665fff14b5 test: cover opencode project evidence prepare 2026-04-24 20:53:45 +03:00
777genius
ebb7b5289d fix: harden team runtime liveness 2026-04-24 20:52:26 +03:00
777genius
a39ae2fb84 test(team): cover member liveness mode 2026-04-24 16:18:47 +03:00
777genius
d517f2b320 feat(team): harden member runtime liveness 2026-04-24 16:18:12 +03:00
777genius
267a192329 fix(notifications): recover corrupted history writes 2026-04-24 12:24:21 +03:00
777genius
1c07e0fdb6 feat(team): expand opencode review and release support 2026-04-24 12:05:54 +03:00
777genius
ba4de3775b fix(ci): stabilize team launch reconciliation 2026-04-24 01:28:11 +03:00
777genius
fc1daef5e6 test: remove stale launch status waits 2026-04-24 00:40:45 +03:00
777genius
bc2e1e43d8 feat: refine team provisioning and task log UX 2026-04-24 00:40:11 +03:00
777genius
55b369de96 fix(ci): stabilize team runtime lane validation 2026-04-23 22:17:20 +03:00
777genius
0bde66b032 fix(runtime): pass provider args through codex probes 2026-04-23 21:29:19 +03:00
777genius
155a9f76ab test(team): resolve wrapper modules from repo root 2026-04-23 21:23:37 +03:00
777genius
bd49e9b09d test(team): wrap worker fallback with tsx register 2026-04-23 21:17:50 +03:00
777genius
c1b2f08af5 test(team): stabilize worker fallback path resolution 2026-04-23 21:13:20 +03:00
777genius
501074e8c3 fix(team): stabilize opencode launch and task logs 2026-04-23 21:08:28 +03:00
777genius
70dd17c784 fix(runtime): honor stored Anthropic API key state 2026-04-23 20:08:17 +03:00
777genius
e01e099c6c fix(opencode): harden bridge delivery and bump runtime 2026-04-23 19:24:02 +03:00
777genius
9ebc4368d0 fix: stabilize opencode team launch recovery 2026-04-23 18:27:03 +03:00
777genius
f4e4ecca2e fix(team): degrade failed opencode prelaunch lanes 2026-04-23 13:28:46 +03:00
777genius
fa8bbcbb38 test(team): add opencode mixed recovery smoke 2026-04-23 13:25:38 +03:00
777genius
fe830da37d fix(team): sync mixed launch state back into live runs 2026-04-23 11:14:28 +03:00
777genius
b955901e15 fix(team): keep persisted launch failure details visible 2026-04-23 04:30:33 +03:00
777genius
e309eb8a0d fix(team): keep permission launch updates in store 2026-04-23 04:26:33 +03:00
777genius
6ea8b469f0 fix(team): map suffixed runtime metadata to launch statuses 2026-04-23 04:22:58 +03:00
777genius
560e14d5ad fix(team): include richer launch members in runtime snapshot 2026-04-23 04:20:01 +03:00
777genius
9766a2b7fc fix(team): match suffixed inbox senders during launch 2026-04-23 04:17:00 +03:00
777genius
b29adf1008 fix(team): match suffixed live agents during reconcile 2026-04-23 04:11:59 +03:00
777genius
1223fa236a fix(team): reconcile richer persisted launch members 2026-04-23 04:09:08 +03:00
777genius
be76b332c9 fix(team): expose richer launch member sets 2026-04-23 04:06:01 +03:00
777genius
8332e416a2 fix(team): preserve expected members on opencode heartbeat 2026-04-23 04:02:52 +03:00
777genius
98751a2cfc fix(team): prefer richer persisted launch snapshots 2026-04-23 04:00:17 +03:00
777genius
33f51b68a7 fix(team): keep launch summary projection aligned 2026-04-23 03:57:05 +03:00
777genius
f036cf0386 fix(team): prefer persisted join state over missing live entries 2026-04-23 03:01:34 +03:00
777genius
02419ec8ee fix(team): use persisted launch member union 2026-04-23 02:40:29 +03:00
777genius
82d4f094f4 fix(team): use persisted launch counts in pending copy 2026-04-23 02:38:39 +03:00
777genius
d8f0d78358 fix(team): trust persisted permission state in renderer 2026-04-23 02:36:35 +03:00
777genius
34dd669d88 fix(team): trust persisted permission launch state 2026-04-23 02:31:56 +03:00
777genius
842a929a83 fix(team): trust permission request ids in launch copy 2026-04-23 02:30:04 +03:00
777genius
146b839b9c fix(team): keep permission-pending launches from reading ready 2026-04-23 02:26:50 +03:00
777genius
e8ebe68576 fix(team): keep member launch labels consistent 2026-04-23 02:22:20 +03:00
777genius
0821b182e2 fix(team): keep member detail launch labels honest 2026-04-23 02:14:32 +03:00
777genius
006c242dc3 fix(team): keep missing opencode members bootstrap-pending 2026-04-23 02:11:06 +03:00
777genius
55021880e0 fix(team): preserve opencode member diagnostics 2026-04-23 02:08:56 +03:00
777genius
3f8276147e fix(team): make permission-pending launch copy honest 2026-04-23 02:04:55 +03:00
777genius
400eaf9acd fix(team): keep launch summary aligned with persisted members 2026-04-23 02:01:56 +03:00
777genius
72517418d9 fix(team): keep persisted launch members in spawn statuses 2026-04-23 01:59:59 +03:00
777genius
53d45c5e30 fix(team): keep launch loader for runtime-pending members 2026-04-23 01:56:38 +03:00
777genius
15f7219997 fix(team): clear permission state after approval 2026-04-23 01:48:25 +03:00
777genius
80beb3c877 fix(team): clear stale permission launch state 2026-04-23 01:44:55 +03:00
777genius
76fca31fb1 fix(team): make launch summary copy honest 2026-04-23 01:40:51 +03:00
777genius
3e53391a73 fix(team): preserve launch error and permission details 2026-04-23 01:36:52 +03:00
777genius
65fa117626 fix(team): preserve pure opencode permission state 2026-04-23 01:31:09 +03:00
777genius
a123b2e247 fix(team): surface permission-blocked launch state in graph 2026-04-23 01:13:17 +03:00
777genius
cfc50df5a1 fix(team): preserve opencode permission-blocked launch state 2026-04-23 01:10:05 +03:00
777genius
8cd3f04c20 fix(team): align permission-blocked launch state 2026-04-23 01:05:54 +03:00
777genius
2b96adda33 fix(team): avoid stale launch join mismatches 2026-04-23 00:51:34 +03:00
777genius
d3baf501f6 fix(team): keep launch join state aligned with pending roster 2026-04-23 00:47:37 +03:00
777genius
065ec81466 fix(team): keep launch failure copy without live details 2026-04-23 00:43:35 +03:00
777genius
1cb9af3fc7 fix(team): tighten pending launch runtime reporting 2026-04-23 00:36:22 +03:00
777genius
9005deb05c fix(team): prefer live launch truth over stale summary 2026-04-23 00:30:01 +03:00
777genius
2db49d694c fix(team): harden team launch and create flows 2026-04-23 00:21:26 +03:00
777genius
6211fd95ab fix(team): recover stale mixed opencode lane state 2026-04-22 20:34:42 +03:00
777genius
7cdee429ec fix(team): avoid leaking lead backend into mixed member summary 2026-04-22 20:16:27 +03:00
777genius
5ab14682a2 feat(team): support mixed runtime lanes and improve preflight UX 2026-04-22 20:10:20 +03:00
777genius
185789cc0a fix(opencode): tighten readiness and create-team preflight 2026-04-22 02:14:23 +03:00
777genius
6a9f281eca fix(opencode): preserve loading state during runtime hydration 2026-04-21 23:24:09 +03:00
777genius
94b97c4930 fix(team): preserve worktree isolation in edit snapshots 2026-04-21 22:47:19 +03:00
777genius
708e1c3bf2 merge(team): integrate teammate worktree isolation ui 2026-04-21 22:35:32 +03:00
777genius
339fb072e5 feat(team): add teammate worktree isolation controls 2026-04-21 22:35:18 +03:00
777genius
db94a08712 Merge remote-tracking branch 'origin/dev' into dev 2026-04-21 22:23:14 +03:00
777genius
796c529439 feat(runtime): add provider fast mode support 2026-04-21 22:22:47 +03:00
777genius
dc4d117a8e feat(opencode): enable managed runtime defaults 2026-04-21 22:17:11 +03:00
777genius
28b64ec467 fix(opencode): scope model preflight by provider 2026-04-21 21:22:40 +03:00
777genius
09004df72c feat(opencode): add production proof workflow 2026-04-21 21:03:48 +03:00
777genius
62cded28cc test(opencode): persist live production evidence 2026-04-21 20:43:39 +03:00
777genius
5e31bd1c06 feat(opencode): add team runtime integration 2026-04-21 20:28:22 +03:00
777genius
e20d74d95e test(teams): run cmd mcp preflight through shell on Windows 2026-04-21 18:42:26 +03:00
777genius
e0d32d59ff fix(task-change-ledger): normalize fixture paths on Windows 2026-04-21 18:19:29 +03:00
777genius
728603d788 test(teams): stabilize runtime launch validation mocks 2026-04-21 18:06:35 +03:00
777genius
95b62d6013 fix(task-change-ledger): read long hashed task artifacts 2026-04-21 18:02:40 +03:00
777genius
f40ea4f738 feat(agent-teams): add derived task queue agenda 2026-04-21 17:22:54 +03:00
777genius
7b486b7fea feat(task-change-ledger): merge review hardening 2026-04-21 17:22:01 +03:00
777genius
c69b7e4212 feat(task-change-ledger): harden review flow 2026-04-21 17:21:29 +03:00
777genius
7374108a71 fix(teams): preserve explicit provider during relaunch 2026-04-21 17:16:49 +03:00
777genius
1db7e501a0 feat(teams): introduce fast mode configuration for Anthropic provider and enhance related UI components 2026-04-21 16:44:18 +03:00
777genius
331166216e feat(team-runtime): snapshot catalog-backed picker baseline 2026-04-21 15:29:23 +03:00
777genius
7a337b6268 feat(codex): add app-server model catalog 2026-04-21 12:45:34 +03:00
777genius
99102565f3 feat(ledger): integrate task change ledger functionality into file content resolution and review application processes 2026-04-21 12:25:42 +03:00
777genius
66409ca56b fix(test): stabilize post-compact reminder assertion 2026-04-20 22:07:02 +03:00
Илия
4931115b7a
feat(codex): rewrite to app-server rich variant Merge pull request #80 from 777genius/spike/codex-native-runtime-plan
Merge pull request #80 from 777genius/spike/codex-native-runtime-plan
2026-04-20 20:54:35 +03:00
777genius
19e7ea995e fix(ci): stabilize workspace test suite 2026-04-20 20:38:12 +03:00
777genius
a76404fec7 feat(agent-graph): add activity visibility toggle 2026-04-20 20:33:34 +03:00
777genius
5683973c04 feat(codex): add app-server account management and polish native UX 2026-04-20 20:18:21 +03:00
777genius
8093201b78 Merge remote-tracking branch 'origin/dev' into spike/codex-native-runtime-plan
# Conflicts:
#	docs/research/codex-native-runtime-integration-decision.md
2026-04-20 19:42:49 +03:00
Илия
6929ab2a34
Merge pull request #75 from sardorb3k/perf/virtualization-threshold-tests
perf(team): enable virtualization past threshold + tests
2026-04-20 09:00:07 +03:00
777genius
63bc5ed866 fix(team): stabilize activity timeline virtualization 2026-04-20 08:59:38 +03:00
Mike
05f68ced44 perf(team): enable virtualization past threshold + tests
Final step of the virtualization plan. Turns the virtualized render
path on in production behind a row-count threshold, and adds regression
tests covering every gate.

- `VIRTUALIZATION_ROW_THRESHOLD = 60`. Short lists stay on the direct
  render path (no wrapper, no position: absolute, no measurement
  churn). Above the threshold the virtualizer takes over. Threshold is
  sized so conversations under ~one session of activity don't pay the
  virtualization cost; it activates once scrolling through a longer
  history.
- `shouldVirtualize` now requires `renderRows.length >= threshold` in
  addition to the existing opt-in and scroll-ref checks.
- `MessagesPanel` opts into virtualization for every layout it wires
  (inline / sidebar / bottom-sheet). The internal threshold then
  decides when to actually enable it, so callers don't need per-layout
  heuristics.
- Tests: adds a new `ActivityTimeline virtualization threshold` block
  covering (a) below-threshold list stays on the direct path,
  (b) no viewport → direct path regardless of count, (c) above
  threshold + viewport with `virtualizationEnabled` flips to the
  virtualized render path (simulated by clicking "show all" past
  pagination).

With this in, #70#74 combine to deliver:
- correct IntersectionObserver roots in scroll containers
- atomic render rows with stable keys
- windowed rendering with DOM-measured scrollMargin and measureElement
- auto-on when the cost of direct rendering actually shows up
2026-04-20 00:56:28 +05:00
Mike
a43fedcaab refactor(team): flatten ActivityTimeline render into atomic rows
Third step of the virtualization plan. Pure refactor — no UI change, no
virtualization yet. Prepares the timeline for row-level windowing.

- Introduces `TimelineRow`, a discriminated union of `session-separator`,
  `lead-thought-group` (pinned and non-pinned), `compaction-divider`,
  and `message-row`. Each row maps 1:1 to a single visual element.
- Adds a `renderRows` useMemo that walks `timelineItems` once and emits
  atomic rows, hoisting session separators out of the Fragment bundle
  that used to pair them with their owning item. This is the shape a
  windowing layer needs: each row measurable and addressable
  independently.
- Extracts a `renderTimelineRow(row)` helper that switches on `row.kind`
  and returns the same JSX the previous inline render produced. Logic
  per kind is identical — keys, memoization, collapse props, pinned
  thought "live" semantics — so there is no visual diff.
- The render body collapses from two blocks (pinned + `.slice().map()`)
  into a single `renderRows.map(renderTimelineRow)` call.

Follow-ups will virtualize `renderRows` with measured row heights and
tighten observer/animation wiring; pagination, collapse state, zebra
striping, and `groupTimelineItems` are untouched.
2026-04-20 00:47:02 +05:00
777genius
1794e5be4e refactor(runtime): finalize codex native-only config contract 2026-04-19 22:44:48 +03:00
777genius
cb62acb4fb fix(team): harden restart and session refresh flows 2026-04-19 22:34:43 +03:00
777genius
5d014b375b fix(runtime): tighten codex native-only phase 4 truth 2026-04-19 22:29:26 +03:00
777genius
1f7dd2100f refactor(runtime): remove legacy codex lanes 2026-04-19 22:22:13 +03:00
Mike
d4f518e8c5 refactor(team): viewport contract + observer root for ActivityTimeline
Second step of the virtualization plan. No virtualization yet. This PR
makes IntersectionObserver-based visibility tracking correct inside
scroll containers (sidebar, bottom-sheet), which is a prerequisite for
virtualizing the timeline.

- Introduces `TimelineViewport` — a grouped contract passed as a single
  `viewport` prop on `ActivityTimeline`. Holds `scrollElementRef`,
  `observerRoot`, `scrollMargin`, and `virtualizationEnabled`.
- `MessageRowWithObserver` and `LeadThoughtsGroupRow` now create their
  `IntersectionObserver` with `root = observerRoot?.current ?? null`
  instead of defaulting to the document viewport. Unread marking now
  fires when rows enter their real scroll parent.
- `MessagesPanel` resolves the active scroll owner from `position`
  (inline from parent ref, sidebar from `sidebarScrollRef`, bottom-sheet
  from `bottomSheetScrollRef`) and passes it into ActivityTimeline.
- Tests: stubs `IntersectionObserver` to capture `options.root` and
  asserts null when no viewport is passed, and the provided element when
  `viewport.observerRoot` is set.

`scrollMargin` and `virtualizationEnabled` are included in the contract
but not consumed yet — they land in follow-up PRs (#4/#5).
2026-04-20 00:17:04 +05:00
777genius
41f0b0d1d1 feat(team): enhance TeamMessageFeedService caching and logging
- Introduced caching mechanism with expiration for message feeds to improve performance.
- Added logging for cache expiration events to aid in debugging.
- Updated MessagesPanel to reopen search bar when participant filters are active.
- Added test cases for handling tmux server errors and message panel behavior with filters.
2026-04-19 22:04:44 +03:00
777genius
83748673af fix(team): dedupe project path options 2026-04-19 21:49:40 +03:00
777genius
e90bdc5b7f feat(runtime): switch codex default to native with hidden fallback 2026-04-19 21:21:29 +03:00
777genius
358496c353 merge: integrate task stall monitor shadow rollout into dev 2026-04-19 21:17:25 +03:00
777genius
a8cca65658 feat(team): add task stall monitor shadow rollout 2026-04-19 21:17:09 +03:00
777genius
52677b55d0 feat(team): enhance team messaging functionality and UI
- Integrated pending replies state management for team members.
- Updated TeamDetailView to initialize pending replies from state.
- Added logic to refresh team messages and member activity on tab focus.
- Improved UI components by increasing dialog content width for better layout.
- Enhanced member draft rows with avatar support for better visual representation.
- Implemented reconciliation logic for pending replies based on message history.
- Updated tests to cover new functionality and ensure reliability.
2026-04-19 20:57:13 +03:00