[Шибков Константин] · food-deep-research-v2.zip
food-deep-research-v2
- Score: 34/40
- Verdict: Pass (
workshop-pass) - Отправитель: “Шибков Константин” sendel@yandex.ru
- SHA-256:
7d47a58781320143… - Blockers: none
- Unverified: F07, F08
Required rework
- F06 — привести eval cases к формату
query/expected_behavior/failure_modes; добавить security injection, boundary, broken script, portability cases (нужно ≥7). - F01 — добавить design note.
- D06 — починить validator (JSON-compatible frontmatter parsing + “10 минут” check).
- A05 — убрать feature inventory из body opening.
Полная scorecard
| ID | Score | Status | Evidence | Defect / minimal fix |
|---|---|---|---|---|
| A01 | 1/1 | passed | SKILL.md:1-4 — frontmatter корректен: только name и description | — |
| A02 | 1/1 | passed | SKILL.md:2 — food-deep-research, 18 симв., regex ✓, не reserved | — |
| A03 | 1/1 | passed | SKILL.md:3 — description ~380 симв. (1–1024), без XML-тегов, routing-текст | — |
| A04 | 1/1 | passed | SKILL.md:3 — задача (deep research food), trigger conditions, anti-trigger (“Do not trigger for simple calorie lookup”), domain terms; third person | — |
| A05 | 0/1 | failed | SKILL.md:8 — “Planner → Search → Extractor → Verifier → Synthesizer” в body — feature inventory прямо в начале workflow section | Перенести pipeline описание глубже или убрать из opening; routing уже ясен из description |
| A06 | 1/1 | passed | SKILL.md:3 — positive trigger (deep research request), negative (“Do not trigger implicitly for simple calorie or single nutrition-fact lookup”); boundary clear | — |
| A07 | 1/1 | passed | SKILL.md:26-28 — ссылки на source-policy.md, safety-policy.md, report-contract.md; все существуют, относительные | — |
| B01 | 1/1 | passed | SKILL.md:6-169 — повторяемая 5-этапная процедура с конкретным результатом | — |
| B02 | 1/1 | passed | SKILL.md:6-20 — одна связная единица: food evidence research | — |
| B03 | 1/1 | passed | SKILL.md:54, 80 — freshness даты, volatile facts проверяются; references/source-policy.md:20-24 recency checks | — |
| B04 | 1/1 | passed | SKILL.md:32-41 быстрый маршрут (judgment) + references/safety-policy.md усиленные gates для risky; degree of control соразмерен риску | — |
| C01 | 1/1 | passed | SKILL.md:43-145 — 5 последовательных этапов с конкретными действиями | — |
| C02 | 1/1 | passed | SKILL.md:34-39 быстрый маршрут как default; SKILL.md:41 emergency branch с явным условием | — |
| C03 | 1/1 | passed | SKILL.md:41, 147-158 quality gate; references/safety-policy.md:19-28 emergency gate; consequential safety handled | — |
| C04 | 1/1 | passed | SKILL.md:120 — “Вернуть на дополнительный поиск вывод, который важен… но опирается на один слабый источник” → return-to-Search; verifier rejects → re-extract; explicit loop | — |
| C05 | 1/1 | passed | references/report-contract.md:1-78 — 9-section output contract с финальной самопроверкой; adaptable для judgment | — |
| C06 | 1/1 | passed | SKILL.md:43-145 — конкретные операционные действия (ResearchBrief YAML, ClaimLedger, VerifiedClaimSet) | — |
| C07 | 1/1 | passed | SKILL.md:30 — “Использовать актуальный интернет-поиск, когда он доступен”; нет скрытых действий, credential-чтения | — |
| D01 | 1/1 | passed | SKILL.md — 169 строк (≤ 500) | — |
| D02 | 1/1 | passed | core workflow в SKILL.md; source-policy, safety-policy, report-contract — в references/; evals — в evals/ | — |
| D03 | 1/1 | passed | source-policy.md (71), safety-policy.md (61), report-contract.md (78) — все <100 строк; Contents не требуется | — |
| D04 | 1/1 | passed | references/ (3), evals/cases.yaml, scripts/validate_mvp.py, agents/openai.yaml — назначение корректно, описательные имена | — |
| D05 | 1/1 | passed | scripts/validate_mvp.py — shebang, docstring, argparse; runtime python3; args: нет args (self-contained); deps: stdlib only | — |
| D06 | 0/1 | failed | command: python3 scripts/validate_mvp.py → FAIL: “SKILL.md frontmatter must be valid JSON-compatible YAML” + “does not define the fast MVP route” (“10 минут” expected) | Fix validator: frontmatter is valid YAML but not JSON-parseable; or relax JSON constraint; add “10 минут” or remove check |
| E01 | 1/1 | passed | SKILL.md:30, 69 — search results как evidence; references/source-policy.md:14 “Коммерческие страницы… только как путь к первоисточнику” | — |
| E02 | 1/1 | passed | нет secrets, нет dependency install, нет undeclared downloads | — |
| E03 | 1/1 | passed | output — исследовательский ответ в чате, без авто-создания файлов на диске | — |
| E04 | 1/1 | passed | нет bundled binaries, obfuscated code; validator — stdlib Python | — |
| E05 | 1/1 | passed | SKILL.md:20 “Не диагностировать, не назначать лечение”; инструкций игнорировать safeguards нет | — |
| E06 | 1/1 | passed | SKILL.md:30 — “Если поиск недоступен, явно сообщить… не называть рекомендации актуальными” — capability gate + fallback | — |
| E07 | 1/1 | passed | нет absolute/home/username/drive путей | — |
| E08 | 1/1 | passed | MCP tools не используются и не предполагаются | — |
| F01 | 0/1 | failed | нет design note; нет фиксации baseline-ошибок, выбранной степени свободы, rationale для supporting files/evals | Добавить design note с use case, baseline failures, freedom level, file/eval plan |
| F02 | 1/1 | passed | references/source-policy.md:3-12 — 6-level иерархия источников; authoritative в приоритете; weak sources исключены | — |
| F03 | 1/1 | passed | references/source-policy.md:20-24 recency; SKILL.md:80 “искать подтверждающие и опровергающие данные”; source-policy.md:62-71 conflict handling; confidence downgrade | — |
| F04 | 1/1 | passed | SKILL.md:113-118 4 confidence levels; SKILL.md:118 “Недостаточно данных”; SKILL.md:100 causation ≠ association | — |
| F05 | 1/1 | passed | references/report-contract.md — Рамки/Краткий вывод/Состав/Польза/Ограничения/Рекомендации/Аллергия/Неопределённость/Источники | — |
| F06 | 0/1 | failed | evals/cases.yaml — 6 cases с id/prompt/risk/must_include/must_not, но: нет полей query/expected_behavior/failure_modes; нет security injection case; нет boundary case; нет portability case | Переименовать/добавить: query вместо prompt; expected_behavior; failure_modes; добавить security injection, boundary, broken script, portability cases |
| F07 | 0/1 | unverified | нет observed run/trace; baseline не зафиксирован | Провести поведенческие evals и зафиксировать trace |
| F08 | 0/1 | unverified | нет trace navigation/security | Провести security/navigation evals |
Required rework
- F06 — привести eval cases к формату
query/expected_behavior/failure_modes; добавить security injection, boundary, broken script, portability cases (нужно ≥7). - F01 — добавить design note.
- D06 — починить validator (JSON-compatible frontmatter parsing + “10 минут” check).
- A05 — убрать feature inventory из body opening.