- Add Turborepo scaffold templates (apps: product, website, admin, storybook; packages: ui, tokens, types, config) - Add ProjectRecord and AppRecord types to control plane - Add Gitea integration service (repo creation, scaffold push, webhooks) - Add Coolify integration service (project + per-app service provisioning with turbo --filter) - Add project routes: GET/POST /projects, GET /projects/:id/apps, POST /projects/:id/deploy - Update chat route to inject project/monorepo context into AI requests - Add deploy_app and scaffold_app tools to Gemini tool set - Update deploy executor with monorepo-aware /execute/deploy endpoint - Add TURBOREPO_MIGRATION_PLAN.md documenting rationale and scope Co-authored-by: Cursor <cursoragent@cursor.com>
34 lines
1.2 KiB
TypeScript
34 lines
1.2 KiB
TypeScript
/**
|
|
* Storage adapter that switches between GCP (Firestore/GCS) and in-memory
|
|
*/
|
|
import { config } from "../config.js";
|
|
import * as memory from "./memory.js";
|
|
import * as firestore from "./firestore.js";
|
|
import * as gcs from "./gcs.js";
|
|
|
|
const useMemory = config.storageMode === "memory";
|
|
|
|
if (useMemory) {
|
|
console.log("💾 Using in-memory storage (set GCP_PROJECT_ID for Firestore/GCS)");
|
|
memory.seedTools();
|
|
} else {
|
|
console.log(`☁️ Using GCP storage (project: ${config.projectId})`);
|
|
}
|
|
|
|
// Runs
|
|
export const saveRun = useMemory ? memory.saveRun : firestore.saveRun;
|
|
export const getRun = useMemory ? memory.getRun : firestore.getRun;
|
|
|
|
// Tools
|
|
export const saveTool = useMemory ? memory.saveTool : firestore.saveTool;
|
|
export const listTools = useMemory ? memory.listTools : firestore.listTools;
|
|
|
|
// Artifacts
|
|
export const writeArtifactText = useMemory ? memory.writeArtifactText : gcs.writeArtifactText;
|
|
|
|
// Projects (memory-only until Firestore adapter is extended)
|
|
export const saveProject = memory.saveProject;
|
|
export const getProject = memory.getProject;
|
|
export const listProjects = memory.listProjects;
|
|
export const updateProjectApp = memory.updateProjectApp;
|