feat(goose): complete v1.49 phase3 closeout gates and context fusion plan

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>
This commit is contained in:
john
2026-09-09 18:11:39 +08:00
parent 1274943f33
commit 1d165bc6e3
52 changed files with 3565 additions and 840 deletions
+25 -5
View File
@@ -19,6 +19,11 @@ import { createSessionAccess } from '../session-broker.mjs';
import { createOrchestratorAdminConfigService } from '../services/orchestrator/admin-config.mjs';
import { createWorkflowShadowObserver } from '../services/orchestrator/shadow-observer.mjs';
import { createExperienceService } from '../experience-service.mjs';
import {
applyGooseV149CanaryBlockEnv,
resolveGooseApiTargetsFromEnv,
} from './goose-v149-canary.mjs';
import { loadMemindEnvFiles } from './memind-runtime-profile.mjs';
const root = path.join(path.dirname(fileURLToPath(import.meta.url)), '..');
@@ -36,6 +41,10 @@ function loadEnvFile(filePath) {
}
function parseTargets() {
const gooseCanary = resolveGooseApiTargetsFromEnv(process.env);
if (gooseCanary?.targets?.length) {
return [...gooseCanary.targets];
}
const csv = String(process.env.TKMIND_API_TARGETS ?? '').trim();
if (csv) {
return csv.split(',').map((item) => item.trim()).filter(Boolean);
@@ -94,8 +103,17 @@ function printHelp() {
].join('\n'));
}
loadEnvFile(process.env.MEMIND_ENV_FILE || path.join(root, '.env'));
loadEnvFile(path.join(root, '.env.local'));
if (process.env.MEMIND_ENV_FILE) {
loadEnvFile(process.env.MEMIND_ENV_FILE);
}
loadMemindEnvFiles(root, process.env);
applyGooseV149CanaryBlockEnv(process.env, root);
const workerApiTargets = parseTargets();
if (resolveGooseApiTargetsFromEnv(process.env)?.mode === 'all') {
console.log(
`[agent-run-worker] Goose v1.49 canary mode=all primary=${workerApiTargets[0] ?? ''}`,
);
}
// Bundled worker lives under scripts/; MCP path resolution must not use that
// directory as the portal runtime root (see resolveBundledMcpServerPath).
if (!String(process.env.MEMIND_PORTAL_H5_ROOT ?? '').trim()) {
@@ -136,8 +154,11 @@ async function bootstrapWorker() {
},
}
: baseUserAuth;
const apiTargets = workerApiTargets.length ? workerApiTargets : parseTargets();
const apiTarget = apiTargets[0] ?? process.env.TKMIND_API_TARGET ?? 'https://127.0.0.1:18006';
const llmProviderService = createLlmProviderService(pool, {
apiTarget: process.env.TKMIND_API_TARGET ?? 'https://127.0.0.1:18006',
apiTarget,
apiTargets,
apiSecret: process.env.TKMIND_SERVER__SECRET_KEY ?? 'local-dev-secret',
});
const memoryV2ConfigService = createMemoryV2AdminConfigService(pool);
@@ -190,9 +211,8 @@ async function bootstrapWorker() {
configService: memoryV2ConfigService,
});
const toolGateway = createToolGateway({ llmProviderService });
const apiTargets = parseTargets();
const tkmindProxy = createTkmindProxy({
apiTarget: apiTargets[0],
apiTarget,
apiTargets,
apiSecret: process.env.TKMIND_SERVER__SECRET_KEY ?? 'local-dev-secret',
userAuth,