v2: make v2 the main entry point, move v1 to src/v1/

- Move all v1 files (index, router, container-runner, db, ipc, types,
  logger, channels/registry, and all utilities) to src/v1/ as a
  fully self-contained archive with no shared dependencies
- Rename v2 files to remove -v2 suffix (index-v2.ts → index.ts, etc.)
- Update all imports across v2 source, tests, and setup files
- Migrate shared utilities (config, env, container-runtime, mount-security,
  timezone, group-folder) from pino logger to v2 log module
- Migrate setup/ files from logger to log with argument order swap
- Container agent-runner: move v1 entry to v1/, rename v2 to index.ts
- Update setup skill to offer all 13 v2 channels
- Install all Chat SDK adapter packages
- dist/index.js now runs v2; dist/v1/index.js runs v1

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
gavrielc
2026-04-09 11:40:36 +03:00
parent 12af451069
commit 9486d56b01
96 changed files with 7904 additions and 3040 deletions

View File

@@ -25,10 +25,10 @@ import {
sessionsBaseDir,
} from './session-manager.js';
import { getSession, findSession } from './db/sessions.js';
import type { InboundEvent } from './router-v2.js';
import type { InboundEvent } from './router.js';
// Mock container runner to prevent actual Docker spawning
vi.mock('./container-runner-v2.js', () => ({
vi.mock('./container-runner.js', () => ({
wakeContainer: vi.fn().mockResolvedValue(undefined),
resetContainerIdleTimer: vi.fn(),
isContainerRunning: vi.fn().mockReturnValue(false),
@@ -202,8 +202,8 @@ describe('router', () => {
});
it('should route a message end-to-end', async () => {
const { routeInbound } = await import('./router-v2.js');
const { wakeContainer } = await import('./container-runner-v2.js');
const { routeInbound } = await import('./router.js');
const { wakeContainer } = await import('./container-runner.js');
const event: InboundEvent = {
channelType: 'discord',
@@ -237,7 +237,7 @@ describe('router', () => {
});
it('should auto-create messaging group for unknown platform', async () => {
const { routeInbound } = await import('./router-v2.js');
const { routeInbound } = await import('./router.js');
// This platform ID isn't registered — but since there's no agent configured for it,
// it should create the messaging group but not route (no agents configured)
@@ -262,7 +262,7 @@ describe('router', () => {
});
it('should route multiple messages to the same session', async () => {
const { routeInbound } = await import('./router-v2.js');
const { routeInbound } = await import('./router.js');
await routeInbound({
channelType: 'discord',