githubnext/chopinPublic

Let's compose rich plans together

Add ACP-based local investigations and shared evidence #419

MergedKrzysztof-Cieslakmerged 12 commits intomainfromrefs/pull/419/head
ConversationFiles changed
92 files changed+4674-179
StackedSplit
.agents/skills/testing-pr-previews/SKILL.md+44 −15
AGENTS.md+14 −12
Dockerfile+3 −0
README.md+7 −2
apps/connector/package.json+13 −0
apps/connector/src/acp.test.ts+92 −0
apps/connector/src/acp.ts+107 −0
apps/connector/src/bridge.ts+22 −0
apps/connector/src/main.ts+215 −0
apps/connector/src/mcp.ts+25 −0
apps/connector/src/testing/fake-agent.ts+66 −0
apps/connector/src/workspace.test.ts+42 −0
apps/connector/src/workspace.ts+96 −0
apps/connector/tsconfig.json+5 −0
apps/server/package.json+1 −0
apps/server/src/agent/experiment-tools.test.ts+33 −0
apps/server/src/agent/experiment-tools.ts+68 −0
apps/server/src/agent/job-scope.ts+9 −0
apps/server/src/agent/planner.ts+8 −0
apps/server/src/agent/repository.test.ts+36 −0
apps/server/src/agent/repository.ts+20 −3
apps/server/src/agent/tools.test.ts+3 −0
apps/server/src/agent/tools.ts+4 −0
apps/server/src/chat/service.ts+2 −0
apps/server/src/experiments/connections.ts+168 −0
apps/server/src/experiments/export.test.ts+10 −0
apps/server/src/experiments/export.ts+16 −0
apps/server/src/experiments/mcp-schema.ts+24 −0
apps/server/src/experiments/routes.test.ts+157 −0
apps/server/src/experiments/routes.ts+491 −0
apps/server/src/experiments/service.test.ts+85 −0
apps/server/src/experiments/service.ts+232 −0
apps/server/src/harness/tool-names.ts+8 −2
apps/server/src/main.ts+125 −0
apps/server/src/plan/experiment.test.ts+47 −0
apps/server/src/plan/projections.ts+1 −1
apps/server/src/plan/room.ts+25 −0
apps/server/src/plan/service.ts+27 −0
apps/server/src/storage/contract.ts+2 −0
apps/server/src/storage/experiment-contract.ts+31 −0
apps/server/src/storage/experiments.ts+10 −0
apps/server/src/storage/memory/adapter.ts+6 −0
apps/server/src/storage/memory/experiments.ts+48 −0
apps/server/src/storage/port.ts+2 −0
apps/server/src/storage/postgres/adapter.test.ts+1 −0
apps/server/src/storage/postgres/adapter.ts+6 −0
apps/server/src/storage/postgres/experiments.ts+61 −0
apps/server/src/storage/postgres/migrations.ts+3 −0
apps/server/src/storage/postgres/migrations/017_experiments.sql+10 −0
apps/web/package.json+1 −0
apps/web/src/app.tsx+8 −0
apps/web/src/experiments/api.ts+15 −0
apps/web/src/experiments/evidence.tsx+157 −0
apps/web/src/experiments/pairing.tsx+89 −0
apps/web/src/experiments/panel.tsx+223 −0
apps/web/src/experiments/request-id.ts+14 −0
apps/web/src/experiments/store.ts+119 −0
apps/web/src/room-workspace.tsx+35 −7
bun.lock+44 −8
docs/architecture.md+10 −0
docs/hosted-agent.md+2 −2
docs/local-experiments.md+89 −0
docs/preview-testing.md+84 −31
e2e/connector.e2e.ts+83 −0
e2e/experiments.e2e.ts+117 −0
opencode.json+49 −70
opencode.preview.json+0 −24
package.json+1 −0
packages/dialect/src/dialect.ts+10 −0
packages/dialect/src/index.ts+1 −0
packages/dialect/src/nodes/experiment.ts+122 −0
packages/dialect/src/registry.ts+16 −0
packages/editor/package.json+1 −0
packages/editor/src/decisions.tsx+7 −1
packages/editor/src/plan-editor.tsx+4 −0
packages/editor/src/widget-options.ts+12 −0
packages/editor/src/widgets/experiment.tsx+97 −0
packages/editor/src/widgets/index.ts+3 −0
packages/experiment/package.json+17 −0
packages/experiment/src/env.d.ts+1 −0
packages/experiment/src/fixtures.ts+68 −0
packages/experiment/src/index.test.ts+62 −0
packages/experiment/src/index.ts+239 −0
packages/experiment/src/react.tsx+130 −0
packages/experiment/src/records.ts+80 −0
packages/experiment/src/selection.test.ts+45 −0
packages/experiment/src/selection.ts+52 −0
packages/experiment/tsconfig.json+5 −0
packages/protocol/experiment.d.ts+4 −0
packages/protocol/index.d.ts+2 −0
scripts/design-contract/exceptions/dynamic-editor.json+1 −1
skills/local-investigations/SKILL.md+24 −0