@mcptoolshop/research-os 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,125 @@
2
2
 
3
3
  All notable changes to `research-os` are documented here.
4
4
 
5
+ ## [0.6.0] — 2026-05-10 — deterministic reviewer baseline
6
+
7
+ v0.6.0 closes Experiment 6 with reviewer-trust evidence: research-os can now produce a
8
+ reproducible, attributable canonical-model baseline. The real review path carries
9
+ deterministic reviewer options from profile config, legacy gate artifacts parse, review
10
+ outputs disclose sampling conditions, and the v0.1 self-dogfood pack was reviewed through
11
+ the production CLI under explicit Hermes conditions. **Hermes is NOT promoted to trusted
12
+ baseline.** The win is the mechanism, not a passing receipt.
13
+
14
+ **No trusted baseline admitted.** The canonical `hermes-two-pass-deterministic` receipt
15
+ shows `failed` — a structural model-capability gap in decision vocabulary (2/6 decisions
16
+ produced, requires 3/6), not a variance problem. The mechanism works precisely because
17
+ it does not manufacture trust when trust is not earned.
18
+
19
+ ### What shipped (three commits atop v0.5.0)
20
+
21
+ **Session 2 (`40af0a9`) — reviewer options as receipt-backed inputs**
22
+
23
+ - `src/review/reviewer-options-schema.ts` — `ReviewerOptionsSchema` (6 optional fields:
24
+ `num_ctx`, `temperature`, `seed`, `top_p`, `top_k`, `repeat_penalty`).
25
+ - `src/review/reviewers/ollama-intern.ts` — constructor accepts `reviewer_options`; merged
26
+ via `!== undefined` guards (load-bearing: `temperature: 0` is not dropped as falsy).
27
+ - `src/calibration/receipt-schema.ts` + `aggregate-receipt-schema.ts` — `reviewer_options`
28
+ field added to both schemas (optional, additive, backward-compatible).
29
+ - `src/calibration/receipt.ts` / `aggregate.ts` — `## Reviewer options` section rendered
30
+ when present.
31
+ - `scripts/reviewer-calibration.mjs` — 6 new CLI flags (`--temperature`, `--seed`,
32
+ `--top-p`, `--top-k`, `--num-ctx`, `--repeat-penalty`); numeric validation; options
33
+ captured once and reused across all N runs.
34
+ - Canonical deterministic aggregate: `hermes-two-pass-deterministic/seeded-v1.{json,md}`,
35
+ `reviewer_options: {"temperature":0,"seed":7}`, status: **`failed`** (3/3 runs stable,
36
+ byte-identical; recurring failures: `per_category_any_flag_floor`,
37
+ `decision_vocab_completeness`).
38
+
39
+ **Session 3 (`a8e9e9c`) — production review profile config**
40
+
41
+ - `src/intake/schema.ts` — `reviewer_options` field on `ReviewProfilePresetSchema`;
42
+ `hermes-two-pass-deterministic` profile added to `DEFAULT_REVIEW_PROFILES`
43
+ (`mode: two_pass`, `temperature: 0`, `seed: 7`, status: `experimental`).
44
+ The existing `hermes-two-pass` profile is NOT modified.
45
+ - `src/cli.ts` — `reviewerOptions` extracted from preset; passed to all 3
46
+ `OllamaInternReviewer` constructions. The production `research-os review` path now
47
+ carries deterministic conditions from `research.yaml` profile config.
48
+
49
+ **Session 5 (`682bd0e`) — F-53 + F-54 fixes**
50
+
51
+ - **F-53 (gate JSON schema backward compat):** `section_primary` and
52
+ `section_independent_publishers` are now `.optional().default(0)` in
53
+ `SectionGateResultSchema`. Pre-v0.3.3 gate JSONs (frozen v0.1 packs) that omit these
54
+ fields parse cleanly with default 0. Fresh gate runs continue to write both fields.
55
+ - **F-54 (reviewer_options on review.json + review.md):** `ReviewSnapshotSchema` now
56
+ carries `reviewer_options`; `RunReviewOptions` carries `reviewer_options?`;
57
+ `finalizeReview` stamps it onto the snapshot; `review.md` renders a `## Reviewer
58
+ options` section when set (stable key order; omitted when absent).
59
+ - Golden section 03 rerun on fresh scratch pack: ran without gate-JSON rename (F-53 proof),
60
+ disclosed `reviewer_options` in `review.json` and `review.md` (F-54 proof), source pack
61
+ byte-identical. Production path confirmed end-to-end.
62
+
63
+ ### Frictions closed
64
+
65
+ - **F-53** — `SectionGateResultSchema` rejected pre-v0.3.3 gate JSONs missing
66
+ `section_primary` / `section_independent_publishers`. Fix: `.optional().default(0)`.
67
+ Backward-compatible; fresh gate runs unaffected.
68
+ - **F-54** — `reviewer_options` (temperature, seed) were not disclosed in `review.json`
69
+ or `review.md`. Only trace was the `profile` field → secondary lookup. Fix: 5
70
+ touchpoints stamp the options directly onto the review snapshot and render them in
71
+ the Markdown artifact.
72
+
73
+ ### Documented findings (not blockers)
74
+
75
+ - **F-51 (P3)** — Ollama `seed` is advisory: first inference after process spawn differs
76
+ from subsequent inferences in the same session. Mitigated by `--runs N` aggregation.
77
+ Disclosed in every receipt via `unreachable_decisions` and the Session 1 audit doc.
78
+ - **F-52 (P2)** — `per_category_any_flag_floor` is a recurring failure under deterministic
79
+ single-process mode (`--runs 3`). `unsupported_claim` any-flag = 0/3 in all 3 runs.
80
+ Cross-session seed variance (separate process invocations) may differ; the canonical
81
+ multi-run evidence is consistent. Not a blocker; a documented calibration finding.
82
+
83
+ ### Canonical receipt statuses at v0.6.0
84
+
85
+ | Profile | Status | Notes |
86
+ |---|---|---|
87
+ | `hermes-two-pass` | `failed` | Aggregate, 3 runs (v0.5.0 canonical — unchanged). |
88
+ | `mistral-nemo-two-pass` | `conditional_pass` | Aggregate, 3 runs (v0.5.0 canonical — unchanged). |
89
+ | `hermes-single-pass` | `comparison_only` | Single-run (v0.5.0 canonical — unchanged). |
90
+ | `hermes-two-pass-deterministic` | `failed` | NEW — aggregate, 3 deterministic runs (`temperature:0, seed:7`). Recurring: `per_category_any_flag_floor`, `decision_vocab_completeness`. |
91
+
92
+ ### Compatibility
93
+
94
+ - All 4 frozen packs verify byte-identical against v0.3.3 baselines.
95
+ - `368d23613783ef48b36cccd814463b3f413d514eb7a37792653142ef1fd5d466` (dogfood)
96
+ - `d71943c6444d4bb5ba38ae577089498d119b95f00caed8f068f0ee09c79038eb` (ComfyUI)
97
+ - `6511a044aa15fa4de30a0dfc82b811947e1f57a1563fd1d7ba013a64725259a5` (XRPL)
98
+ - `55a65792caed9c026e76d4913c939a0f656a777a0a130e0b8a0d29ad6cf41235` (Godot)
99
+ - No gate-law, freeze-law, or synthesis-law changes.
100
+ - `ReviewerOptionsSchema` fields are all optional; existing receipts parse cleanly.
101
+ - `ReviewSnapshotSchema.reviewer_options` is optional; existing review snapshots parse
102
+ cleanly.
103
+ - `SectionGateResultSchema` additions are `.optional().default(0)`; existing and new gate
104
+ JSONs both parse correctly.
105
+
106
+ ### Out of scope
107
+
108
+ - `seeded-v1` fixture expansion (`needs_contradiction_mapping` remains unreachable).
109
+ - Prompt tuning or system-prompt coaching for decision-vocabulary expansion.
110
+ - phi3:14b calibration.
111
+ - Any gate, freeze, or synthesis-law change.
112
+
113
+ ### Test surface
114
+
115
+ - 671 (v0.5.0) → 698 (Session 2, +27) → 706 (Session 3, +8) → 713 (Session 5, +7).
116
+ - **Cumulative (Experiments 5+6):** 620 (v0.4.0) → 713 (+93 total). Experiment 5 added
117
+ 51 tests; Experiment 6 added 42.
118
+ - New test files: `test/reviewer-options.test.ts` (27 tests, Session 2),
119
+ `test/review-cli-preset.test.ts` (8 tests, Session 3),
120
+ `test/gates-schema.test.ts` (2 tests, Session 5, F-53),
121
+ `test/review-schema.test.ts` additions (3 tests, Session 5, F-54),
122
+ `test/review-markdown.test.ts` additions (2 tests, Session 5, F-54).
123
+
5
124
  ## [0.5.0] — 2026-05-10 — reviewer calibration as durable trust contract
6
125
 
7
126
  ### F-50 stabilization (Session 5)
package/README.es.md CHANGED
@@ -7,7 +7,7 @@
7
7
  </p>
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.5.0"><img src="https://img.shields.io/badge/version-0.5.0-blue" alt="version 0.5.0"></a>
10
+ <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.6.0"><img src="https://img.shields.io/badge/version-0.6.0-blue" alt="version 0.6.0"></a>
11
11
  <a href="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
