feat(context): wire headroom proxy and injection budget shadow paths

Add fail-open headroom provider routing for goosed sync, context-budget
planning with shadow telemetry events, and fix portal-resume smoke to skip
force_deep_reasoning by default so session round-trip checks stay fast.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
john
2026-09-09 21:24:02 +08:00
parent d691fed8a6
commit 49a1a68a29
11 changed files with 849 additions and 9 deletions
+7 -1
View File
@@ -7,6 +7,7 @@ import path from 'node:path';
import { fileURLToPath } from 'node:url';
import { prepareGooseV149CheckEnv } from './goose-v149-canary.mjs';
import { waitForAgentRunWorkerIdle } from './goose-v149-worker-idle.mjs';
import {
createReporter,
loginViaApi,
@@ -47,7 +48,8 @@ async function createGoosedAgentRun(baseUrl, cookie, { sessionId, message }) {
body: JSON.stringify({
request_id: requestId,
session_id: sessionId,
force_deep_reasoning: process.env.GOOSE_V149_PORTAL_RESUME_FORCE_DEEP !== '0',
// Resume smoke validates session round-trip, not deep-reasoning latency.
force_deep_reasoning: process.env.GOOSE_V149_PORTAL_RESUME_FORCE_DEEP === '1',
user_message: {
id: crypto.randomUUID(),
role: 'user',
@@ -104,6 +106,10 @@ async function main() {
return;
}
await waitForAgentRunWorkerIdle(root, process.env, {
logPrefix: '[goose-v149-portal-resume]',
});
const reporter = createReporter();
const username = process.env.RELEASE_GATE_SCENARIO_USERNAME ?? 'john';
const password =
+38
View File
@@ -0,0 +1,38 @@
#!/usr/bin/env node
/**
* Local headroom proxy smoke (loopback only).
* Requires: headroom proxy running with upstream pointing at DeepSeek compat proxy.
*
* Example:
* OPENAI_BASE_URL=http://127.0.0.1:18036/v1 HEADROOM_OUTPUT_SHAPER=0 headroom proxy --port 8787
*/
import {
buildHeadroomRunObservation,
probeHeadroomProxyReachable,
resolveHeadroomMode,
resolveHeadroomProxyBaseUrl,
resolveHeadroomUpstreamBaseUrl,
} from '../memind-headroom-policy.mjs';
const mode = resolveHeadroomMode(process.env);
if (mode === 'off') {
console.log('HEADROOM_LOCAL_SKIP: MEMIND_HEADROOM_MODE=off');
process.exit(0);
}
const reachable = await probeHeadroomProxyReachable();
const observation = buildHeadroomRunObservation({ skillId: 'web' });
console.log('HEADROOM_LOCAL_PROBE:');
console.log(` mode=${mode}`);
console.log(` proxy=${resolveHeadroomProxyBaseUrl()}`);
console.log(` upstream=${resolveHeadroomUpstreamBaseUrl()}`);
console.log(` reachable=${reachable}`);
console.log(` observation=${JSON.stringify(observation)}`);
if (!reachable) {
console.error('HEADROOM_LOCAL_FAIL: proxy unreachable');
process.exit(1);
}
console.log('HEADROOM_LOCAL_OK');