From 6706358a6e93daffcde534d4c23fb934a6be2fad Mon Sep 17 00:00:00 2001 From: Shoubhit Dash Date: Wed, 15 Apr 2026 04:01:45 +0530 Subject: feat(core): bootstrap packages/server and document extraction plan (#22492) --- packages/server/src/api/index.ts | 1 + packages/server/src/definition/api.ts | 6 ++++++ packages/server/src/definition/index.ts | 1 + packages/server/src/index.ts | 3 +++ packages/server/src/openapi.ts | 14 ++++++++++++++ packages/server/src/types.ts | 14 ++++++++++++++ 6 files changed, 39 insertions(+) create mode 100644 packages/server/src/api/index.ts create mode 100644 packages/server/src/definition/api.ts create mode 100644 packages/server/src/definition/index.ts create mode 100644 packages/server/src/index.ts create mode 100644 packages/server/src/openapi.ts create mode 100644 packages/server/src/types.ts (limited to 'packages/server/src') diff --git a/packages/server/src/api/index.ts b/packages/server/src/api/index.ts new file mode 100644 index 000000000..336ce12bb --- /dev/null +++ b/packages/server/src/api/index.ts @@ -0,0 +1 @@ +export {} diff --git a/packages/server/src/definition/api.ts b/packages/server/src/definition/api.ts new file mode 100644 index 000000000..6eda4090e --- /dev/null +++ b/packages/server/src/definition/api.ts @@ -0,0 +1,6 @@ +import type { ServerApi } from "../types.js" + +export const api: ServerApi = { + name: "opencode", + groups: [], +} diff --git a/packages/server/src/definition/index.ts b/packages/server/src/definition/index.ts new file mode 100644 index 000000000..39cab2446 --- /dev/null +++ b/packages/server/src/definition/index.ts @@ -0,0 +1 @@ +export { api } from "./api.js" diff --git a/packages/server/src/index.ts b/packages/server/src/index.ts new file mode 100644 index 000000000..2fbe31a0d --- /dev/null +++ b/packages/server/src/index.ts @@ -0,0 +1,3 @@ +export { openapi } from "./openapi.js" +export { api } from "./definition/api.js" +export type { OpenApiSpec, ServerApi } from "./types.js" diff --git a/packages/server/src/openapi.ts b/packages/server/src/openapi.ts new file mode 100644 index 000000000..c4ac95300 --- /dev/null +++ b/packages/server/src/openapi.ts @@ -0,0 +1,14 @@ +import { api } from "./definition/api.js" +import type { OpenApiSpec } from "./types.js" + +export function openapi(): OpenApiSpec { + return { + openapi: "3.1.1", + info: { + title: api.name, + version: "0.0.0", + description: "Contract-first server package scaffold.", + }, + paths: {}, + } +} diff --git a/packages/server/src/types.ts b/packages/server/src/types.ts new file mode 100644 index 000000000..8d337be42 --- /dev/null +++ b/packages/server/src/types.ts @@ -0,0 +1,14 @@ +export interface ServerApi { + readonly name: string + readonly groups: readonly string[] +} + +export interface OpenApiSpec { + readonly openapi: string + readonly info: { + readonly title: string + readonly version: string + readonly description: string + } + readonly paths: Record +} -- cgit v1.2.3