Этап 4 / Волна 10: корректировка settlement-кейса — доменная фиксация синтеза, честное покрытие, удержание фокуса / Этап 4 / Волна 11: бизнес-якоря, доменное заземление и устранение утечки дебага

This commit is contained in:
2026-03-28 02:17:19 +03:00
parent 914843a8ba
commit a06e575be4
367 changed files with 432257 additions and 3627 deletions
+34 -7
View File
@@ -19,10 +19,22 @@ function redactSecrets(payload) {
delete output.apiKey;
return output;
}
function isNoSpaceError(error) {
const code = error?.code;
return code === "ENOSPC";
}
function saveTrace(record) {
(0, files_1.ensureDir)(config_1.TRACES_DIR);
const target = path_1.default.resolve(config_1.TRACES_DIR, `${record.trace_id}.json`);
(0, files_1.writeJsonFile)(target, record);
try {
(0, files_1.ensureDir)(config_1.TRACES_DIR);
const target = path_1.default.resolve(config_1.TRACES_DIR, `${record.trace_id}.json`);
(0, files_1.writeJsonFile)(target, record);
}
catch (error) {
if (isNoSpaceError(error)) {
return;
}
throw error;
}
}
function listTraces(limit = 100) {
(0, files_1.ensureDir)(config_1.TRACES_DIR);
@@ -60,8 +72,16 @@ function getTrace(traceId) {
return JSON.parse(raw);
}
function savePreset(preset) {
(0, files_1.ensureDir)(config_1.PRESETS_DIR);
(0, files_1.writeJsonFile)(path_1.default.resolve(config_1.PRESETS_DIR, `${preset.id}.json`), preset);
try {
(0, files_1.ensureDir)(config_1.PRESETS_DIR);
(0, files_1.writeJsonFile)(path_1.default.resolve(config_1.PRESETS_DIR, `${preset.id}.json`), preset);
}
catch (error) {
if (isNoSpaceError(error)) {
return;
}
throw error;
}
}
function listPresets() {
(0, files_1.ensureDir)(config_1.PRESETS_DIR);
@@ -75,9 +95,16 @@ function listPresets() {
.sort((a, b) => b.updatedAt.localeCompare(a.updatedAt));
}
function saveEvalCase(casePayload) {
(0, files_1.ensureDir)(config_1.EVAL_CASES_DIR);
const id = String(casePayload.case_id ?? `NQ-${Date.now()}`);
(0, files_1.writeJsonFile)(path_1.default.resolve(config_1.EVAL_CASES_DIR, `${id}.json`), casePayload);
try {
(0, files_1.ensureDir)(config_1.EVAL_CASES_DIR);
(0, files_1.writeJsonFile)(path_1.default.resolve(config_1.EVAL_CASES_DIR, `${id}.json`), casePayload);
}
catch (error) {
if (!isNoSpaceError(error)) {
throw error;
}
}
return id;
}
function redactRequestPayload(payload) {