Solution: DeepSeek core instrument factorial
Подход#
Исторические Flash/strong prompts, scorers и artifacts не изменяются. Новый sibling harness:
- загружает frozen baseline prompts через hash-checked boundary;
- детерминированно вставляет один semantic-invariant block только для treatment;
- строит четыре configs из prompt × reasoning;
- materializes один LLM call и один raw SaveText sink на request;
- оценивает raw bytes прежним scorer;
- объединяет scorecard с metadata-hidden semantic review;
- применяет frozen selector;
- materializes confirmation только для eligible config.
Структура#
prototype/
├── artifact-publish.ts # atomic no-overwrite bundle publication
├── manifest.ts # 24 + conditional 18 matrix, gates and ranking
├── prompt-instrument.ts # exact baseline/treatment composition
├── transport-capture.ts # terminal Comfy batch capture contract
├── transport.ts # request/workflow/job/raw/telemetry binding
├── source-evidence.ts # fresh recomputation from captured raw bytes
├── semantic-packet.ts # source-bound blinded review packet
├── factorial-evidence.ts # eligibility, selection and factorial effects
├── finalize.ts # full-chain screening/confirmation finalization
└── run.ts # preparation and CLI orchestration
Команды#
Из корня репозитория:
npm test
npm run typecheck
После live catalog capture:
node \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/prototype/run.ts \
prepare-screening \
--catalog-preflight \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-preflight-v2/catalog-preflight.json \
--output-root \
<fresh-output-root>
Canonical paid screening использует уже проверенный root
artifacts/derived/screening-preflight-v2; повторная команда выше нужна только
для byte-for-byte audit и не должна писать поверх него.
Provider execution не имеет отдельной локальной CLI-команды. Operator:
- передаёт 24 prepared workflows в один
submit_batch({client_os: "darwin", confirm: true, items}); - сохраняет returned batch ID и request-to-job map до ожидания;
- вызывает
wait_for_batchдля того же batch до24 ready / 0 failed; - вызывает
get_batch_outputровно один раз после terminal state; - скачивает bytes по job ID, не нормализуя JSON или newline;
- записывает capture-v1 без signed URLs; недоступную telemetry оставляет
null.
Transport failure после definite submission не разрешает второй submit.
Screening run следовал этому контракту: одна successful submission,
24/24 terminal jobs и 0 provider failures.
После сохранения terminal batch capture и exact raw responses:
node \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/prototype/run.ts \
materialize-transport \
--prepared-manifest \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-preflight-v2/manifest.json \
--batch-capture \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-batch-capture.json \
--raw-root \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/raw/screening/responses \
--output-root \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-transport
node \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/prototype/run.ts \
score-screening \
--raw-root \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/raw/screening/responses \
--prepared-manifest \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-preflight-v2/manifest.json \
--transport \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-transport/transport.json \
--output \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-scorecard.json
node \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/prototype/run.ts \
prepare-semantic-review \
--phase screening \
--prepared-manifest \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-preflight-v2/manifest.json \
--transport \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-transport/transport.json \
--scorecard \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-scorecard.json \
--raw-root \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/raw/screening/responses \
--output-root \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-semantic
node \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/prototype/run.ts \
finalize-screening \
--prepared-manifest \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-preflight-v2/manifest.json \
--scorecard \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-scorecard.json \
--transport \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-transport/transport.json \
--raw-root \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/raw/screening/responses \
--private-map \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-semantic/semantic-private-map.json \
--semantic-review \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-semantic-review.json \
--output-root \
RnD/technical/2026-07-26-deepseek-core-instrument-factorial/artifacts/derived/screening-finalization
prepare-semantic-review создаёт blind packet без request/config/model/language,
role, seed, prompt и reasoning metadata. Reviewer записывает отдельный review;
private map объединяется с ним только внутри finalize-screening.
Conditional confirmation sequence#
Эта ветка допустима только для selection.status=selected, ненулевого
selectedConfigId и соответствующей записи rankings[] с eligible=true.
Текущий live selector вернул no_eligible_config, поэтому команды ниже не
выполнялись и paid confirmation calls равны 0.
study=RnD/technical/2026-07-26-deepseek-core-instrument-factorial
runner="$study/prototype/run.ts"
node "$runner" prepare-confirmation \
--catalog-preflight "$study/artifacts/derived/screening-preflight-v2/catalog-preflight.json" \
--selection "$study/artifacts/derived/screening-finalization/selection.json" \
--screening-prepared-manifest "$study/artifacts/derived/screening-preflight-v2/manifest.json" \
--screening-scorecard "$study/artifacts/derived/screening-scorecard.json" \
--screening-transport "$study/artifacts/derived/screening-transport/transport.json" \
--screening-raw-root "$study/artifacts/raw/screening/responses" \
--screening-private-map "$study/artifacts/derived/screening-semantic/semantic-private-map.json" \
--screening-semantic-review "$study/artifacts/derived/screening-semantic-review.json" \
--output-root "$study/artifacts/derived/confirmation-preflight-v2"
# После 18/18 sequential dry-runs, одной confirmed provider submission,
# terminal capture и exact raw download:
node "$runner" materialize-transport \
--prepared-manifest "$study/artifacts/derived/confirmation-preflight-v2/manifest.json" \
--batch-capture "$study/artifacts/derived/confirmation-batch-capture.json" \
--raw-root "$study/artifacts/raw/confirmation/responses" \
--output-root "$study/artifacts/derived/confirmation-transport"
node "$runner" score-confirmation \
--raw-root "$study/artifacts/raw/confirmation/responses" \
--prepared-manifest "$study/artifacts/derived/confirmation-preflight-v2/manifest.json" \
--transport "$study/artifacts/derived/confirmation-transport/transport.json" \
--selection "$study/artifacts/derived/screening-finalization/selection.json" \
--output "$study/artifacts/derived/confirmation-scorecard.json"
node "$runner" prepare-semantic-review \
--phase confirmation \
--prepared-manifest "$study/artifacts/derived/confirmation-preflight-v2/manifest.json" \
--transport "$study/artifacts/derived/confirmation-transport/transport.json" \
--scorecard "$study/artifacts/derived/confirmation-scorecard.json" \
--raw-root "$study/artifacts/raw/confirmation/responses" \
--output-root "$study/artifacts/derived/confirmation-semantic"
node "$runner" finalize-confirmation \
--prepared-manifest "$study/artifacts/derived/confirmation-preflight-v2/manifest.json" \
--scorecard "$study/artifacts/derived/confirmation-scorecard.json" \
--transport "$study/artifacts/derived/confirmation-transport/transport.json" \
--raw-root "$study/artifacts/raw/confirmation/responses" \
--private-map "$study/artifacts/derived/confirmation-semantic/semantic-private-map.json" \
--semantic-review "$study/artifacts/derived/confirmation-semantic-review.json" \
--selection "$study/artifacts/derived/screening-finalization/selection.json" \
--screening-prepared-manifest "$study/artifacts/derived/screening-preflight-v2/manifest.json" \
--screening-scorecard "$study/artifacts/derived/screening-scorecard.json" \
--screening-transport "$study/artifacts/derived/screening-transport/transport.json" \
--screening-raw-root "$study/artifacts/raw/screening/responses" \
--screening-private-map "$study/artifacts/derived/screening-semantic/semantic-private-map.json" \
--screening-semantic-review "$study/artifacts/derived/screening-semantic-review.json" \
--output-root "$study/artifacts/derived/confirmation-finalization"
Path ownership#
| Layer | Caller chooses | Harness enforces |
|---|---|---|
| Provider audit | dry-run/submission evidence paths | exact prepared workflow bytes and manifest order |
| Capture | batch-capture path и raw root | capture-v1 exact keys, unique completed jobs, canonical base64, raw byte equality |
| Transport | fresh output root | transport.json, copied batch-capture.json, one job metadata file per request |
| Semantic | fresh output root и separate review path | semantic-private-map.json, semantic-review-packet.json, exact blind join |
| Finalization | fresh output root | screening evidence, factorial analysis, selection; confirmation evidence/verdict when eligible |
Trust boundaries#
- Model ID должен быть exact live catalog match.
- Preparation отклоняет invalid catalog evidence и non-empty output.
- Prompt hashes, workflow hashes, config, language, reasoning и seed записаны в prepared manifest.
mediumпередаётся в dynamic node inputmodel.reasoning_effort; это не текстовая подсказка.- Terminal capture хранит exact
rawResponseBase64; эти bytes являются authoritative source, а внешний raw-файл обязан совпасть byte-for-byte. - Transport-v2 связывает prepared request, workflow, payload, batch/job, captured raw, job metadata и доступную telemetry.
- Scoring заново вычисляется из captured raw через frozen evaluator и должен byte-for-byte совпасть с сохранённым canonical scorecard.
- Prepared, transport, semantic и finalization bundles публикуются атомарно, без overwrite и с отказом на symlink target/ancestor.
- Selector не принимает средний score вместо all-cell hard gate.
- Confirmation запрещена без selected eligible config и повторной проверки полного screening source chain.
Ограничения#
Comfy node не предоставляет hard output token cap. Seed является hint. Reasoning может увеличить output-token cost. Недоступные telemetry fields остаются Unknown, а не оцениваются.
Условие production-переноса#
Только successful all-role confirmation позволяет перенести выбранную role-specific prompt/reasoning policy в отдельную production-задачу. Harness, research fixtures и provider adapter не становятся production authority.