fix(mcp): уточнить переключение маршрутов и хранение операций
This commit is contained in:
1 parent
5ce56b5168
commit
bf4b9b5443
10 files changed
+293
-30
No files matched your search
@@ -1,7 +1,7 @@
|
||||
import EmbeddedPostgres from 'embedded-postgres'
|
||||
import { createRequire } from 'node:module'
|
||||
import { mkdir, mkdtemp, readdir, readFile, writeFile, cp, rm } from 'node:fs/promises'
|
||||
import { resolve, join, relative, dirname } from 'node:path'
|
||||
import { resolve, join, relative, dirname, basename } from 'node:path'
|
||||
import { randomBytes, createHash } from 'node:crypto'
|
||||
import { createServer } from 'node:net'
|
||||
import { spawn } from 'node:child_process'
|
||||
@@ -16,7 +16,8 @@ await readFile(join(root, 'backend/src/modules/mcp/routing-main-transition.ts'))
|
||||
await readFile(join(root, 'backend/src/modules/mcp/routing-controller-baseline-acceptance.ts'))
|
||||
if (process.argv.includes('--check-only')) { console.log(JSON.stringify({ mode, sourcePresent: true, acceptanceExecuted: false, productionApplied: false })); process.exit(0) }
|
||||
await mkdir(join(root, 'tmp'), { recursive: true })
|
||||
const directory = await mkdtemp(join(root, 'tmp/routing-controller-baseline-owned-')), output = join(directory, 'dist'), sourcePins = []
|
||||
const ownedPrefix = 'mm-mcp-test-routing-controller-baseline-'
|
||||
const directory = await mkdtemp(join(root, 'tmp', ownedPrefix)), output = join(directory, 'dist'), sourcePins = []
|
||||
const hash = buffer => createHash('sha256').update(buffer).digest('hex')
|
||||
async function compile(sourceDirectory) {
|
||||
for (const entry of await readdir(sourceDirectory, { withFileTypes: true })) {
|
||||
@@ -59,7 +60,7 @@ try {
|
||||
// embedded-postgres waits for a new exit event; avoid waiting again if its
|
||||
// owned child has already exited. This never targets another database.
|
||||
if (postgres.process?.exitCode === null) await postgres.stop()
|
||||
if (dirname(resolve(directory)) !== resolve(root, 'tmp') || !directory.includes('routing-controller-baseline-owned-')) throw new Error('Owned routing cleanup boundary changed')
|
||||
if (dirname(resolve(directory)) !== resolve(root, 'tmp') || !basename(directory).startsWith(ownedPrefix)) throw new Error('Owned routing cleanup boundary changed')
|
||||
await rm(join(directory, 'pg'), { recursive: true, force: true, maxRetries: 20, retryDelay: 100 })
|
||||
console.log('Owned routing PostgreSQL stopped and its data removed; snapshot/log evidence retained')
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user