12
12
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green" alt="MIT License"></a>
13
13
  <img src="https://img.shields.io/badge/node-%E2%89%A520-brightgreen" alt="Node ≥20">
@@ -151,9 +151,9 @@ Esta es la alternativa estructural a *búsqueda → resumen → informe detallad
151
151
 
152
152
  ## Calibración de revisores
153
153
 
154
- La versión v0.5.0 hace que la calibración de revisores sea más robusta. Un perfil de revisor no se considera confiable simplemente porque se ejecutó una vez; obtiene un estado a través de informes estructurados de fallos simulados y agregación de múltiples ejecuciones.
154
+ La versión 0.5.0 hace que la calibración de los revisores sea más robusta. Un perfil de revisor no se considera confiable simplemente porque se ejecutó una vez; obtiene un estado a través de informes estructurados de fallos simulados y agregación de múltiples ejecuciones. La versión 0.6.0 agrega opciones de revisor deterministas a la ruta de revisión de producción y al sistema de calibración.
155
155
 
156
- **Actualmente, ningún perfil se considera como una "línea de base confiable".** Los informes canónicos en el repositorio muestran `hermes-two-pass=failed`, `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`. Esto es intencional: la confianza se gana a través de evidencia repetida de fallos simulados, no se asume.
156
+ **Actualmente, no se admite ningún perfil como "línea de base confiable".** Los informes canónicos en el repositorio muestran `hermes-two-pass=failed`, `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`, `hermes-two-pass-deterministic=failed`. Esto es intencional: la confianza se gana a través de evidencia repetida de fallos simulados, no se asume. El informe `hermes-two-pass-deterministic` tiene una brecha en el modelo y la capacidad (se producen 2 de 6 tipos de decisiones; se requieren 3 de 6) que no es un problema de varianza.
157
157
 
158
158
  Los informes de calibración se encuentran en `calibration/reviewer-profiles/<profile>/seeded-v1.{json,md}`. Cada informe registra los resultados de PASADO/FALLIDO en siete categorías, cuatro etiquetas de estado (`trusted_baseline`, `conditional_pass`, `failed`, `comparison_only`), y revela honestamente qué aspectos no puede probar la prueba (`needs_contradiction_mapping` no es accesible desde `seeded-v1`). Consulte [CHANGELOG.md](CHANGELOG.md).
159
159
 
@@ -164,14 +164,22 @@ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile he
164
164
  # Multi-run aggregate calibration (canonical evidence — 3 runs, median-based PASS/FAIL)
165
165
  node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile hermes-two-pass --runs 3
166
166
 
167
+ # Deterministic multi-run calibration (temperature + seed explicit in receipt)
168
+ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass \
169
+ --temperature 0 --seed 7 --runs 3 --profile hermes-two-pass-deterministic
170
+
167
171
  # Promote a section's review — auto-populates calibration_summary from pack-relative receipt
168
172
  research-os review-promote 01-section --pack <pack> --profile hermes-two-pass
