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