1d165bc6e3
Expand Goose v1.49 smoke coverage (memory chat, portal resume, page e2e, multiturn provider), add canary memory policy lock, refresh baselines, and ignore one-off evidence artifacts. Document headroom-based context runtime fusion plan; include auth, scheduled-task, and wechat intent fixes on branch. Co-authored-by: Cursor <cursoragent@cursor.com>
51 lines
1.5 KiB
JavaScript
51 lines
1.5 KiB
JavaScript
#!/usr/bin/env node
|
|
/**
|
|
* Phase 0 health check for local Goose v1.49 candidate (loopback only).
|
|
*/
|
|
import { execFileSync } from 'node:child_process';
|
|
|
|
const port = process.env.GOOSE_V149_PORT || '18049';
|
|
const host = process.env.GOOSE_V149_HOST || '127.0.0.1';
|
|
const url = `https://${host}:${port}/status`;
|
|
const maxBuffer = Number(process.env.GOOSE_V149_CHECK_MAX_BUFFER || 64 * 1024 * 1024);
|
|
|
|
const blockedHosts = ['58.38.22.103', '120.26.184.105'];
|
|
if (blockedHosts.includes(host)) {
|
|
console.error(`GOOSE_V149_CHECK_FAIL: refusing production host ${host}`);
|
|
process.exit(1);
|
|
}
|
|
|
|
const curlOptions = {
|
|
encoding: 'utf8',
|
|
maxBuffer,
|
|
};
|
|
|
|
try {
|
|
const body = execFileSync(
|
|
'curl',
|
|
['-sk', '--connect-timeout', '5', url],
|
|
curlOptions,
|
|
).trim();
|
|
if (body !== 'ok') {
|
|
console.error(`GOOSE_V149_CHECK_FAIL: unexpected status body: ${body}`);
|
|
process.exit(1);
|
|
}
|
|
console.log(`GOOSE_V149_CHECK_OK: ${url} -> ${body}`);
|
|
|
|
const sessionsUrl = `https://${host}:${port}/sessions`;
|
|
const sessionsBody = execFileSync(
|
|
'curl',
|
|
['-sk', '--connect-timeout', '5', sessionsUrl],
|
|
curlOptions,
|
|
).trim();
|
|
const sessions = JSON.parse(sessionsBody);
|
|
if (!Array.isArray(sessions.sessions)) {
|
|
console.error(`GOOSE_V149_CHECK_FAIL: /sessions missing sessions array: ${sessionsBody.slice(0, 200)}`);
|
|
process.exit(1);
|
|
}
|
|
console.log(`GOOSE_V149_CHECK_OK: ${sessionsUrl} -> ${sessions.sessions.length} session(s)`);
|
|
} catch (error) {
|
|
console.error(`GOOSE_V149_CHECK_FAIL: ${error.message}`);
|
|
process.exit(1);
|
|
}
|