mirror of
https://github.com/stablyai/orca.git
synced 2026-11-02 01:57:57 +00:00
Adds Discord as a second connector adapter on the shared core: signed interactions for answer buttons, one gateway worker (same image, single leader by database lock, commits on the lock's connection, checkpoints for resume), thread posts through the shared post queue, owner-only control, and teammate context only from linked accounts. Inert until the Discord settings are configured. A narrow gitleaks allowlist entry covers connector Discord env var names in config errors.
25 lines
840 B
TypeScript
25 lines
840 B
TypeScript
import type { CloudDatabase } from '@orca-cloud/cloud-database'
|
|
import { openConnectorDatabase } from './connector-database.js'
|
|
|
|
// An operator command against the service's database (its env), printing what it returns.
|
|
export async function runOperatorCli(
|
|
applicationName: string,
|
|
run: (database: CloudDatabase) => Promise<string>
|
|
): Promise<void> {
|
|
const env = process.env
|
|
const database = await openConnectorDatabase({
|
|
...(env.ORCA_CONNECTOR_DATABASE_URL ? { databaseUrl: env.ORCA_CONNECTOR_DATABASE_URL } : {}),
|
|
dataDir: env.ORCA_CONNECTOR_DATA_DIR || './data/connector',
|
|
poolMax: 1,
|
|
applicationName
|
|
})
|
|
try {
|
|
console.log(await run(database))
|
|
} catch (error) {
|
|
console.error(error instanceof Error ? error.message : 'failed')
|
|
process.exitCode = 1
|
|
} finally {
|
|
await database.close()
|
|
}
|
|
}
|