169
173
  ```
170
174
 
171
175
  Cuando se utiliza `--runs <n>`, los informes de cada ejecución se escriben en `<profile>/runs/run-NNN.json` y se escribe un informe agregado (con barras basadas en la mediana y detección de fallos recurrentes) en `<profile>/seeded-v1.{json,md}`. El informe agregado incluye `receipt_kind: 'aggregate'` para distinguirlo de los informes de ejecución individual. El modo de ejecución individual (`--runs 1` o omitido) conserva el comportamiento de escritura directa existente.
172
176
 
177
+ **Perfiles de revisor deterministas:** Utilice `review_profiles.<name>.reviewer_options` en `research.yaml` para incluir los parámetros de muestreo de Ollama, como `temperature` y `seed`, en cada instancia de `OllamaInternReviewer` en la ruta de revisión de producción. El perfil `hermes-two-pass-deterministic` se proporciona como un ejemplo integrado. Consulte [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md) y la [página del manual de calibración de revisores](https://mcp-tool-shop-org.github.io/research-os/handbook/reviewer-calibration/).
178
+
173
179
  ## Estado
174
180
 
181
+ **v0.6.0:** Publicada en npm como `@mcptoolshop/research-os@0.6.0`, 10 de mayo de 2026. La versión 0.6.0 finaliza el Experimento 6 con evidencia de la confianza del revisor: research-os ahora puede producir una línea de base canónica de modelo reproducible y atribuible. Incluye: opciones de revisor deterministas en la ruta de revisión de producción (`review_profiles.<name>.reviewer_options` en `research.yaml`); compatibilidad hacia atrás del esquema de "gate" para artefactos congelados anteriores a la versión 0.3.3 (F-53); la salida de la revisión revela las condiciones de muestreo directamente en `review.json` y `review.md` (F-54); informe agregado determinista canónico incluido (`hermes-two-pass-deterministic`, `temperature:0, seed:7`). **No se admite ninguna línea de base confiable.** `hermes-two-pass-deterministic=failed` (brecha en el modelo y la capacidad en el vocabulario de decisiones, no varianza). **Hermes no se promociona a "línea de base confiable".** La ganancia es el mecanismo, no un informe de éxito. No se realizaron cambios en los "gates", la congelación ni las leyes de síntesis. Los cuatro paquetes congelados verifican su identidad de bytes. 713/713 pruebas de vitest superadas. Consulte [CHANGELOG.md](CHANGELOG.md) y [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md).
182
+
175
183
  **v0.5.0** — publicado en npm como `@mcptoolshop/research-os@0.5.0`, 10 de mayo de 2026. La versión v0.5.0 hace que la calibración de revisores sea más robusta. Un perfil de revisor no se considera confiable simplemente porque se ejecutó una vez; obtiene un estado a través de informes estructurados de fallos simulados y agregación de múltiples ejecuciones. Incluye: esquema de informe de calibración estructurado (`seeded-v1.{json,md}`, validado con Zod, cuatro etiquetas de estado); entorno de ejecución para múltiples ejecuciones (`--runs <n>`, aislamiento por ejecución, barras de PASADO/FALLIDO basadas en la mediana, degradación por fallos recurrentes); barra de vocabulario de decisiones consciente de la arquitectura; búsqueda de informes relativa al paquete en `review-promote`. **No se admite ninguna línea de base confiable:** `hermes-two-pass=failed` (agregado, 3 ejecuciones), `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`. research-os ahora puede negarse a confiar en un perfil de revisor cuando los fallos simulados repetidos no respaldan la confianza. **No se realizan cambios en las puertas, la congelación o las leyes de síntesis. Los cuatro paquetes congelados existentes verifican la integridad de los bytes.** 671/671 pruebas de vitest superadas. Consulte [CHANGELOG.md](CHANGELOG.md).
176
184
 
177
185
  **v0.4.0** — publicado en npm como `@mcptoolshop/research-os@0.4.0`, 10 de mayo de 2026. La versión v0.4.0 hace que la identidad de la fuente sea más robusta. Las reglas deterministas del tipo de fuente gestionan la mayoría repetible, los registros de anulación preservan las correcciones del operador a través de la recolección, y la "auditoría de la tarjeta de origen" reemplaza las comprobaciones de deriva de scripts con una interfaz de línea de comandos de primera clase. Incluye: clasificador centralizado de tipo de fuente (Componente B — `classifySourceType`, 11 proveedores canónicos, `source-type-rules.json`); registro de anulación de la tarjeta de origen (Componente A — `source-card-overrides.jsonl`, subcomandos `validate` + `list`); y CLI de auditoría de la tarjeta de origen (Componente D — `research-os source-card audit --pack <dir>`, 7 tipos de hallazgos, artefactos JSON + Markdown, opciones `--apply --from` para aplicar la ruta). Corrección cosmética F-46: los manifiestos de los paquetes ahora imprimen la versión binaria en vivo en lugar de la versión congelada en `research.yaml` durante la inicialización del paquete. **No se realizan cambios en las puertas, la congelación o las leyes de síntesis. Los cuatro paquetes congelados existentes verifican la integridad de los bytes.** 620/620 pruebas de vitest superadas. Consulte [CHANGELOG.md](CHANGELOG.md) y la [página del manual de auditoría de la tarjeta de origen](https://mcp-tool-shop-org.github.io/research-os/handbook/source-card-audit/).
package/README.fr.md CHANGED
@@ -7,7 +7,7 @@
7
7
  </p>
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.5.0"><img src="https://img.shields.io/badge/version-0.5.0-blue" alt="version 0.5.0"></a>
10
+ <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.6.0"><img src="https://img.shields.io/badge/version-0.6.0-blue" alt="version 0.6.0"></a>
11
11
  <a href="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
12
12
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green" alt="MIT License"></a>
13
13
  <img src="https://img.shields.io/badge/node-%E2%89%A520-brightgreen" alt="Node ≥20">
@@ -151,11 +151,11 @@ Ceci est une alternative structurée à *recherche → résumé → rapport dét
151
151
 
152
152
  ## Calibrage des évaluateurs
153
153
 
154
- La version 0.5.0 rend le calibrage des évaluateurs plus fiable. Un profil d'évaluateur n'est pas considéré comme fiable simplement parce qu'il a été exécuté une fois ; il acquiert un statut grâce à des rapports structurés de défaillances simulées et à une agrégation de plusieurs exécutions.
154
+ La version 0.5.0 rend le calibrage des évaluateurs plus fiable. Un profil d'évaluateur n'est pas considéré comme fiable simplement parce qu'il a été exécuté une fois ; il acquiert un statut grâce à des rapports structurés de défaillances simulées et à une agrégation sur plusieurs exécutions. La version 0.6.0 ajoute des options d'évaluateurs déterministes au processus de révision en production et à l'outil de calibrage.
155
155
 
156
- **Aucun profil n'est actuellement admis comme étant une "baseline de confiance".** Les rapports canoniques dans le dépôt indiquent `hermes-two-pass=échec`, `mistral-nemo-two-pass=succès conditionnel`, `hermes-single-pass=comparaison uniquement`. Ceci est intentionnel : la confiance est acquise grâce à des preuves répétées de défaillances simulées, et non supposée.
156
+ **Aucun profil n'est actuellement accepté comme étant une "baseline de confiance".** Les rapports canoniques dans le dépôt indiquent `hermes-two-pass=échec`, `mistral-nemo-two-pass=succès conditionnel`, `hermes-single-pass=comparaison uniquement`, `hermes-two-pass-deterministic=échec`. Ceci est intentionnel : la confiance est acquise grâce à des preuves répétées de défaillances simulées, et non supposée. Le rapport `hermes-two-pass-deterministic` présente un écart de capacité du modèle (2 types de décision produits sur 6 requis ; il en faut 3 sur 6) qui n'est pas un problème de variance.
157
157
 
158
- Les rapports de calibrage se trouvent dans le répertoire `calibration/reviewer-profiles/<profil>/seeded-v1.{json,md`. Chaque rapport enregistre les résultats PASS/FAIL pour sept critères, quatre étiquettes de statut (`trusted_baseline`, `conditional_pass`, `failed`, `comparison_only`), et indique honnêtement ce que le test ne peut pas vérifier (`needs_contradiction_mapping` est inaccessible depuis `seeded-v1`). Consultez [CHANGELOG.md](CHANGELOG.md).
158
+ Les rapports de calibrage se trouvent dans le répertoire `calibration/reviewer-profiles/<profile>/seeded-v1.{json,md}`. Chaque rapport enregistre les résultats PASS/FAIL pour sept critères, quatre étiquettes de statut (`trusted_baseline`, `conditional_pass`, `failed`, `comparison_only`), et indique honnêtement ce que l'outil de test ne peut pas vérifier (`needs_contradiction_mapping` est inaccessible depuis `seeded-v1`). Consultez [CHANGELOG.md](CHANGELOG.md).
159
159
 
160
160
  ```bash
161
161
  # Single-run calibration (quick local check)
@@ -164,15 +164,23 @@ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile he
164
164
  # Multi-run aggregate calibration (canonical evidence — 3 runs, median-based PASS/FAIL)
165
165
  node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile hermes-two-pass --runs 3
166
166
 
167
+ # Deterministic multi-run calibration (temperature + seed explicit in receipt)
168
+ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass \
169
+ --temperature 0 --seed 7 --runs 3 --profile hermes-two-pass-deterministic
170
+
167
171
  # Promote a section's review — auto-populates calibration_summary from pack-relative receipt
168
172
  research-os review-promote 01-section --pack <pack> --profile hermes-two-pass
169
173
  ```
170
174
 
171
- Lorsque l'option `--runs <n>` est utilisée, les rapports pour chaque exécution sont écrits dans `<profil>/runs/run-NNN.json`, et un rapport agrégé (avec des critères basés sur la médiane et la détection des défaillances récurrentes) est écrit dans `<profil>/seeded-v1.{json,md`. Le rapport agrégé contient `receipt_kind: 'aggregate'` pour le distinguer des rapports d'une seule exécution. Le mode d'exécution unique (`--runs 1` ou omis) conserve le comportement d'écriture directe existant.
175
+ Lorsque l'option `--runs <n>` est utilisée, les rapports pour chaque exécution sont écrits dans `<profile>/runs/run-NNN.json`, et un rapport agrégé (avec des critères basés sur la médiane et la détection des défaillances récurrentes) est écrit dans `<profile>/seeded-v1.{json,md}`. Le rapport agrégé contient `receipt_kind: 'aggregate'` pour le distinguer des rapports d'une seule exécution. Le mode d'une seule exécution (`--runs 1` ou omis) conserve le comportement d'écriture directe existant.
176
+
177
+ **Profils d'évaluateurs déterministes** — utilisez `review_profiles.<name>.reviewer_options` dans `research.yaml` pour intégrer les paramètres d'échantillonnage d'Ollama tels que `temperature`, `seed`, et d'autres, dans chaque instance de `OllamaInternReviewer` dans le processus de révision en production. Le profil `hermes-two-pass-deterministic` est fourni comme exemple. Consultez [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md) et la [page du manuel de calibrage des évaluateurs](https://mcp-tool-shop-org.github.io/research-os/handbook/reviewer-calibration/).
172
178
 
173
179
  ## Statut
174
180
 
175
- **v0.5.0** — publié sur npm en tant que `@mcptoolshop/research-os@0.5.0`, le 10 mai 2026. La version 0.5.0 rend le calibrage des évaluateurs plus fiable. Un profil d'évaluateur n'est pas considéré comme fiable simplement parce qu'il a été exécuté une fois ; il acquiert un statut grâce à des rapports structurés de défaillances simulées et à une agrégation de plusieurs exécutions. Inclut : schéma de rapport de calibrage structuré (`seeded-v1.{json,md}`, validé par Zod, quatre étiquettes de statut) ; environnement d'exécution multi-exécutions (`--runs <n>`, isolation par exécution, critères PASS/FAIL basés sur la médiane, dégradation en cas de défaillances récurrentes) ; critère de vocabulaire de décision conscient de l'architecture ; recherche de rapports relative au paquet dans `review-promote`. **Aucune "baseline de confiance" admise :** `hermes-two-pass=échec` (agrégé, 3 exécutions), `mistral-nemo-two-pass=succès conditionnel`, `hermes-single-pass=comparaison uniquement`. research-os peut désormais refuser de faire confiance à un profil d'évaluateur lorsque les défaillances simulées répétées ne justifient pas la confiance. **Aucun changement concernant les "gates", les "freezes" ou les "lois de synthèse". Les quatre paquets figés vérifient l'identité des octets.** 671/671 tests vitest réussis. Consultez [CHANGELOG.md](CHANGELOG.md).
181
+ **v0.6.0** — publiée sur npm en tant que `@mcptoolshop/research-os@0.6.0`, le 10 mai 2026. La version 0.6.0 conclut l'Expérience 6 avec des preuves de confiance des évaluateurs : research-os peut désormais produire une baseline de modèle canonique reproductible et attribuable. Inclut : options d'évaluateurs déterministes dans le processus de révision en production (`review_profiles.<name>.reviewer_options` dans `research.yaml`); compatibilité ascendante du schéma de la passerelle pour les artefacts figés antérieurs à la version 0.3.3 (F-53); la sortie de la révision indique directement les conditions d'échantillonnage dans `review.json` et `review.md` (F-54); rapport agrégé déterministe canonique enregistré (`hermes-two-pass-deterministic`, `temperature:0, seed:7`). **Aucune baseline de confiance n'est acceptée.** `hermes-two-pass-deterministic=échec` (écart de capacité du modèle dans le vocabulaire des décisions, et non un problème de variance). **Hermes n'est pas promu au statut de "baseline de confiance".** Le gain est le mécanisme, et non un rapport réussi. Aucune modification des passerelles, des gels ou des lois de synthèse. Les quatre packs figés vérifient l'identité des octets. 713/713 tests vitest réussis. Consultez [CHANGELOG.md](CHANGELOG.md) et [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md).
182
+
183
+ **v0.5.0** — Publié sur npm sous le nom `@mcptoolshop/research-os@0.5.0`, le 10 mai 2026. La version 0.5.0 rend la calibration des évaluateurs plus fiable. Le profil d'un évaluateur n'est pas considéré comme fiable simplement parce qu'il a été exécuté une seule fois ; il acquiert un statut grâce à des rapports de défaillances simulées structurés et à une agrégation sur plusieurs exécutions. Comprend : un schéma de rapport de calibration structuré (`seeded-v1.{json,md}`, validé par Zod, avec quatre étiquettes de statut) ; un outil d'exécution pour plusieurs exécutions (`--runs <n>`, isolation par exécution, barres PASS/FAIL basées sur la médiane, dégradation en cas de défaillances répétées) ; une barre de vocabulaire de décision tenant compte de l'architecture ; une recherche de rapports relative au paquet dans `review-promote`. **Aucune référence fiable n'est acceptée :** `hermes-two-pass=failed` (agrégé, 3 exécutions), `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`. research-os peut désormais refuser de faire confiance au profil d'un évaluateur lorsque des défaillances simulées répétées ne justifient pas cette confiance. **Aucun changement concernant les passerelles, les blocages ou les règles de synthèse. Les quatre paquets figés vérifient l'intégrité des octets.** 671/671 tests vitest réussis. Consultez [CHANGELOG.md](CHANGELOG.md).
176
184
 
177
185
  **v0.4.0** — publié sur npm sous le nom `@mcptoolshop/research-os@0.4.0`, le 10 mai 2026. La version 0.4.0 assure la pérennité de l'identité de la source. Les règles de type de source déterministes gèrent la majorité reproductible, les registres de remplacement préservent les corrections de l'opérateur lors des nouvelles agrégations, et la commande `source-card audit` remplace les vérifications de dérive des scripts temporaires par une interface CLI de première classe. Comprend : un classificateur de type de source centralisé (Composant B — `classifySourceType`, 11 fournisseurs canoniques, `source-type-rules.json`); un registre de remplacement de carte source (Composant A — `source-card-overrides.jsonl`, commandes `validate` et `list`); et une CLI d'audit de carte source (Composant D — `research-os source-card audit --pack <dir>`, 7 types de résultats, artefacts JSON et Markdown, options `--apply --from` pour spécifier le chemin). Correction cosmétique F-46 : les manifestes de pack indiquent désormais la version binaire en cours d'utilisation plutôt que la version figée dans `research.yaml` lors de l'initialisation du pack. **Aucun changement concernant les mécanismes de contrôle, de blocage ou les lois de synthèse. Les quatre packs figés existants sont vérifiés de manière identique au niveau des octets.** 620/620 tests vitest réussis. Consultez le fichier [CHANGELOG.md](CHANGELOG.md) et la page du manuel d'audit de carte source : [https://mcp-tool-shop-org.github.io/research-os/handbook/source-card-audit/](https://mcp-tool-shop-org.github.io/research-os/handbook/source-card-audit/).
178
186
 
package/README.hi.md CHANGED
@@ -7,7 +7,7 @@
7
7
  </p>
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.5.0"><img src="https://img.shields.io/badge/version-0.5.0-blue" alt="version 0.5.0"></a>
10
+ <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.6.0"><img src="https://img.shields.io/badge/version-0.6.0-blue" alt="version 0.6.0"></a>
11
11
  <a href="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
12
12
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green" alt="MIT License"></a>
13
13
  <img src="https://img.shields.io/badge/node-%E2%89%A520-brightgreen" alt="Node ≥20">
@@ -149,21 +149,24 @@ discover
149
149
 
150
150
  `research-os` एक स्थानीय-प्रथम कमांड-लाइन इंटरफेस है। यह उन शोध-पैकेज निर्देशिकाओं में फ़ाइलों को पढ़ता और लिखता है जिन्हें आप निर्दिष्ट करते हैं, और (जब `gather` का उपयोग किया जाता है) स्रोत यूआरएल प्राप्त करने के लिए बाहरी HTTP अनुरोध भेजता है जिन्हें आप प्रदान करते हैं। यह निम्नलिखित नहीं करता है: कोई सर्वर नहीं चलाता, इनकमिंग कनेक्शन स्वीकार नहीं करता, क्रेडेंशियल संग्रहीत नहीं करता, या टेलीमेट्री नहीं भेजता। किसी भी गुप्त जानकारी को पैकेज फ़ाइलों में नहीं लिखा जाता है। भेद्यता रिपोर्टिंग नीति के लिए [SECURITY.md](SECURITY.md) देखें।
151
151
 
152
- ## समीक्षक कैलिब्रेशन
152
+ ## समीक्षक अंशांकन
153
153
 
154
- v0.5.0 समीक्षक कैलिब्रेशन को अधिक टिकाऊ बनाता है। किसी समीक्षक प्रोफाइल पर इसलिए भरोसा नहीं किया जाता क्योंकि
155
- यह केवल एक बार चलाया गया था; यह संरचित, पूर्वनिर्धारित विफलता रिपोर्टों और
156
- एकाधिक रनों के संयोजन के माध्यम से एक स्थिति प्राप्त करता है।
154
+ v0.5.0 समीक्षक अंशांकन को अधिक टिकाऊ बनाता है। एक समीक्षक प्रोफाइल पर इसलिए भरोसा नहीं किया जाता क्योंकि
155
+ यह केवल एक बार चलाया गया था; यह संरचित, पूर्वनिर्धारित विफलता परिणामों और
156
+ कई बार चलाने के बाद प्राप्त आंकड़ों के आधार पर एक स्थिति प्राप्त करता है। v0.6.0 उत्पादन
157
+ समीक्षा प्रक्रिया और अंशांकन प्रणाली में निश्चित (डिटरमिनिस्टिक) समीक्षक विकल्पों को जोड़ता है।
157
158
 
158
- **वर्तमान में कोई भी प्रोफाइल `trusted_baseline` के रूप में स्वीकार नहीं किया गया है।** रिपॉजिटरी में मौजूद मानक रिपोर्टें
159
- `hermes-two-pass=failed`, `mistral-nemo-two-pass=conditional_pass`,
160
- `hermes-single-pass=comparison_only` दिखाती हैं। यह जानबूझकर किया गया है: विश्वास
161
- बार-बार होने वाले पूर्वनिर्धारित विफलता के प्रमाणों के माध्यम से अर्जित किया जाता है, न कि केवल अनुमान लगाकर।
159
+ **वर्तमान में कोई भी प्रोफाइल `trusted_baseline` के रूप में स्वीकार नहीं किया गया है।** रिपॉजिटरी में मौजूद
160
+ मानक परिणाम दर्शाते हैं कि `hermes-two-pass=failed`, `mistral-nemo-two-pass=conditional_pass`,
161
+ `hermes-single-pass=comparison_only`, `hermes-two-pass-deterministic=failed`। यह
162
+ जानबूझकर किया गया है: विश्वास बार-बार प्राप्त होने वाले, पूर्वनिर्धारित विफलता प्रमाणों के माध्यम से अर्जित किया जाता है, न कि केवल अनुमान के आधार पर।
163
+ `hermes-two-pass-deterministic` परिणाम में एक संरचनात्मक मॉडल-क्षमता अंतर है
164
+ (6 निर्णय प्रकारों में से 2 उत्पन्न किए गए; 3/6 की आवश्यकता है) जो विचलन (वैरिएंस) की समस्या नहीं है।
162
165
 
163
- कैलिब्रेशन रिपोर्ट `calibration/reviewer-profiles/<profile>/seeded-v1.{json,md}` पर उपलब्ध हैं।
164
- प्रत्येक रिपोर्ट में सात मानदंडों के विरुद्ध PASS/FAIL दर्ज किया जाता है, चार स्थिति लेबल
166
+ अंशांकन परिणाम `calibration/reviewer-profiles/<profile>/seeded-v1.{json,md}` में उपलब्ध हैं।
167
+ प्रत्येक परिणाम सात मानदंडों के विरुद्ध PASS/FAIL रिकॉर्ड करता है, चार स्थिति लेबल
165
168
  (`trusted_baseline`, `conditional_pass`, `failed`, `comparison_only`), और
166
- यह ईमानदारी से बताता है कि कौन सा परीक्षण मामला (फिक्स्चर) परीक्षण करने में सक्षम नहीं है (`needs_contradiction_mapping`
169
+ ईमानदारी से बताता है कि परीक्षण प्रणाली क्या नहीं कर सकती (`needs_contradiction_mapping`
167
170
  `seeded-v1` से दुर्गम है)। [CHANGELOG.md](CHANGELOG.md) देखें।
168
171
 
169
172
  ```bash
@@ -173,21 +176,31 @@ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile he
173
176
  # Multi-run aggregate calibration (canonical evidence — 3 runs, median-based PASS/FAIL)
174
177
  node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile hermes-two-pass --runs 3
175
178
 
179
+ # Deterministic multi-run calibration (temperature + seed explicit in receipt)
180
+ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass \
181
+ --temperature 0 --seed 7 --runs 3 --profile hermes-two-pass-deterministic
182
+
176
183
  # Promote a section's review — auto-populates calibration_summary from pack-relative receipt
177
184
  research-os review-promote 01-section --pack <pack> --profile hermes-two-pass
178
185
  ```
179
186
 
180
- जब `--runs <n>` का उपयोग किया जाता है, तो प्रत्येक रन के लिए रिपोर्ट `<profile>/runs/run-NNN.json` में लिखी जाती हैं
181
- और एक एकत्रित रिपोर्ट (माध्य-आधारित मानदंडों और आवर्ती विफलता का पता लगाने के साथ)
182
- `<profile>/seeded-v1.{json,md}` में लिखी जाती है। एकत्रित रिपोर्ट में `receipt_kind: 'aggregate'` होता है
183
- जो इसे एकल-रन रिपोर्टों से अलग करता है। एकल-रन मोड (`--runs 1` या छोड़ा गया)
184
- मौजूदा सीधे लिखने के व्यवहार को बनाए रखता है।
187
+ जब `--runs <n>` का उपयोग किया जाता है, तो प्रत्येक रन के लिए परिणाम `<profile>/runs/run-NNN.json` में लिखे जाते हैं
188
+ और एक समग्र परिणाम (माध्य-आधारित मानदंडों और बार-बार होने वाली विफलता का पता लगाने के साथ)
189
+ `<profile>/seeded-v1.{json,md}` में लिखा जाता है। समग्र परिणाम में `receipt_kind: 'aggregate'` होता है
190
+ जो इसे एकल-रन परिणामों से अलग करता है। एकल-रन मोड (`--runs 1` या छोड़ा गया) मौजूदा
191
+ सीधे लिखने के व्यवहार को बनाए रखता है।
192
+
193
+ **निश्चित (डिटरमिनिस्टिक) समीक्षक प्रोफाइल** — `research.yaml` में `review_profiles.<name>.reviewer_options` का उपयोग करें
194
+ `temperature`, `seed`, और अन्य Ollama सैंपलिंग पैरामीटर को उत्पादन समीक्षा प्रक्रिया में
195
+ प्रत्येक `OllamaInternReviewer` निर्माण में शामिल करने के लिए। `hermes-two-pass-deterministic` प्रोफाइल
196
+ एक अंतर्निहित उदाहरण के रूप में उपलब्ध है। [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md) और
197
+ [समीक्षक अंशांकन पुस्तिका पृष्ठ](https://mcp-tool-shop-org.github.io/research-os/handbook/reviewer-calibration/) देखें।
185
198
 
186
199
  ## स्थिति
187
200
 
188
- **v0.5.0** — npm पर `@mcptoolshop/research-os@0.5.0` के रूप में प्रकाशित, 2026-05-10। v0.5.0 समीक्षक कैलिब्रेशन को अधिक टिकाऊ बनाता है। किसी समीक्षक प्रोफाइल पर इसलिए भरोसा नहीं किया जाता क्योंकि
189
- यह केवल एक बार चलाया गया था; यह संरचित, पूर्वनिर्धारित विफलता रिपोर्टों और
190
- एकाधिक रनों के संयोजन के माध्यम से एक स्थिति प्राप्त करता है। इसमें शामिल हैं: संरचित कैलिब्रेशन रिपोर्ट स्कीमा (`seeded-v1.{json,md}`, Zod द्वारा सत्यापित, चार स्थिति लेबल); बहु-रन प्रणाली (`--runs <n>`, प्रति-रन अलगाव, माध्य-आधारित PASS/FAIL मानदंड, आवर्ती विफलता का पता लगाना); आर्किटेक्चर-जागरूक निर्णय शब्दावली मानदंड; `review-promote` में पैकेज-सापेक्ष रिपोर्ट खोज। **कोई भी विश्वसनीय आधारभूत स्वीकार नहीं किया गया:** `hermes-two-pass=failed` (एकत्रित, 3 रन), `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`. research-os अब एक समीक्षक प्रोफाइल पर भरोसा करने से इनकार कर सकता है जब बार-बार होने वाली पूर्वनिर्धारित विफलताएं विश्वास का समर्थन नहीं करती हैं। **कोई गेट, फ्रीज या संश्लेषण-कानून परिवर्तन नहीं। सभी चार स्थिर पैकेजों को बाइट-समान रूप से सत्यापित किया गया है।** 671/671 vitest पास हो गया। [CHANGELOG.md](CHANGELOG.md) देखें।
201
+ **v0.6.0** — npm पर `@mcptoolshop/research-os@0.6.0` के रूप में प्रकाशित, 2026-05-10। v0.6.0, समीक्षक-विश्वास प्रमाण के साथ प्रयोग 6 को समाप्त करता है: research-os अब एक पुनरुत्पादित, प्राप्य मानक मॉडल आधार रेखा (कैनोनिकल-मॉडल बेसलाइन) उत्पन्न कर सकता है। इसमें शामिल हैं: उत्पादन समीक्षा प्रक्रिया में निश्चित समीक्षक विकल्प (`review_profiles.<name>.reviewer_options` in `research.yaml`); पूर्व-v0.3.3 के स्थिर (फ्रोज़न) कलाकृतियों के लिए गेट स्कीमा की पीछे की अनुकूलता (F-53); समीक्षा आउटपुट सीधे `review.json` और `review.md` पर सैंपलिंग स्थितियों को प्रदर्शित करता है (F-54); एक मानक, निश्चित समग्र परिणाम दर्ज किया गया (`hermes-two-pass-deterministic`, `temperature:0, seed:7`)। **कोई भी प्रोफाइल `trusted_baseline` के रूप में स्वीकार नहीं किया गया है।** `hermes-two-pass-deterministic=failed` (निर्णय शब्दावली में संरचनात्मक मॉडल-क्षमता अंतर, विचलन नहीं)। **Hermes को `trusted_baseline` के रूप में पदोन्नत नहीं किया गया है।** लाभ तंत्र है, न कि एक सफल परिणाम। कोई गेट, फ्रीज या संश्लेषण-कानून परिवर्तन नहीं। सभी चार स्थिर पैकेजों को बाइट-समान रूप से सत्यापित किया गया है। 713/713 vitest पास हो गया। [CHANGELOG.md](CHANGELOG.md) और [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md) देखें।
202
+
203
+ **v0.5.0** npm पर `@mcptoolshop/research-os@0.5.0` के रूप में प्रकाशित, 10 मई, 2026. v0.5.0 से समीक्षक (रिव्यूवर) के मूल्यांकन की विश्वसनीयता बढ़ाई गई है। समीक्षक की प्रोफाइल पर इसलिए भरोसा नहीं किया जाता क्योंकि यह केवल एक बार चलाई गई थी; बल्कि, यह संरचित, पूर्वनिर्धारित विफलता रिपोर्टों और कई बार चलाने के परिणामों के आधार पर एक स्थिति प्राप्त करती है। इसमें शामिल हैं: संरचित मूल्यांकन रिपोर्ट का स्कीमा (`seeded-v1.{json,md}`, जोड द्वारा सत्यापित, चार स्थिति लेबल); मल्टी-रन सिस्टम (`--runs <n>`, प्रत्येक रन के लिए अलग-अलग वातावरण, माध्यिका-आधारित पास/फेल मानदंड, बार-बार होने वाली विफलता पर स्थिति में कमी); आर्किटेक्चर-जागरूक निर्णय शब्दावली बार; `review-promote` में पैकेज-सापेक्ष रिपोर्ट खोज। **कोई भी विश्वसनीय आधारभूत (बेसलाइन) स्वीकार नहीं किया गया:** `hermes-two-pass=failed` (एकत्रित, 3 रन), `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`. अब, research-os एक समीक्षक प्रोफाइल पर भरोसा करने से इनकार कर सकता है, यदि बार-बार होने वाली पूर्वनिर्धारित विफलताएं भरोसे को सही नहीं ठहराती हैं। **कोई गेट, फ्रीज या संश्लेषण-नियम में बदलाव नहीं किए गए। सभी चार स्थिर पैकेजों का सत्यापन बाइट-दर-बाइट समान है। 671/671 vitest पास हो गए। [CHANGELOG.md](CHANGELOG.md) देखें।
191
204
 
192
205
  **v0.4.0** — npm पर `@mcptoolshop/research-os@0.4.0` के रूप में प्रकाशित, 2026-05-10। v0.4.0 स्रोत की पहचान को स्थायी बनाता है। नियतात्मक स्रोत-प्रकार नियम दोहराए जा सकने वाले अधिकांश मामलों को संभालते हैं, ओवरराइड लेजर ऑपरेटर द्वारा किए गए सुधारों को पुनः-संग्रहण के दौरान संरक्षित करते हैं, और `source-card audit` एक समर्पित कमांड-लाइन इंटरफेस के साथ "स्क्रैच-स्क्रिप्ट" विचलन जांचों को बदलता है। इसमें शामिल हैं: केंद्रीकृत स्रोत-प्रकार वर्गीकरण (घटक B — `classifySourceType`, 11 मानक विक्रेता, `source-type-rules.json`); स्रोत-कार्ड ओवरराइड लेजर (घटक A — `source-card-overrides.jsonl`, `validate` + `list` उप-कमांड); और स्रोत-कार्ड ऑडिट कमांड-लाइन इंटरफेस (घटक D — `research-os source-card audit --pack <dir>`, 7 प्रकार की खोज, JSON + Markdown प्रारूप, `--apply --from` पथ लागू करें)। F-46: एक सौंदर्य संबंधी सुधार: अब "पैक" मैनिफेस्ट में `research.yaml` में "पैक" शुरू करने के समय "फ्रीज" किए गए संस्करण के बजाय, लाइव बाइनरी संस्करण अंकित किया जाता है। **कोई "गेट", "फ्रीज" या "सिंथेसिस-लॉ" परिवर्तन नहीं। सभी चार मौजूदा "फ्रीज" किए गए "पैक" "वेरिफाई-पैक" बाइट-समान रूप से पास होते हैं।** 620/620 "विटेस्ट" पास। [CHANGELOG.md](CHANGELOG.md) और [स्रोत-कार्ड ऑडिट हैंडबुक पृष्ठ](https://mcp-tool-shop-org.github.io/research-os/handbook/source-card-audit/) देखें।
193
206
 
package/README.it.md CHANGED
@@ -7,7 +7,7 @@
7
7
  </p>
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.5.0"><img src="https://img.shields.io/badge/version-0.5.0-blue" alt="version 0.5.0"></a>
10
+ <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.6.0"><img src="https://img.shields.io/badge/version-0.6.0-blue" alt="version 0.6.0"></a>
11
11
  <a href="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
12
12
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green" alt="MIT License"></a>
13
13
  <img src="https://img.shields.io/badge/node-%E2%89%A520-brightgreen" alt="Node ≥20">
@@ -151,9 +151,9 @@ Questa è l'alternativa strutturale a *ricerca → riepilogo → report dettagli
151
151
 
152
152
  ## Calibrazione dei revisori
153
153
 
154
- La versione 0.5.0 rende la calibrazione dei revisori più affidabile. Un profilo di revisore non è considerato affidabile solo perché è stato eseguito una volta; acquisisce uno stato attraverso ricevute strutturate che segnalano errori simulati e aggregazioni di esecuzioni multiple.
154
+ La versione 0.5.0 rende la calibrazione dei revisori più duratura. Un profilo di revisore non è considerato affidabile semplicemente perché è stato eseguito una volta; acquisisce uno status attraverso ricevute strutturate di errori simulati e aggregazioni di esecuzioni multiple. La versione 0.6.0 aggiunge opzioni deterministiche per i revisori al percorso di revisione di produzione e all'ambiente di calibrazione.
155
155
 
156
- **Nessun profilo è attualmente considerato come "baseline affidabile".** Le ricevute di riferimento nel repository mostrano `hermes-two-pass=failed`, `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`. Questo è intenzionale: l'affidabilità si guadagna attraverso prove ripetute di errori simulati, non viene data per scontata.
156
+ **Nessun profilo è attualmente accettato come `baseline affidabile`.** Le ricevute standard nel repository mostrano `hermes-two-pass=fallito`, `mistral-nemo-two-pass=passaggio condizionato`, `hermes-single-pass=confronto solo`, `hermes-two-pass-deterministic=fallito`. Questo è intenzionale: la fiducia si guadagna attraverso prove ripetute di errori simulati, non viene data per scontata. La ricevuta `hermes-two-pass-deterministic` presenta un divario strutturale nelle capacità del modello (2/6 tipi di decisione prodotti; ne sono richiesti 3/6) che non è un problema di varianza.
157
157
 
158
158
  Le ricevute di calibrazione si trovano in `calibration/reviewer-profiles/<profile>/seeded-v1.{json,md}`. Ogni ricevuta registra i risultati PASS/FAIL rispetto a sette criteri, quattro etichette di stato (`trusted_baseline`, `conditional_pass`, `failed`, `comparison_only`), e indica onestamente cosa il test non può verificare (`needs_contradiction_mapping` non è raggiungibile da `seeded-v1`). Consultare [CHANGELOG.md](CHANGELOG.md).
159
159
 
@@ -164,14 +164,22 @@ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile he
164
164
  # Multi-run aggregate calibration (canonical evidence — 3 runs, median-based PASS/FAIL)
165
165
  node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile hermes-two-pass --runs 3
166
166
 
167
+ # Deterministic multi-run calibration (temperature + seed explicit in receipt)
168
+ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass \
169
+ --temperature 0 --seed 7 --runs 3 --profile hermes-two-pass-deterministic
170
+
167
171
  # Promote a section's review — auto-populates calibration_summary from pack-relative receipt
168
172
  research-os review-promote 01-section --pack <pack> --profile hermes-two-pass
169
173
  ```
170
174
 
171
175
  Quando si utilizza l'opzione `--runs <n>`, le ricevute per ogni esecuzione vengono scritte in `<profile>/runs/run-NNN.json` e una ricevuta aggregata (con barre basate sulla mediana e rilevamento di errori ricorrenti) viene scritta in `<profile>/seeded-v1.{json,md}`. La ricevuta aggregata contiene `receipt_kind: 'aggregate'` per distinguerla dalle ricevute di singola esecuzione. La modalità di singola esecuzione (`--runs 1` o omessa) mantiene il comportamento esistente di scrittura diretta.
172
176
 
177
+ **Profili di revisori deterministici** — utilizzare `review_profiles.<nome>.reviewer_options` in `research.yaml` per includere i parametri di campionamento di Ollama, come `temperature` e `seed`, in ogni istanza di `OllamaInternReviewer` nel percorso di revisione di produzione. Il profilo `hermes-two-pass-deterministic` è fornito come esempio predefinito. Consultare [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md) e la [pagina del manuale sulla calibrazione dei revisori](https://mcp-tool-shop-org.github.io/research-os/handbook/reviewer-calibration/).
178
+
173
179
  ## Stato
174
180
 
181
+ **v0.6.0** — pubblicata su npm come `@mcptoolshop/research-os@0.6.0`, 10 maggio 2026. La versione 0.6.0 conclude l'esperimento 6 con prove di affidabilità dei revisori: research-os può ora produrre una baseline di modello standard riproducibile e tracciabile. Include: opzioni deterministiche per i revisori nel percorso di revisione di produzione (`review_profiles.<nome>.reviewer_options` in `research.yaml`); compatibilità all'indietro dello schema delle "gate" per gli artefatti "congelati" precedenti alla versione 0.3.3 (F-53); l'output della revisione indica direttamente le condizioni di campionamento nei file `review.json` e `review.md` (F-54); è stata aggiunta una ricevuta aggregata deterministica standard (`hermes-two-pass-deterministic`, `temperature:0, seed:7`). **Nessuna baseline affidabile accettata.** `hermes-two-pass-deterministic=fallito` (divario strutturale nelle capacità del modello nel vocabolario delle decisioni, non varianza). **Hermes non è stato promosso a `baseline affidabile`.** Il vantaggio è il meccanismo, non una ricevuta positiva. Non sono state apportate modifiche alle "gate", al processo di "congelamento" o alle leggi di sintesi. Tutti e quattro i pacchetti "congelati" sono identici a livello di byte. 713/713 test di vitest superati. Consultare [CHANGELOG.md](CHANGELOG.md) e [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md).
182
+
175
183
  **v0.5.0** — pubblicata su npm come `@mcptoolshop/research-os@0.5.0`, 10 maggio 2026. La versione 0.5.0 rende la calibrazione dei revisori più affidabile. Un profilo di revisore non è considerato affidabile solo perché è stato eseguito una volta; acquisisce uno stato attraverso ricevute strutturate che segnalano errori simulati e aggregazioni di esecuzioni multiple. Include: schema di ricevuta di calibrazione strutturato (`seeded-v1.{json,md}`, convalidato da Zod, quattro etichette di stato); meccanismo di esecuzione multi-run (`--runs <n>`, isolamento per esecuzione, barre PASS/FAIL basate sulla mediana, demotivazione per errori ricorrenti); barra di vocabolario decisionale consapevole dell'architettura; ricerca di ricevute relativa al pacchetto in `review-promote`. **Nessuna baseline affidabile accettata:** `hermes-two-pass=failed` (aggregata, 3 esecuzioni), `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`. research-os può ora rifiutare di considerare affidabile un profilo di revisore quando ripetuti errori simulati non supportano l'affidabilità. **Nessuna modifica alle gate, al freeze o alle leggi di sintesi. Tutti e quattro i pacchetti esistenti verificano l'integrità dei byte.** 671/671 test vitest superati. Consultare [CHANGELOG.md](CHANGELOG.md).
176
184
 
177
185
  **v0.4.0** — pubblicata su npm come `@mcptoolshop/research-os@0.4.0`, 10 maggio 2026. La versione 0.4.0 rende l'identità della sorgente più affidabile. Le regole deterministiche del tipo di sorgente gestiscono la maggioranza ripetibile, i ledger di override preservano le correzioni dell'operatore durante il ri-raccolta, e l'audit della "source-card" sostituisce i controlli di deriva degli script con un'interfaccia CLI dedicata. Include: classificatore centralizzato del tipo di sorgente (Componente B — `classifySourceType`, 11 fornitori canonici, `source-type-rules.json`); ledger di override della source-card (Componente A — `source-card-overrides.jsonl`, comandi `validate` e `list`); e CLI di audit della source-card (Componente D — `research-os source-card audit --pack <dir>`, 7 tipi di rilevamento, artefatti JSON + Markdown, opzioni `--apply --from` per l'applicazione). Correzione cosmetica F-46: i manifest dei pacchetti ora stampano la versione binaria corrente anziché la versione congelata in `research.yaml` durante l'inizializzazione del pacchetto. **Nessuna modifica alle gate, al freeze o alle leggi di sintesi. Tutti e quattro i pacchetti esistenti verificano l'integrità dei byte.** 620/620 test vitest superati. Consultare [CHANGELOG.md](CHANGELOG.md) e la [pagina del manuale dell'audit della source-card](https://mcp-tool-shop-org.github.io/research-os/handbook/source-card-audit/).
package/README.ja.md CHANGED
@@ -7,7 +7,7 @@
7
7
  </p>
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.5.0"><img src="https://img.shields.io/badge/version-0.5.0-blue" alt="version 0.5.0"></a>
10
+ <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.6.0"><img src="https://img.shields.io/badge/version-0.6.0-blue" alt="version 0.6.0"></a>
11
11
  <a href="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
12
12
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green" alt="MIT License"></a>
13
13
  <img src="https://img.shields.io/badge/node-%E2%89%A520-brightgreen" alt="Node ≥20">
@@ -149,13 +149,13 @@ discover
149
149
 
150
150
  `research-os` は、ローカル環境で動作するCLIです。このツールは、指定された研究パッケージのディレクトリ内のファイルを読み書きし、`gather` コマンドを使用する場合、提供されたソースコードのURLから情報を取得するために、HTTPリクエストを送信します。このツールは、サーバーを起動したり、外部からの接続を受け付けたり、認証情報を保存したり、テレメトリデータを送信したりすることはありません。また、機密情報はパッケージのファイルに書き込まれません。脆弱性に関する報告については、[SECURITY.md](SECURITY.md) を参照してください。
151
151
 
152
- ## レビュー担当者の評価調整機能
152
+ ## レビュー担当者のキャリブレーション
153
153
 
154
- v0.5.0では、レビュー担当者の評価調整機能がより安定しました。レビュー担当者のプロファイルは、単に一度実行されたというだけで信頼されるわけではありません。構造化されたテストケースの失敗結果と、複数回の実行結果の集計によって、信頼度合いが評価されます。
154
+ v0.5.0では、レビュー担当者のキャリブレーションがより堅牢になりました。レビュー担当者のプロファイルは、単に一度実行されたというだけで信頼されるわけではありません。構造化された意図的なエラーの記録と、複数回の実行による集計によって、信頼度を獲得します。v0.6.0では、本番環境のレビュープロセスとキャリブレーション環境に、再現性のあるレビュー担当者オプションが追加されました。
155
155
 
156
- **現在、どのプロファイルも`trusted_baseline`として認められていません。** リポジトリ内の標準的なテスト結果では、`hermes-two-pass`が`failed`、`mistral-nemo-two-pass`が`conditional_pass`、`hermes-single-pass`が`comparison_only`となっています。これは意図的なものです。信頼は、単なる仮定ではなく、繰り返されるテストケースの失敗結果によって獲得されます。
156
+ **現在、どのプロファイルも`trusted_baseline`として認められていません。** リポジトリ内の標準的な記録には、`hermes-two-pass=failed`、`mistral-nemo-two-pass=conditional_pass`、`hermes-single-pass=comparison_only`、`hermes-two-pass-deterministic=failed`と記載されています。これは意図的なものです。信頼は、仮定ではなく、繰り返しの検証による証拠によって獲得されます。`hermes-two-pass-deterministic`の記録には、構造的なモデルの能力ギャップ(6種類の判断のうち2種類しか生成できない。3種類が必要)があり、これはばらつきの問題ではありません。
157
157
 
158
- 評価結果は、`calibration/reviewer-profiles/<プロファイル名>/seeded-v1.{json,md}`に保存されています。各評価結果は、7つの項目に対する合否、4つのステータスラベル(`trusted_baseline`、`conditional_pass`、`failed`、`comparison_only`)、およびテストが実行できない状況を正直に報告します(`needs_contradiction_mapping`は`seeded-v1`からは到達できません)。詳細は[CHANGELOG.md](CHANGELOG.md)を参照してください。
158
+ キャリブレーションの記録は、`calibration/reviewer-profiles/<profile>/seeded-v1.{json,md}`に保存されています。各記録は、7つの項目に対するPASS/FAILの結果、4つのステータスラベル(`trusted_baseline`、`conditional_pass`、`failed`、`comparison_only`)、および、テストできない内容を正直に開示しています(`needs_contradiction_mapping`は`seeded-v1`からはアクセスできません)。詳細は[CHANGELOG.md](CHANGELOG.md)を参照してください。
159
159
 
160
160
  ```bash
161
161
  # Single-run calibration (quick local check)
@@ -164,15 +164,23 @@ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile he
164
164
  # Multi-run aggregate calibration (canonical evidence — 3 runs, median-based PASS/FAIL)
165
165
  node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile hermes-two-pass --runs 3
166
166
 
167
+ # Deterministic multi-run calibration (temperature + seed explicit in receipt)
168
+ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass \
169
+ --temperature 0 --seed 7 --runs 3 --profile hermes-two-pass-deterministic
170
+
167
171
  # Promote a section's review — auto-populates calibration_summary from pack-relative receipt
168
172
  research-os review-promote 01-section --pack <pack> --profile hermes-two-pass
169
173
  ```
170
174
 
171
- `--runs <n>`オプションを使用すると、各実行結果が`<プロファイル名>/runs/run-NNN.json`に保存され、集計結果(中央値に基づいた合否判定と、繰り返し発生するエラーの検出を含む)が`<プロファイル名>/seeded-v1.{json,md}`に保存されます。集計結果には、`receipt_kind: 'aggregate'`という情報が含まれており、これにより単一実行の結果と区別されます。単一実行モード(`--runs 1`または省略)では、既存の直接書き込み動作が維持されます。
175
+ `--runs <n>`オプションを使用すると、各実行の記録が`<profile>/runs/run-NNN.json`に書き込まれ、集計された記録(中央値に基づいた項目と、再発するエラーの検出を含む)が`<profile>/seeded-v1.{json,md}`に書き込まれます。集計された記録には、`receipt_kind: 'aggregate'`という情報が含まれており、これにより単一実行の記録と区別できます。単一実行モード(`--runs 1`または省略)では、既存の直接書き込みの動作が維持されます。
176
+
177
+ **再現性のあるレビュー担当者プロファイル** — `research.yaml`の`review_profiles.<name>.reviewer_options`を使用して、`temperature`、`seed`、およびその他のOllamaのサンプリングパラメータを、本番環境のレビュープロセスにおけるすべての`OllamaInternReviewer`の構築に適用します。`hermes-two-pass-deterministic`プロファイルは、組み込みのサンプルとして提供されています。詳細は[`docs/experiment-6-proof.md`](docs/experiment-6-proof.md)と、[レビュー担当者キャリブレーションハンドブック](https://mcp-tool-shop-org.github.io/research-os/handbook/reviewer-calibration/)を参照してください。
172
178
 
173
179
  ## ステータス
174
180
 
175
- **v0.5.0** — npmで`@mcptoolshop/research-os@0.5.0`として公開。2026年5月10日。v0.5.0では、レビュー担当者の評価調整機能がより安定しました。レビュー担当者のプロファイルは、単に一度実行されたというだけで信頼されるわけではありません。構造化されたテストケースの失敗結果と、複数回の実行結果の集計によって、信頼度合いが評価されます。変更点:構造化された評価結果スキーマ(`seeded-v1.{json,md}`、Zodによる検証、4つのステータスラベル)、複数実行機能(`--runs <n>`、各実行の分離、中央値に基づいた合否判定、繰り返し発生するエラーの検出)、アーキテクチャを考慮した判定語彙、`review-promote`におけるパッケージ相対パスでの評価結果参照。**信頼できるベースラインは存在しません:** `hermes-two-pass=failed`(集計、3回の実行)、`mistral-nemo-two-pass=conditional_pass`、`hermes-single-pass=comparison_only`。research-osは、繰り返し発生するテストケースの失敗結果が信頼を裏付けない場合、レビュー担当者のプロファイルを信頼しないようにすることができます。**ゲート、フリーズ、または合成ルールに関する変更はありません。すべての4つのフリーズされたパッケージが、バイト単位で完全に同一であることを確認しました。** 671/671のvitestが成功しました。詳細は[CHANGELOG.md](CHANGELOG.md)を参照してください。
181
+ **v0.6.0** — npmに`@mcptoolshop/research-os@0.6.0`として公開されました。2026年5月10日。v0.6.0では、実験6が、レビュー担当者の信頼性に関する証拠とともに完了しました。これにより、research-osは、再現可能で、帰属可能な、標準的なモデルのベースラインを生成できるようになりました。変更点:本番環境のレビュープロセスにおける再現性のあるレビュー担当者オプション(`review_profiles.<name>.reviewer_options`を`research.yaml`に追加)、既存のv0.3.3以前のフローズンアーティファクトに対するゲートスキーマの互換性(F-53)、レビュー出力にサンプリング条件が直接`review.json`と`review.md`に表示されるように変更(F-54)、標準的な再現性のある集計記録がコミットされました(`hermes-two-pass-deterministic`、`temperature:0, seed:7`)。**どのプロファイルも`trusted_baseline`として認められていません。** `hermes-two-pass-deterministic=failed`(判断の語彙における構造的なモデルの能力ギャップ。ばらつきの問題ではない)。**Hermesは`trusted_baseline`として昇格しません。** 重要なのは、メカニズムであり、単に合格する記録ではありません。ゲート、フリーズ、または合成法の変更はありません。すべてのフローズンパックが、バイト単位で同一であることを確認しました。713/713のvitestが合格しました。詳細は[CHANGELOG.md](CHANGELOG.md)と[`docs/experiment-6-proof.md`](docs/experiment-6-proof.md)を参照してください。
182
+
183
+ **v0.5.0** — npmに `@mcptoolshop/research-os@0.5.0` として公開。2026年5月10日。v0.5.0では、レビュー担当者の評価の信頼性を高めるための機能が導入されました。レビュー担当者のプロファイルは、単に一度実行されたというだけで信頼されるわけではありません。構造化されたテストケースと複数回の実行結果を組み合わせることで、信頼度を評価します。同梱内容:構造化された評価結果スキーマ (`seeded-v1.{json,md}`、Zodによる検証、4つのステータスラベル)、複数回の実行をサポートする機能 (`--runs <n>`、各実行の分離、中央値に基づいた合否判定、繰り返し発生するエラーに対する評価の引き下げ)、アーキテクチャを考慮した意思決定のための語彙セット、`review-promote` 内でのパッケージ相対的な評価結果の参照機能。**信頼できる基準値は認められません:** `hermes-two-pass=failed` (集計、3回の実行)、`mistral-nemo-two-pass=conditional_pass`、`hermes-single-pass=comparison_only`。research-osは、繰り返し発生するテストの失敗が信頼を裏付けることができない場合、レビュー担当者のプロファイルを信頼しないようにすることができます。**ゲート、フリーズ、または合成規則に関する変更はありません。すべての4つのパッケージが、バイト単位で完全に同一であることを検証済みです。** 671/671のvitestテストが合格。詳細は [CHANGELOG.md](CHANGELOG.md) を参照してください。
176
184
 
177
185
  **v0.4.0** — npmに`@mcptoolshop/research-os@0.4.0`として公開。2026年5月10日。v0.4.0では、ソースの同一性を維持できるようになりました。決定論的なソースタイプルールにより、再現可能な多数が処理され、オーバーライドされたレジャーにより、再収集時のオペレーターによる修正が保持され、`source-card audit`コマンドが、従来のスクリプトのずれチェックを置き換え、より使いやすいCLIインターフェースを提供します。同梱内容:集中型のソースタイプ分類器(コンポーネントB — `classifySourceType`、11種類のベンダー、`source-type-rules.json`)、ソースカードのオーバーライドレジャー(コンポーネントA — `source-card-overrides.jsonl`、`validate`および`list`サブコマンド)、およびソースカード監査CLI(コンポーネントD — `research-os source-card audit --pack <dir>`、7種類の検出結果、JSONおよびMarkdown形式のレポート、`--apply --from`による適用パス)。F-46:見た目の修正。パッケージのマニフェストには、`research.yaml`に固定されたバージョンではなく、実行中のバイナリのバージョンが記録されるようになりました。**ゲート、フリーズ、または合成に関する変更はありません。既存のすべてのパッケージは、バイト単位で同一であることを検証済みです。** 620/620のvitestテストが合格しました。詳細は[CHANGELOG.md](CHANGELOG.md)および[ソースカード監査に関するハンドブック](https://mcp-tool-shop-org.github.io/research-os/handbook/source-card-audit/)を参照してください。
178
186
 
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
  </p>
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.5.0"><img src="https://img.shields.io/badge/version-0.5.0-blue" alt="version 0.5.0"></a>
10
+ <a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.6.0"><img src="https://img.shields.io/badge/version-0.6.0-blue" alt="version 0.6.0"></a>
11
11
  <a href="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/research-os/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
12
12
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green" alt="MIT License"></a>
13
13
  <img src="https://img.shields.io/badge/node-%E2%89%A520-brightgreen" alt="Node ≥20">
@@ -153,12 +153,15 @@ This is the structural alternative to *search → summarize → pretty report*.
153
153
 
154
154
  v0.5.0 makes reviewer calibration durable. A reviewer profile is not trusted because
155
155
  it ran once; it earns a status through structured seeded-failure receipts and
156
- multi-run aggregation.
156
+ multi-run aggregation. v0.6.0 adds deterministic reviewer options to the production
157
+ review path and calibration harness.
157
158
 
158
159
  **No profile is currently admitted as `trusted_baseline`.** The canonical receipts
159
160
  in the repo show `hermes-two-pass=failed`, `mistral-nemo-two-pass=conditional_pass`,
160
- `hermes-single-pass=comparison_only`. This is intentional: trust is earned through
161
- repeated seeded-failure evidence, not assumed.
161
+ `hermes-single-pass=comparison_only`, `hermes-two-pass-deterministic=failed`. This is
162
+ intentional: trust is earned through repeated seeded-failure evidence, not assumed.
163
+ The `hermes-two-pass-deterministic` receipt has a structural model-capability gap
164
+ (2/6 decision types produced; requires 3/6) that is not a variance problem.
162
165
 
163
166
  Calibration receipts live at `calibration/reviewer-profiles/<profile>/seeded-v1.{json,md}`.
164
167
  Each receipt records PASS/FAIL against seven bars, four status labels
@@ -173,6 +176,10 @@ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile he
173
176
  # Multi-run aggregate calibration (canonical evidence — 3 runs, median-based PASS/FAIL)
174
177
  node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass --profile hermes-two-pass --runs 3
175
178
 
179
+ # Deterministic multi-run calibration (temperature + seed explicit in receipt)
180
+ node scripts/reviewer-calibration.mjs --model hermes3:8b --two-pass \
181
+ --temperature 0 --seed 7 --runs 3 --profile hermes-two-pass-deterministic
182
+
176
183
  # Promote a section's review — auto-populates calibration_summary from pack-relative receipt
177
184
  research-os review-promote 01-section --pack <pack> --profile hermes-two-pass
178
185
  ```
@@ -183,8 +190,17 @@ to `<profile>/seeded-v1.{json,md}`. The aggregate receipt carries `receipt_kind:
183
190
  to discriminate from single-run receipts. Single-run mode (`--runs 1` or omitted) preserves
184
191
  the existing direct-write behavior.
185
192
 
193
+ **Deterministic reviewer profiles** — use `review_profiles.<name>.reviewer_options` in
194
+ `research.yaml` to carry `temperature`, `seed`, and other Ollama sampling parameters
195
+ into every `OllamaInternReviewer` construction in the production review path. The
196
+ `hermes-two-pass-deterministic` profile ships as a built-in example. See
197
+ [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md) and the
198
+ [reviewer calibration handbook page](https://mcp-tool-shop-org.github.io/research-os/handbook/reviewer-calibration/).
199
+
186
200
  ## Status
187
201
 
202
+ **v0.6.0** — published to npm as `@mcptoolshop/research-os@0.6.0`, 2026-05-10. v0.6.0 closes Experiment 6 with reviewer-trust evidence: research-os can now produce a reproducible, attributable canonical-model baseline. Ships: deterministic reviewer options on the production review path (`review_profiles.<name>.reviewer_options` in `research.yaml`); gate schema backward compatibility for pre-v0.3.3 frozen artifacts (F-53); review output discloses sampling conditions directly on `review.json` and `review.md` (F-54); canonical deterministic aggregate receipt committed (`hermes-two-pass-deterministic`, `temperature:0, seed:7`). **No trusted baseline admitted.** `hermes-two-pass-deterministic=failed` (structural model-capability gap in decision vocabulary, not variance). **Hermes is not promoted to `trusted_baseline`.** The win is the mechanism, not a passing receipt. No gate, freeze, or synthesis-law changes. All four frozen packs verify-pack byte-identically. 713/713 vitest passing. See [CHANGELOG.md](CHANGELOG.md) and [`docs/experiment-6-proof.md`](docs/experiment-6-proof.md).
203
+
188
204
  **v0.5.0** — published to npm as `@mcptoolshop/research-os@0.5.0`, 2026-05-10. v0.5.0 makes reviewer calibration durable. A reviewer profile is not trusted because it ran once; it earns a status through structured seeded-failure receipts and multi-run aggregation. Ships: structured calibration receipt schema (`seeded-v1.{json,md}`, Zod-validated, four status labels); multi-run harness (`--runs <n>`, per-run isolation, median-based PASS/FAIL bars, recurring-failure demotion); architecture-aware decision-vocab bar; pack-relative receipt lookup in `review-promote`. **No trusted baseline admitted:** `hermes-two-pass=failed` (aggregate, 3 runs), `mistral-nemo-two-pass=conditional_pass`, `hermes-single-pass=comparison_only`. research-os can now refuse to trust a reviewer profile when repeated seeded failures do not support trust. **No gate, freeze, or synthesis-law changes. All four frozen packs verify-pack byte-identically.** 671/671 vitest passing. See [CHANGELOG.md](CHANGELOG.md).
189
205
 
190
206
  **v0.4.0** — published to npm as `@mcptoolshop/research-os@0.4.0`, 2026-05-10. v0.4.0 makes source identity durable. Deterministic source-type rules handle the repeatable majority, override ledgers preserve operator corrections across re-gather, and `source-card audit` replaces scratch-script drift checks with a first-class CLI surface. Ships: centralized source-type classifier (Component B — `classifySourceType`, 11 canonical vendors, `source-type-rules.json`); source-card override ledger (Component A — `source-card-overrides.jsonl`, `validate` + `list` subcommands); and source-card audit CLI (Component D — `research-os source-card audit --pack <dir>`, 7 finding kinds, JSON + Markdown artifacts, `--apply --from` apply path). F-46 cosmetic fix: pack manifests now stamp the live binary version rather than the version frozen into `research.yaml` at pack-init. **No gate, freeze, or synthesis-law changes. All four existing frozen packs verify-pack byte-identically.** 620/620 vitest passing. See [CHANGELOG.md](CHANGELOG.md) and the [source-card audit handbook page](https://mcp-tool-shop-org.github.io/research-os/handbook/source-card-audit/).