feat(M6): Set up orchestrator service foundation
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed

Add NestJS-based orchestrator service structure for M6-AgentOrchestration.

Changes:
- Migrate from Express to NestJS architecture
- Add health check endpoint module
- Add placeholder modules: coordinator, git, killswitch, monitor, queue, spawner, valkey
- Update configuration for NestJS
- Update lockfile for new dependencies

This is foundational work for M6-AgentOrchestration milestone.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Jason Woltje
2026-02-02 13:16:19 -06:00
parent 9e06e977be
commit e808487725
21 changed files with 587 additions and 74 deletions

View File

@@ -1,28 +1,19 @@
/**
* Mosaic Orchestrator - Agent Orchestration Service
*
* Execution plane for Mosaic Stack agent coordination.
* Spawns, monitors, and manages Claude agents for autonomous work.
*/
import { NestFactory } from "@nestjs/core";
import { AppModule } from "./app.module";
import { Logger } from "@nestjs/common";
import { createServer } from './api/server.js';
const PORT = process.env.ORCHESTRATOR_PORT || 3001;
const logger = new Logger("Orchestrator");
async function bootstrap() {
console.log('🚀 Starting Mosaic Orchestrator...');
const server = await createServer();
await server.listen({
port: Number(PORT),
host: '0.0.0.0'
const app = await NestFactory.create(AppModule, {
logger: ["error", "warn", "log", "debug", "verbose"],
});
console.log(`✅ Orchestrator running on http://0.0.0.0:${PORT}`);
const port = process.env.ORCHESTRATOR_PORT ?? 3001;
await app.listen(Number(port), "0.0.0.0");
logger.log(`🚀 Orchestrator running on http://0.0.0.0:${String(port)}`);
}
bootstrap().catch((error) => {
console.error('Failed to start orchestrator:', error);
process.exit(1);
});
void bootstrap();