@mcptoolshop/research-os 0.3.1 → 0.3.2
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 +98 -0
- package/README.es.md +99 -71
- package/README.fr.md +86 -58
- package/README.hi.md +83 -59
- package/README.it.md +97 -73
- package/README.ja.md +86 -58
- package/README.md +5 -3
- package/README.pt-BR.md +83 -59
- package/README.zh.md +102 -74
- package/dist/cli.js +96 -15
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,104 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `research-os` are documented here.
|
|
4
4
|
|
|
5
|
+
## [0.3.2] — 2026-05-09
|
|
6
|
+
|
|
7
|
+
Tight release. One real, tested, dogfooded improvement: normalized
|
|
8
|
+
accepted-claim accounting for `pack publish` admission. Earned by
|
|
9
|
+
Experiment 3 XRPL pack Session K — frozen-pack admission refused on
|
|
10
|
+
a closure-ledger seam disagreement (Section 07 had 24 raw
|
|
11
|
+
`accepted_for_synthesis` rows but only 19 unique `claim_id`s due to
|
|
12
|
+
overlapping reviewer windows). The strict equality check between
|
|
13
|
+
`claim-reviews.jsonl` count and `pack-audit.json::accepted_claims`
|
|
14
|
+
was overcounting duplicates as a refusal trigger. Fix is structural:
|
|
15
|
+
a single canonical "effective accepted set" definition, applied at
|
|
16
|
+
admission, with the legacy audit count preserved (Law 15) but
|
|
17
|
+
demoted from refusal to soft warn when it disagrees with the
|
|
18
|
+
effective set. F-35 (cross-section-map waiver-dependency mismatch)
|
|
19
|
+
deferred to its own scoped release; the helper's normalization
|
|
20
|
+
shape doesn't naturally generalize to operator-authored waiver
|
|
21
|
+
entries.
|
|
22
|
+
|
|
23
|
+
### Added
|
|
24
|
+
|
|
25
|
+
- **`getEffectiveAcceptedClaimIds(reviews)` helper** at
|
|
26
|
+
[`src/closure-ledger/effective-accepted.ts`](src/closure-ledger/effective-accepted.ts)
|
|
27
|
+
— pure-function module. Also exports `getEffectiveDecisionMap` and
|
|
28
|
+
`findIncompatibleDecisions` for downstream consumers that need the
|
|
29
|
+
latest decision per `claim_id` or want to detect incompatible
|
|
30
|
+
duplicate decisions at the same timestamp. The product rule
|
|
31
|
+
(advisor-locked): *Accepted claims = unique `claim_id`s whose
|
|
32
|
+
latest canonical review decision is `accepted_for_synthesis`.*
|
|
33
|
+
Latest-decision-wins precedence per `claim_id` (ISO-8601
|
|
34
|
+
timestamps compare lexicographically). Pattern mirrors
|
|
35
|
+
`cowork/derive.ts`'s active-blocker derivation (Pattern 2:
|
|
36
|
+
latest-status-wins).
|
|
37
|
+
|
|
38
|
+
### Fixed
|
|
39
|
+
|
|
40
|
+
- **Pack publish admission contract: normalized accepted-claim
|
|
41
|
+
accounting (F-36).** When `claim-reviews.jsonl` contains
|
|
42
|
+
overlapping reviewer windows, the same `claim_id` can legitimately
|
|
43
|
+
receive multiple `accepted_for_synthesis` records. Pack publish
|
|
44
|
+
admission now derives the effective accepted set per section using
|
|
45
|
+
latest-decision-wins precedence per `claim_id`, instead of strict
|
|
46
|
+
equality against the legacy `pack-audit.json::accepted_claims` raw
|
|
47
|
+
count. Frozen packs whose legacy audit count differs from the
|
|
48
|
+
effective set now admit with a warning rather than refusing — the
|
|
49
|
+
legacy audit file is preserved (Law 15 immutability) while the
|
|
50
|
+
archive manifest reflects the normalized count. Refusal cases kept
|
|
51
|
+
hard: phantom `claim_id` (accepted but absent from `claims.jsonl`),
|
|
52
|
+
incompatible duplicate decisions (same `claim_id` + same
|
|
53
|
+
`created_at` with different decision values), and section gate not
|
|
54
|
+
synthesis-eligible.
|
|
55
|
+
|
|
56
|
+
The new soft-warn line:
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
section <id>: legacy pack-audit.json accepted_claims (...) differs
|
|
60
|
+
from effective accepted set (...). Using effective count in
|
|
61
|
+
manifest. Legacy audit count preserved in pack/audits/pack-audit.json
|
|
62
|
+
(immutable per Law 15).
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
This is **not** a publish failure when the effective accepted set
|
|
66
|
+
is valid. It means pack publish is preserving the frozen audit
|
|
67
|
+
file while normalizing the archive manifest.
|
|
68
|
+
|
|
69
|
+
### Tests
|
|
70
|
+
|
|
71
|
+
- 540 → **558 passing** (+18). All 57 test files green; lint clean;
|
|
72
|
+
typecheck clean; build clean.
|
|
73
|
+
- 9 helper unit tests at
|
|
74
|
+
`test/closure-ledger/effective-accepted.test.ts` covering empty
|
|
75
|
+
input, duplicate-row dedup, latest-wins precedence in both
|
|
76
|
+
directions, out-of-order resolution, decision-map exposure,
|
|
77
|
+
incompatible-decision detection (with and without timestamp
|
|
78
|
+
collisions), and identical-timestamp agreement.
|
|
79
|
+
- 9 admission integration tests at
|
|
80
|
+
`test/pack-publish/f36-admission.test.ts` covering duplicate
|
|
81
|
+
accepted dedup, soft-warn (not refuse) on legacy mismatch,
|
|
82
|
+
effective-count manifest write, phantom-claim refusal,
|
|
83
|
+
incompatible-decision refusal, non-synthesis-eligible-gate
|
|
84
|
+
refusal, claims.jsonl-absent warn, repair-then-accept resolution,
|
|
85
|
+
later-rejected removal from accepted set, and tiny-fixture
|
|
86
|
+
regression.
|
|
87
|
+
|
|
88
|
+
### Validated against frozen packs
|
|
89
|
+
|
|
90
|
+
- **XRPL creator-token durability** (Experiment 3 pack #2 of 3):
|
|
91
|
+
smoke test admits cleanly. Section 07 surfaces the expected single
|
|
92
|
+
warning (legacy=24, effective=19). Total
|
|
93
|
+
`accepted_claims = 251`. `verify-pack` PASS.
|
|
94
|
+
- **ComfyUI workflow durability** (Experiment 1 pack):
|
|
95
|
+
regression PASS, sha256 fingerprint stable.
|
|
96
|
+
- **research-os self-dogfood** (Experiment 0 pack):
|
|
97
|
+
regression PASS, sha256 fingerprint stable.
|
|
98
|
+
|
|
99
|
+
The fix is a strict superset of prior admission discipline. Packs
|
|
100
|
+
whose effective count already matched legacy admit identically.
|
|
101
|
+
Only XRPL hits the new soft-warn path.
|
|
102
|
+
|
|
5
103
|
## [0.3.1] — 2026-05-09
|
|
6
104
|
|
|
7
105
|
Tight release. One real, tested, dogfooded improvement: section-scoped
|
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.
|
|
10
|
+
<a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.3.2"><img src="https://img.shields.io/badge/version-0.3.2-blue" alt="version 0.3.2"></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">
|
|
@@ -16,80 +16,37 @@
|
|
|
16
16
|
|
|
17
17
|
# research-os
|
|
18
18
|
|
|
19
|
-
Una herramienta de línea de comandos (CLI) que transforma un tema
|
|
19
|
+
Una herramienta de línea de comandos (CLI) que transforma un tema amplio en un "**paquete de investigación**" estructurado: un repositorio organizado donde Claude, Cowork o un conjunto de herramientas pueden trabajar durante horas sin generar información falsa ni distorsionar la investigación.
|
|
20
20
|
|
|
21
21
|
## ¿Qué es?
|
|
22
22
|
|
|
23
|
-
`research-os` es la capa de control entre "quiero investigar X" y una base de evidencia
|
|
23
|
+
`research-os` es la capa de control entre "quiero investigar X" y una base de evidencia estructurada y verificable. Separa las ideas iniciales de la recopilación de evidencia, la extracción de datos de la evaluación de la información, la detección de contradicciones de la resolución de contradicciones, y las decisiones de revisión de la síntesis. Cada paso escribe en un registro de solo escritura; cada decisión sobre la validez se calcula a partir de esos registros, no se afirma directamente.
|
|
24
24
|
|
|
25
|
-
No es un generador de informes. No es un marco de orquestación de modelos de lenguaje (LLM). No escribe la síntesis por usted. Impone las condiciones bajo las cuales la síntesis puede comenzar.
|
|
25
|
+
No es un generador de informes. No es un marco de orquestación de modelos de lenguaje grandes (LLM). No escribe la síntesis por usted. Impone las condiciones bajo las cuales la síntesis puede comenzar.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Los paquetes finalizados se archivan en [`mcp-tool-shop-org/research-packs`](https://github.com/mcp-tool-shop-org/research-packs). Están disponibles, con dos paquetes iniciales. Consulte [`docs/roadmap.md`](docs/roadmap.md) para conocer la hoja de ruta de la versión 1.0.
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
La versión 0.1 se ha sometido a pruebas exhaustivas en dos proyectos piloto. El primero, "research-os investigando su propia especificación", encontró siete errores antes del lanzamiento de la versión 0.1.0, cada uno de los cuales requirió una corrección de código y la creación de una regla o patrón de integración. El segundo (Experimento 1: Durabilidad del flujo de trabajo de ComfyUI, 11 sesiones, un dominio sin superposición de vocabulario con research-os) se completó el 9 de mayo de 2026: el paquete se finalizó, el archivo está disponible, y la regla 2 se implementó mediante el commit `22b5dba`. La documentación del proyecto piloto 0.1 se encuentra en [`docs/dogfood-proof.md`](docs/dogfood-proof.md); la documentación del Experimento 1 se encuentra en [`docs/experiment-1-proof.md`](docs/experiment-1-proof.md). Manual de usuario: <https://mcp-tool-shop-org.github.io/research-os/handbook/>.
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|---|-----|
|
|
33
|
-
| 1 | No hay síntesis antes de la verdad de la fuente. |
|
|
34
|
-
| 2 | La recopilación es evidencia; la extracción es interpretación. |
|
|
35
|
-
| 3 | Los modelos pueden interpretar fragmentos de la fuente; no pueden crear fragmentos de evidencia. |
|
|
36
|
-
| 4 | La extracción puede generar demasiada información; la síntesis no puede heredar esa abundancia. |
|
|
37
|
-
| 5 | El mapeo de contradicciones revela tensiones; no resuelve, sintetiza ni decide qué afirmación es correcta. |
|
|
38
|
-
| 6 | Las restricciones deciden si una sección es elegible para la síntesis. No sintetizan ni ocultan los fallos. |
|
|
39
|
-
| 7 | La revisión crítica evalúa la integridad de la investigación. No sintetiza ni reescribe la verdad de la fuente. |
|
|
40
|
-
| 8 | La indexación hace que la verdad de la investigación sea consultable. No crea nueva verdad ni se convierte en la fuente oficial. |
|
|
41
|
-
| 9 | La transferencia a Cowork genera instrucciones operativas a partir de la verdad de la investigación. No crea verdad ni evita las restricciones. |
|
|
42
|
-
| 10 | El espacio de trabajo de síntesis organiza la verdad de la investigación aceptada para Cowork. No crea síntesis ni evita el modo de transferencia. |
|
|
43
|
-
| 11 | La auditoría del paquete agrega la verdad de la investigación existente. No crea nueva verdad ni oculta la evidencia a nivel de sección. |
|
|
44
|
-
| 12 | El descubrimiento propone pistas; solo la recopilación produce evidencia. |
|
|
45
|
-
| 13 | Un revisor no es confiable hasta que las pruebas de fallos demuestran su capacidad de recuperación. |
|
|
46
|
-
| 14 | La abundancia de afirmaciones no es sinónimo de calidad de la investigación. Las afirmaciones deben ser validadas antes de poder competir para la síntesis. |
|
|
47
|
-
| 15 | La congelación fija la verdad de la investigación completada. No completa la investigación inconclusa ni convierte el estado de reparación en evidencia. |
|
|
48
|
-
| 16 | Las exenciones relajan las restricciones de la fuente; no pueden crear evidencia. |
|
|
49
|
-
|
|
50
|
-
**Ley 3** — el modelo de lenguaje nunca crea texto de evidencia. `research-os` crea un registro de extractos determinista (con identificadores estables como `ex_<id_hex_de_la_fuente>_001`); el modelo de lenguaje elige los identificadores de los extractos; `research-os` copia el texto literal. La clase de error "parafrasear como cita" es estructuralmente imposible.
|
|
51
|
-
|
|
52
|
-
**Ley 14** — entre la extracción y la revisión, `research-os claim triage` elimina duplicados, limita la contribución por fuente y reserva los candidatos de bajo rendimiento. El triage NO modifica `claims.jsonl`; las afirmaciones reservadas permanecen en el registro canónico.
|
|
31
|
+
## Instalación
|
|
53
32
|
|
|
54
|
-
|
|
33
|
+
**Requisitos:** Node.js ≥ 20.
|
|
55
34
|
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
→ gather
|
|
59
|
-
→ claim extract
|
|
60
|
-
→ claim audit-density
|
|
61
|
-
→ claim triage
|
|
62
|
-
→ contradict map
|
|
63
|
-
→ contradict resolve
|
|
64
|
-
→ review
|
|
65
|
-
→ review-promote
|
|
66
|
-
→ gate
|
|
67
|
-
→ section report
|
|
68
|
-
→ audit
|
|
69
|
-
→ index build
|
|
70
|
-
→ cowork handoff
|
|
71
|
-
→ synth workspace
|
|
72
|
-
→ freeze
|
|
35
|
+
```bash
|
|
36
|
+
npm install -g @mcptoolshop/research-os
|
|
73
37
|
```
|
|
74
38
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
Esta es la alternativa estructural a *búsqueda → resumen → informe detallado*. La cadena es el producto.
|
|
78
|
-
|
|
79
|
-
## Instalación
|
|
80
|
-
|
|
81
|
-
**Requisitos:** Node.js ≥ 20.
|
|
39
|
+
Para los colaboradores que construyen desde el código fuente:
|
|
82
40
|
|
|
83
41
|
```bash
|
|
84
|
-
# From source (v0.1.0 is not yet published to npm)
|
|
85
42
|
git clone https://github.com/mcp-tool-shop-org/research-os.git
|
|
86
43
|
cd research-os
|
|
87
44
|
npm install
|
|
88
45
|
npm run build
|
|
89
|
-
npm link
|
|
46
|
+
npm link
|
|
90
47
|
```
|
|
91
48
|
|
|
92
|
-
##
|
|
49
|
+
## Comienzo rápido
|
|
93
50
|
|
|
94
51
|
```bash
|
|
95
52
|
# Create a new research-pack
|
|
@@ -119,41 +76,112 @@ research-os index build --all
|
|
|
119
76
|
research-os cowork handoff
|
|
120
77
|
research-os synth workspace # only if handoff returned synthesis_ready
|
|
121
78
|
research-os freeze
|
|
79
|
+
|
|
80
|
+
# Export to the research-packs archive
|
|
81
|
+
research-os pack publish \
|
|
82
|
+
--to <research-packs>/packages/<name>
|
|
122
83
|
```
|
|
123
84
|
|
|
124
|
-
**Para un ejemplo práctico**, consulte el paquete de
|
|
85
|
+
**Para un ejemplo práctico**, consulte el paquete de demostración en `research-os-packs/research-os-spec/`: cada elemento, cada registro, cada evaluación, cada huella digital de la versión final, todo en el disco en registros de solo escritura. Ese paquete es el que generó `docs/dogfood-proof.md`.
|
|
125
86
|
|
|
126
|
-
**Requiere [ollama-intern-mcp](https://github.com/mcp-tool-shop-org/ollama-intern-mcp) ejecutándose localmente** para la extracción,
|
|
87
|
+
**Requiere [ollama-intern-mcp](https://github.com/mcp-tool-shop-org/ollama-intern-mcp) ejecutándose localmente** para la extracción, la evaluación, la revisión y el descubrimiento de información mediante modelos de lenguaje. El modelo predeterminado es `hermes3:8b`; cámbielo con `OLLAMA_INTERN_MODEL=<modelo>`. Establezca `OLLAMA_HOST` si Ollama no se ejecuta en el valor predeterminado `localhost:11434`.
|
|
88
|
+
|
|
89
|
+
## Las 16 reglas fundamentales
|
|
90
|
+
|
|
91
|
+
| # | Regla |
|
|
92
|
+
|---|-----|
|
|
93
|
+
| 1 | No se puede realizar una síntesis sin una fuente verificada. |
|
|
94
|
+
| 2 | La recopilación es evidencia; la extracción es interpretación. |
|
|
95
|
+
| 3 | Los modelos pueden interpretar fragmentos de la fuente; no pueden crear fragmentos de evidencia. |
|
|
96
|
+
| 4 | La extracción puede generar demasiada información; la síntesis no puede heredar esa abundancia. |
|
|
97
|
+
| 5 | El mapeo de contradicciones revela tensiones; no resuelve, sintetiza ni decide qué afirmación es correcta. |
|
|
98
|
+
| 6 | Las restricciones deciden si una sección es elegible para la síntesis. No realizan la síntesis ni ocultan los fallos. |
|
|
99
|
+
| 7 | La revisión crítica evalúa la integridad de la investigación. No realiza la síntesis ni reescribe la fuente verificada. |
|
|
100
|
+
| 8 | La indexación permite buscar información verificada. No crea nueva información ni se convierte en la fuente oficial. |
|
|
101
|
+
| 9 | La transferencia a Cowork genera instrucciones operativas a partir de la información verificada. No crea información ni evita las restricciones. |
|
|
102
|
+
| 10 | El espacio de trabajo de síntesis organiza la información verificada para Cowork. No crea la síntesis ni evita el modo de transferencia. |
|
|
103
|
+
| 11 | La auditoría del paquete recopila la información verificada existente. No crea nueva información ni oculta la evidencia a nivel de sección. |
|
|
104
|
+
| 12 | El descubrimiento propone ideas; solo la recopilación produce evidencia. |
|
|
105
|
+
| 13 | Un revisor no se considera confiable hasta que se demuestran fallos y se verifica su capacidad de recuperación. |
|
|
106
|
+
| 14 | La abundancia de afirmaciones no garantiza la calidad de la investigación. Las afirmaciones deben ser evaluadas antes de poder ser consideradas para su síntesis. |
|
|
107
|
+
| 15 | La función de "congelación" asegura la integridad de la investigación finalizada. No completa investigaciones incompletas ni convierte un estado de reparación en evidencia. |
|
|
108
|
+
| 16 | Las exenciones relajan las restricciones de origen; sin embargo, no pueden generar evidencia. |
|
|
109
|
+
|
|
110
|
+
**Ley 3** — El modelo de lenguaje (LLM) nunca genera texto de evidencia. `research-os` crea un registro determinista de extractos (con identificadores estables como `ex_<id_hex_de_la_fuente>_001`); el LLM selecciona los identificadores de los extractos; `research-os` copia el texto literal. La clase de error "parafraseo como cita" es estructuralmente imposible.
|
|
111
|
+
|
|
112
|
+
**Ley 14** — Entre la extracción y la revisión, `research-os claim triage` elimina duplicados, limita la contribución por fuente y reserva los candidatos de bajo valor. El triage NO modifica `claims.jsonl`; las afirmaciones reservadas permanecen en el registro canónico.
|
|
113
|
+
|
|
114
|
+
## La cadena de flujo de trabajo v0.1
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
discover
|
|
118
|
+
→ gather
|
|
119
|
+
→ claim extract
|
|
120
|
+
→ claim audit-density
|
|
121
|
+
→ claim triage
|
|
122
|
+
→ contradict map
|
|
123
|
+
→ contradict resolve
|
|
124
|
+
→ review
|
|
125
|
+
→ review-promote
|
|
126
|
+
→ gate
|
|
127
|
+
→ section report
|
|
128
|
+
→ audit
|
|
129
|
+
→ index build
|
|
130
|
+
→ cowork handoff
|
|
131
|
+
→ synth workspace
|
|
132
|
+
→ freeze
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Cada paso es un comando de la interfaz de línea de comandos (CLI). Cada paso escribe en archivos que solo se pueden añadir. Ningún paso sintetiza, resuelve o crea nueva verdad; estos invariantes se aplican y no se confían en ellos. La revisión acepta, rechaza o solicita correcciones para las afirmaciones candidatas; la función de "puerta" utiliza estas decisiones de revisión para calcular la "elegibilidad para la síntesis"; la función de "congelación" es el último control de integridad que se niega a marcar un paquete como completado a menos que todas las capas estén de acuerdo. Consulte [docs/dogfood-proof.md](docs/dogfood-proof.md) para la prueba de la cadena v0.1 que garantiza la integridad de extremo a extremo.
|
|
136
|
+
|
|
137
|
+
Esta es la alternativa estructural a *búsqueda → resumen → informe detallado*. La cadena es el producto.
|
|
127
138
|
|
|
128
139
|
## Glosario
|
|
129
140
|
|
|
130
141
|
| Término | Significado |
|
|
131
142
|
|------|---------|
|
|
132
|
-
| `research-os` | El plano de control / CLI /
|
|
133
|
-
| `research-pack` | El
|
|
143
|
+
| `research-os` | El plano de control / CLI / puertas / ley de orquestación (este repositorio) |
|
|
144
|
+
| `research-pack` | El artefacto de repositorio generado para un esfuerzo de investigación. |
|
|
134
145
|
| `research section` | Una unidad de investigación delimitada dentro de un paquete. |
|
|
135
|
-
| `research receipt` | Prueba de que una sección ha superado las comprobaciones de origen/afirmación/
|
|
146
|
+
| `research receipt` | Prueba de que una sección ha superado las comprobaciones de origen/afirmación/puerta. |
|
|
136
147
|
|
|
137
148
|
## Seguridad
|
|
138
149
|
|
|
139
|
-
`research-os` es una herramienta de línea de comandos que funciona principalmente
|
|
150
|
+
`research-os` es una herramienta de línea de comandos que funciona principalmente de forma local. Lee y escribe archivos dentro del directorio del paquete de investigación al que se le indica, y (cuando se utiliza `gather`) realiza solicitudes HTTP salientes para obtener las URL de origen que se proporcionan. No: ejecuta un servidor, acepta conexiones entrantes, almacena credenciales ni envía datos de telemetría. No se escriben secretos en los artefactos del paquete. Consulte [SECURITY.md](SECURITY.md) para obtener la política de notificación de vulnerabilidades.
|
|
140
151
|
|
|
141
152
|
## Estado
|
|
142
153
|
|
|
143
|
-
**v0.
|
|
154
|
+
**v0.3.2** — Publicada en npm como `@mcptoolshop/research-os@0.3.2`, el 9 de mayo de 2026. Incluye una normalización de las reclamaciones aceptadas, teniendo en cuenta la admisión para la publicación de paquetes. La verificación estricta de igualdad entre `claim-reviews.jsonl` y `pack-audit.json::accepted_claims` ha sido reemplazada por una comparación de conjuntos efectivos: las reclamaciones aceptadas son los identificadores únicos (`claim_id`) cuya última decisión de revisión canónica es "aceptada para síntesis" (la última decisión prevalece para cada `claim_id`). Los paquetes congelados cuya cuenta de auditoría heredada difiere del conjunto efectivo ahora se admiten con una advertencia en lugar de ser rechazados; el archivo de auditoría heredado se conserva tal cual (Ley 15), mientras que el manifiesto del archivo refleja la cuenta normalizada. El rechazo sigue siendo absoluto para los identificadores de reclamación fantasma, las decisiones duplicadas incompatibles y las condiciones que no son elegibles para la síntesis. Obtenido a través del Experimento 3 XRPL pack Session K: la publicación del paquete fue rechazada debido a una discrepancia real en el registro de cierre (la Sección 07 tenía 24 filas "aceptadas para síntesis", pero solo 19 identificadores únicos (`claim_id`) debido a ventanas de revisión superpuestas). 558/558 pruebas de vitest superadas. Consulte [CHANGELOG.md](CHANGELOG.md) y [`docs/pack-publish.md`](docs/pack-publish.md).
|
|
144
155
|
|
|
145
|
-
|
|
156
|
+
**v0.3.1** — Publicado en npm como `@mcptoolshop/research-os@0.3.1`, 9 de mayo de 2026. Incluye exenciones de origen con ámbito de sección (`primary_source_waiver.section_waivers[]`) y un reconocimiento por parte del revisor, de modo que una detección de "monopolio de la fuente" a nivel de sección se convierte en una advertencia visible en lugar de redirigir automáticamente todas las afirmaciones a "necesita reparación de la fuente". Obtenido mediante el experimento 3 del paquete XRPL, sesión 2: las secciones de protocolo canónico (cadenas de una sola base, especificaciones de API de jardín vallado, documentos de organismos de normalización) invirtieron la suposición de que la diversidad de editores es un indicador de la calidad de la verdad. 540/540 pruebas de vitest superadas. Consulte [CHANGELOG.md](CHANGELOG.md) y [`docs/section-scoped-waivers.md`](docs/section-scoped-waivers.md).
|
|
146
157
|
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
-
|
|
150
|
-
|
|
158
|
+
**Exenciones de origen con ámbito de sección** — Utilícelas cuando la diversidad de editores es estructuralmente incompatible con la fuente de verdad de la sección, no cuando una sección simplemente no ha logrado encontrar suficientes fuentes. Incluye un campo "razón" con control de esquema y una lista no vacía de "controles compensatorios". La política del paquete `primary_source_waiver_allowed: false` bloquea tanto las exenciones a nivel de paquete como las exenciones con ámbito de sección. El truco anterior a la v0.3.1 de `min_independent_publishers: 0` a nivel de paquete está ahora obsoleto; los paquetes congelados existentes siguen siendo válidos según sus recibos existentes. Consulte [`docs/section-scoped-waivers.md`](docs/section-scoped-waivers.md) y el [manual de operación de los paquetes de investigación](https://github.com/mcp-tool-shop-org/research-packs/blob/main/docs/operator-playbook.md).
|
|
159
|
+
|
|
160
|
+
**v0.3.0** — publicado el 2026-05-09. Se incluyó la opción `--detector <auto|heuristic|ollama-intern>` en `contradict map` (corrección F-09 de bloqueo de cadena del Experimento 3, Sesión 1, paquete XRPL). 527/527 pruebas vitest superadas. La selección del detector ahora es una opción explícita para el operador, en lugar de una variable de entorno dependiente del estado; el modo se muestra claramente en cada ejecución. Consulte [`docs/contradict-map.md`](docs/contradict-map.md).
|
|
161
|
+
|
|
162
|
+
**v0.2.0** — publicado el 2026-05-09. Se incluyeron el paquete `research-os pack publish` (Experimento 2) y la corrección del predicado de preparación del Patrón 2. 515/515 pruebas vitest superadas. Consulte [CHANGELOG.md](CHANGELOG.md). Los paquetes congelados se exportan al archivo canónico `research-packs` con un solo comando; el contrato de admisión se aplica mediante código, no mediante una lista de verificación. Consulte [`docs/pack-publish.md`](docs/pack-publish.md).
|
|
163
|
+
|
|
164
|
+
**v0.1.0** — paquete de prueba interna congelado el 2026-05-08. El paquete en `research-os-packs/research-os-spec/` (repositorio hermano) alcanzó el estado de congelación con 296 afirmaciones aceptadas en 8 secciones, 17 gestionadas, 30 anuladas por el operador, 0 bloqueadores de reparación activos, 0 contradicciones sin resolver, y todas las condiciones (`synthesis_eligible=true`) cumplidas. Seis leyes fundamentales acumuladas. Consulte [`docs/dogfood-proof.md`](docs/dogfood-proof.md) para obtener los siete hallazgos y las huellas digitales de la recepción de la congelación.
|
|
165
|
+
|
|
166
|
+
**Repositorio monorepo de paquetes de investigación** — disponible en [`mcp-tool-shop-org/research-packs`](https://github.com/mcp-tool-shop-org/research-packs) con dos paquetes iniciales. `comfyui-workflow-durability` (Experimento 1, 302 afirmaciones aceptadas, 8 secciones) y `research-os-self-dogfood` (relleno de la versión 0.1 de la prueba interna, 296 afirmaciones aceptadas, 8 secciones). Ambos paquetes PASAN `verify-pack.mjs`.
|
|
167
|
+
|
|
168
|
+
**Experimento 1 de la versión 1 (Durabilidad del flujo de trabajo de ComfyUI)** — CERRADO el 2026-05-09. Todas las 8 secciones en Terminal A, paquete congelado, archivo disponible. Consulte [`docs/experiment-1-proof.md`](docs/experiment-1-proof.md) y [`docs/roadmap.md`](docs/roadmap.md).
|
|
169
|
+
|
|
170
|
+
### Lo que la versión 0.3 no es
|
|
171
|
+
|
|
172
|
+
- No ha sido probada en condiciones reales por usuarios externos. Dos ciclos de pruebas internas han finalizado: uno autoreferencial y otro de dominio externo, y el Experimento 3 (estabilidad de la API bajo presión externa) está en curso: el paquete #2 de 3 (durabilidad del token de creador de XRPL) está congelado con 251 reclamaciones aceptadas en 7 secciones, a la espera de la admisión para la publicación del paquete en npm v0.3.2. Este ciclo ha cumplido con la bandera v0.3.0 `--detector` (bloqueador de cadena F-09), las exenciones de origen específicas de la sección (F-10/F-11, presión del protocolo canónico) y la normalización de la cuenta de reclamaciones aceptadas (F-36, borde del registro de cierre). Se necesita un ciclo más de dominio externo para completar el Experimento 3.
|
|
173
|
+
- No es un generador de síntesis. El comando `synth workspace` genera el espacio de trabajo estructurado; los humanos (o Cowork) escriben el contenido basándose en los identificadores de reclamación aceptados.
|
|
174
|
+
- No es estable en la API según la semántica de versiones. La versión v1.0.0 es un estado alcanzado, no una fecha en el calendario; consulte [`docs/roadmap.md`](docs/roadmap.md) para ver los seis experimentos que cierran esta brecha.
|
|
151
175
|
|
|
152
176
|
### Limitaciones conocidas
|
|
153
177
|
|
|
154
|
-
- **
|
|
155
|
-
- **La selección del modelo de revisión
|
|
156
|
-
- **El paquete de
|
|
178
|
+
- **El origen del extractor no es visible en la interfaz de la condición.** Una sección puede pasar la prueba de afirmaciones aceptadas mientras se basan en afirmaciones heurísticas cuando el extractor calibrado (Ollama con el modelo configurado) no está disponible. Se registra como el Experimento 4 en el plan de trabajo; la futura optimización informará las afirmaciones aceptadas por extractor y requerirá la cantidad de afirmaciones aceptadas del camino calibrado.
|
|
179
|
+
- **La selección del modelo de revisión más allá de la línea de base calibrada de `hermes-two-pass` no está resuelta.** El ciclo de prueba interna validó una configuración de revisor; los modelos alternativos necesitan su propia calibración de recuperación de fallos simulados antes de que puedan ser confiables. Experimento 5 en el plan de trabajo.
|
|
180
|
+
- **El paquete de prueba interna de la versión 0.1 utilizó `mistral-nemo:12b` para la extracción (el valor predeterminado canónico es `hermes3:8b`).** `hermes3:8b` no estaba disponible en esta plataforma durante el ciclo de la versión 0.1. La divulgación de la sustitución permanece vigente hasta que se produzca una recepción basada en hermes3; Experimento 6 en el plan de trabajo. Para los operadores en plataformas que no tienen `hermes3:8b`, establezca `OLLAMA_INTERN_MODEL` en un modelo disponible; las URL preconfiguradas para el operador y la disciplina de precisión de la consulta (consulte el manual) mitigan las alucinaciones de descubrimiento en temas ambiguos.
|
|
181
|
+
|
|
182
|
+
## Hoja de ruta para la versión 1.0
|
|
183
|
+
|
|
184
|
+
La versión 1.0 es un estado alcanzado, no una fecha de lanzamiento. Seis experimentos están pendientes entre la versión 0.1 y la 1.0: un sistema de pruebas internas ("dogfood") que no se refiere a sí mismo (actualmente en desarrollo como el paquete de durabilidad de ComfyUI), un comando `research-os pack publish` que automatiza la exportación al repositorio centralizado `research-packs` (Experimento 2, limitado por el Experimento 1 y que requiere su finalización manual), estabilidad de la API bajo presión externa, la resolución de la brecha de trazabilidad del extractor, la generalización de la calibración de los revisores más allá de `hermes-two-pass`, y una ejecución de referencia limpia en `hermes3:8b`. El Experimento 1 no estará finalizado cuando se "congele" el paquete; se completará cuando el paquete congelado se publique como el primer paquete en el repositorio centralizado `research-packs`, junto con la versión 0.1 del sistema de pruebas internas. El plan completo se encuentra en [`docs/roadmap.md`](docs/roadmap.md). La arquitectura permanece constante; la versión 1.0 profundiza en lo que la versión 0.1 demostró, en lugar de volver a abrir temas ya tratados.
|
|
157
185
|
|
|
158
186
|
## Licencia
|
|
159
187
|
|
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.
|
|
10
|
+
<a href="https://github.com/mcp-tool-shop-org/research-os/releases/tag/v0.3.2"><img src="https://img.shields.io/badge/version-0.3.2-blue" alt="version 0.3.2"></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">
|
|
@@ -24,7 +24,67 @@ Un outil en ligne de commande qui transforme un sujet ouvert en un **ensemble de
|
|
|
24
24
|
|
|
25
25
|
Ce n'est pas un générateur de rapports. Ce n'est pas un framework d'orchestration de modèles de langage (LLM). Il ne rédige pas la synthèse pour vous. Il impose les conditions dans lesquelles la synthèse peut commencer.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Les ensembles de données figés sont archivés dans [`mcp-tool-shop-org/research-packs`](https://github.com/mcp-tool-shop-org/research-packs) — et sont accessibles en direct, avec deux ensembles de données de la première version. Consultez [`docs/roadmap.md`](docs/roadmap.md) pour connaître la feuille de route de la version 1.0.
|
|
28
|
+
|
|
29
|
+
La version 0.1 a été testée en profondeur lors de deux phases de test utilisateur. La première — où "research-os" étudie sa propre spécification — a révélé sept erreurs avant la version 0.1.0, chacune nécessitant une correction de code et donnant lieu à une règle ou un modèle d'intégration. La deuxième (Expérience 1 : durabilité du flux de travail ComfyUI, 11 sessions, un domaine sans chevauchement de vocabulaire avec "research-os") a été finalisée le 2026-05-09 : l'ensemble de données figé est accessible en direct, l'application de la règle 2 est terminée via le commit `22b5dba`. La documentation de la version 0.1 est disponible dans [`docs/dogfood-proof.md`](docs/dogfood-proof.md) ; la documentation de l'Expérience 1 est disponible dans [`docs/experiment-1-proof.md`](docs/experiment-1-proof.md). Le manuel est disponible à l'adresse suivante : <https://mcp-tool-shop-org.github.io/research-os/handbook/>.
|
|
30
|
+
|
|
31
|
+
## Installation
|
|
32
|
+
|
|
33
|
+
**Prérequis :** Node.js ≥ 20.
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
npm install -g @mcptoolshop/research-os
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Pour les contributeurs qui construisent à partir du code source :
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
git clone https://github.com/mcp-tool-shop-org/research-os.git
|
|
43
|
+
cd research-os
|
|
44
|
+
npm install
|
|
45
|
+
npm run build
|
|
46
|
+
npm link
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Démarrage rapide
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
# Create a new research-pack
|
|
53
|
+
research-os init "How should X be structured?"
|
|
54
|
+
|
|
55
|
+
# Add a section
|
|
56
|
+
research-os section add 01-landscape --purpose "Map the current landscape"
|
|
57
|
+
|
|
58
|
+
# Discover and approve sources, then gather
|
|
59
|
+
research-os discover run 01-landscape
|
|
60
|
+
research-os discover approve 01-landscape --top 8
|
|
61
|
+
research-os gather 01-landscape --approved
|
|
62
|
+
|
|
63
|
+
# Run the per-section chain
|
|
64
|
+
research-os claim extract 01-landscape
|
|
65
|
+
research-os claim audit-density 01-landscape
|
|
66
|
+
research-os claim triage 01-landscape
|
|
67
|
+
research-os contradict map 01-landscape --triaged-only
|
|
68
|
+
research-os review 01-landscape --triaged-only --preset hermes-two-pass --profile hermes-two-pass
|
|
69
|
+
research-os review-promote 01-landscape --profile hermes-two-pass
|
|
70
|
+
research-os gate 01-landscape
|
|
71
|
+
research-os section report 01-landscape
|
|
72
|
+
|
|
73
|
+
# Pack-level finish
|
|
74
|
+
research-os audit
|
|
75
|
+
research-os index build --all
|
|
76
|
+
research-os cowork handoff
|
|
77
|
+
research-os synth workspace # only if handoff returned synthesis_ready
|
|
78
|
+
research-os freeze
|
|
79
|
+
|
|
80
|
+
# Export to the research-packs archive
|
|
81
|
+
research-os pack publish \
|
|
82
|
+
--to <research-packs>/packages/<name>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**Pour un exemple concret**, consultez l'ensemble de données "dogfood" situé dans `research-os-packs/research-os-spec/` : chaque fichier, chaque enregistrement, chaque disposition, chaque empreinte de "gel", le tout est stocké sur disque dans des fichiers qui ne peuvent être modifiés qu'en ajoutant des informations. Cet ensemble de données a généré le fichier `docs/dogfood-proof.md`.
|
|
86
|
+
|
|
87
|
+
**Nécessite [ollama-intern-mcp](https://github.com/mcp-tool-shop-org/ollama-intern-mcp) en cours d'exécution localement** pour l'extraction, le tri, la revue et la découverte des modèles de langage. Le modèle par défaut est `hermes3:8b`; vous pouvez le modifier en utilisant la variable d'environnement `OLLAMA_INTERN_MODEL=<modèle>`. Définissez la variable d'environnement `OLLAMA_HOST` si Ollama n'est pas exécuté sur l'adresse par défaut `localhost:11434`.
|
|
28
88
|
|
|
29
89
|
## Les 16 lois fondamentales
|
|
30
90
|
|
|
@@ -76,55 +136,6 @@ Chaque étape est une commande en ligne de commande. Chaque étape écrit des do
|
|
|
76
136
|
|
|
77
137
|
Ceci est une alternative structurée à *recherche → résumé → rapport détaillé*. La chaîne est le produit.
|
|
78
138
|
|
|
79
|
-
## Installation
|
|
80
|
-
|
|
81
|
-
**Prérequis :** Node.js ≥ 20.
|
|
82
|
-
|
|
83
|
-
```bash
|
|
84
|
-
# From source (v0.1.0 is not yet published to npm)
|
|
85
|
-
git clone https://github.com/mcp-tool-shop-org/research-os.git
|
|
86
|
-
cd research-os
|
|
87
|
-
npm install
|
|
88
|
-
npm run build
|
|
89
|
-
npm link # makes `research-os` available on your PATH
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
## Démarrage rapide
|
|
93
|
-
|
|
94
|
-
```bash
|
|
95
|
-
# Create a new research-pack
|
|
96
|
-
research-os init "How should X be structured?"
|
|
97
|
-
|
|
98
|
-
# Add a section
|
|
99
|
-
research-os section add 01-landscape --purpose "Map the current landscape"
|
|
100
|
-
|
|
101
|
-
# Discover and approve sources, then gather
|
|
102
|
-
research-os discover run 01-landscape
|
|
103
|
-
research-os discover approve 01-landscape --top 8
|
|
104
|
-
research-os gather 01-landscape --approved
|
|
105
|
-
|
|
106
|
-
# Run the per-section chain
|
|
107
|
-
research-os claim extract 01-landscape
|
|
108
|
-
research-os claim audit-density 01-landscape
|
|
109
|
-
research-os claim triage 01-landscape
|
|
110
|
-
research-os contradict map 01-landscape --triaged-only
|
|
111
|
-
research-os review 01-landscape --triaged-only --preset hermes-two-pass --profile hermes-two-pass
|
|
112
|
-
research-os review-promote 01-landscape --profile hermes-two-pass
|
|
113
|
-
research-os gate 01-landscape
|
|
114
|
-
research-os section report 01-landscape
|
|
115
|
-
|
|
116
|
-
# Pack-level finish
|
|
117
|
-
research-os audit
|
|
118
|
-
research-os index build --all
|
|
119
|
-
research-os cowork handoff
|
|
120
|
-
research-os synth workspace # only if handoff returned synthesis_ready
|
|
121
|
-
research-os freeze
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
**Pour un exemple concret**, consultez l'ensemble de données "dogfood" situé dans `research-os-packs/research-os-spec/` : chaque fichier, chaque enregistrement, chaque disposition, chaque empreinte de "gel", le tout est stocké sur disque dans des fichiers qui ne peuvent être modifiés qu'en ajoutant des informations. Cet ensemble de données a généré le fichier `docs/dogfood-proof.md`.
|
|
125
|
-
|
|
126
|
-
**Nécessite [ollama-intern-mcp](https://github.com/mcp-tool-shop-org/ollama-intern-mcp) en cours d'exécution localement** pour l'extraction, le tri, la revue et la découverte des modèles de langage. Le modèle par défaut est `hermes3:8b`; vous pouvez le modifier en utilisant la variable d'environnement `OLLAMA_INTERN_MODEL=<modèle>`. Définissez la variable d'environnement `OLLAMA_HOST` si Ollama n'est pas exécuté sur l'adresse par défaut `localhost:11434`.
|
|
127
|
-
|
|
128
139
|
## Vocabulaire
|
|
129
140
|
|
|
130
141
|
| Terme | Signification |
|
|
@@ -140,20 +151,37 @@ research-os freeze
|
|
|
140
151
|
|
|
141
152
|
## Statut
|
|
142
153
|
|
|
154
|
+
**v0.3.2** — publiée sur npm en tant que `@mcptoolshop/research-os@0.3.2`, le 2026-05-09. Inclut une normalisation des demandes d'acceptation, prenant en compte l'admission pour la publication de l'ensemble de données. La vérification stricte d'égalité entre `claim-reviews.jsonl` et `pack-audit.json::accepted_claims` est remplacée par une comparaison d'ensembles — les demandes acceptées sont des `claim_id` uniques dont la décision de révision canonique la plus récente est `accepted_for_synthesis` (la dernière décision fait foi pour chaque `claim_id`). Les ensembles de données figés dont le nombre d'audits hérités diffère de l'ensemble normalisé sont désormais acceptés avec un avertissement plutôt qu'un refus ; le fichier d'audit hérité est conservé tel quel (Règle 15), tandis que le manifeste de l'archive reflète le nombre normalisé. Le refus reste strict pour les `claim_id` fantômes, les décisions dupliquées incompatibles et les conditions qui ne permettent pas la synthèse. Ceci a été obtenu grâce à l'Expérience 3, session K, pour l'ensemble de données XRPL — la publication de l'ensemble de données a été refusée en raison d'un désaccord sur le registre de clôture (la section 07 comportait 24 lignes brutes `accepted_for_synthesis`, mais seulement 19 `claim_id` uniques en raison des fenêtres de révision des examinateurs qui se chevauchent). 558/558 tests vitest réussis. Consultez [CHANGELOG.md](CHANGELOG.md) et [`docs/pack-publish.md`](docs/pack-publish.md).
|
|
155
|
+
|
|
156
|
+
**v0.3.1** — publiée sur npm en tant que `@mcptoolshop/research-os@0.3.1`, le 2026-05-09. Inclut des clauses de renonciation spécifiques aux sections (`primary_source_waiver.section_waivers[]`) ainsi qu'une confirmation de la part des examinateurs, de sorte qu'une constatation de "monopole de la source" à l'échelle d'une section, qui est renoncée, devient une mise en garde visible plutôt qu'une redirection automatique de toutes les demandes vers `needs_source_repair`. Ceci a été obtenu grâce à l'Expérience 3, session 2, pour l'ensemble de données XRPL — les sections du protocole canonique (chaînes à fondation unique, spécifications d'API en vase clos, documents des organismes de normalisation) ont inversé l'hypothèse selon laquelle la diversité des éditeurs est un indicateur de la qualité de l'information. 540/540 tests vitest réussis à ce moment-là. Consultez [`docs/section-scoped-waivers.md`](docs/section-scoped-waivers.md).
|
|
157
|
+
|
|
158
|
+
**Clauses de renonciation spécifiques aux sections** — Utilisez-les lorsque la diversité des éditeurs est structurellement incompatible avec la source de vérité de la section, et non lorsque la section n'a simplement pas trouvé suffisamment de sources. La `raison` est appliquée par le schéma, ainsi que la présence de tableaux `compensating_controls[]` non vides. La politique de l'ensemble de données `primary_source_waiver_allowed: false` bloque à la fois les renonciation au niveau de l'ensemble de données et les renonciation spécifiques aux sections. La solution de contournement `min_independent_publishers: 0` au niveau de l'ensemble de données, qui était en vigueur avant la version 0.3.1, est maintenant obsolète ; les ensembles de données figés existants restent valides selon leurs reçus existants. Consultez [`docs/section-scoped-waivers.md`](docs/section-scoped-waivers.md) et le [guide d'utilisation de l'opérateur pour les ensembles de données](https://github.com/mcp-tool-shop-org/research-packs/blob/main/docs/operator-playbook.md).
|
|
159
|
+
|
|
160
|
+
**v0.3.0** — publiée le 2026-05-09. Introduit l'indicateur `--detector <auto|heuristic|ollama-intern>` pour la commande `contradict map` (correction F-09 du blocage de la chaîne provenant de l'Expérience 3, session 1, ensemble de données XRPL). 527/527 tests vitest réussis à ce moment-là. La sélection du détecteur est maintenant un choix explicite de l'opérateur plutôt qu'une danse complexe avec des variables d'environnement dépendantes de l'état ; le mode est annoncé de manière visible à chaque exécution. Consultez [`docs/contradict-map.md`](docs/contradict-map.md).
|
|
161
|
+
|
|
162
|
+
**v0.2.0** — publié le 2026-05-09. Distribution du paquet `research-os pack publish` (Expérience 2) et correction de la condition de préparation du modèle 2. 515 tests Vitest réussis. Consultez [CHANGELOG.md](CHANGELOG.md). Les paquets figés sont exportés vers l'archive canonique `research-packs` avec une seule commande ; le contrat d'adhésion est appliqué par le code, et non par une liste de contrôle. Consultez [`docs/pack-publish.md`](docs/pack-publish.md).
|
|
163
|
+
|
|
143
164
|
**v0.1.0** — gelée le 2026-05-08. L'ensemble de données "dogfood" situé dans `research-os-packs/research-os-spec/` (dépôt frère) a atteint l'état de "gel" avec 296 propositions acceptées réparties sur 8 sections, 17 dispositions, 30 propositions corrigées par l'utilisateur, 0 blocage de correction actif, 0 contradiction non résolue, toutes les étapes de validation indiquant `synthesis_eligible=true`. 463/463 tests Vitest réussis. Seize règles fondamentales cumulées. Consultez le fichier [`docs/dogfood-proof.md`](docs/dogfood-proof.md) pour connaître les sept découvertes et les empreintes des enregistrements de "gel".
|
|
144
165
|
|
|
166
|
+
**Monorepo de l'archive `research-packs`** — disponible à [`mcp-tool-shop-org/research-packs`](https://github.com/mcp-tool-shop-org/research-packs) avec deux paquets disponibles dès le lancement. `comfyui-workflow-durability` (Expérience 1, 302 affirmations acceptées, 8 sections) et `research-os-self-dogfood` (remplissage de la version 0.1, 296 affirmations acceptées, 8 sections). Les deux paquets passent le test `verify-pack.mjs`.
|
|
167
|
+
|
|
168
|
+
**Expérience 1 (Durabilité du flux de travail ComfyUI) — v1** — TERMINÉE le 2026-05-09. Les 8 sections sont disponibles dans le Terminal A, le paquet est figé, l'archive est en ligne. Consultez [`docs/experiment-1-proof.md`](docs/experiment-1-proof.md) et [`docs/roadmap.md`](docs/roadmap.md).
|
|
169
|
+
|
|
145
170
|
### Ce que la version 0.1 n'est pas
|
|
146
171
|
|
|
147
|
-
- Non testée en conditions réelles par des utilisateurs externes.
|
|
148
|
-
-
|
|
149
|
-
-
|
|
150
|
-
- Pas une API stable selon les règles de compatibilité sémantique. La version 1.0.0 sera publiée après que des utilisateurs externes auront validé l'interface au fil du temps.
|
|
172
|
+
- Non testée en conditions réelles par des utilisateurs externes. Deux cycles de test interne sont terminés : un auto-référentiel et un externe. L'Expérience 3 (stabilité de l'API sous pression externe) est en cours : le paquet n°2 sur 3 (durabilité des jetons de créateur XRPL) est figé avec 251 affirmations acceptées réparties sur 7 sections, en attente de l'approbation de la publication du paquet pour npm v0.3.2. Ce cycle a permis d'obtenir le drapeau `--detector` v0.3.0 (F-09, bloqueur de chaîne), les exemptions de source spécifiques aux sections v0.3.1 (F-10/F-11, pression du protocole canonique) et la comptabilité normalisée des affirmations acceptées v0.3.2 (F-36, jointure du grand livre de clôture). Un paquet supplémentaire de domaine externe est nécessaire pour la clôture de l'Expérience 3.
|
|
173
|
+
- Ne génère pas de texte. La commande `synth workspace` génère l'espace de travail structuré ; les humains (ou Cowork) rédigent le texte en fonction des identifiants des affirmations acceptées.
|
|
174
|
+
- La stabilité de l'API n'est pas garantie selon la version sémantique. La version 1.0.0 est un état atteint, et non une date calendaire. Consultez [`docs/roadmap.md`](docs/roadmap.md) pour connaître les six expériences qui permettent d'atteindre cet objectif.
|
|
151
175
|
|
|
152
176
|
### Limitations connues
|
|
153
177
|
|
|
154
|
-
- **L'origine de l'extracteur n'est pas visible au niveau de la jointure.** Une section peut passer le seuil
|
|
155
|
-
- **
|
|
156
|
-
- **Le
|
|
178
|
+
- **L'origine de l'extracteur n'est pas visible au niveau de la jointure.** Une section peut passer le seuil des affirmations acceptées tout en s'appuyant sur des affirmations heuristiques lorsque l'extracteur calibré (Ollama avec le modèle configuré) n'est pas disponible. Cela est enregistré comme l'Expérience 4 dans la feuille de route ; les améliorations futures indiqueront les affirmations acceptées par extracteur et exigeront le nombre d'affirmations acceptées du chemin calibré.
|
|
179
|
+
- **La sélection du modèle de révision au-delà de la base de référence calibrée `hermes-two-pass` n'est pas résolue.** Le cycle de test interne a validé une configuration de réviseur ; les modèles alternatifs doivent être calibrés avec un rappel de défaillance simulée avant de pouvoir être utilisés. C'est l'Expérience 5 dans la feuille de route.
|
|
180
|
+
- **Le paquet de test interne v0.1 utilisait `mistral-nemo:12b` pour l'extraction (le modèle par défaut canonique est `hermes3:8b`).** `hermes3:8b` n'était pas disponible sur cette machine pendant le cycle v0.1. Cette information est indiquée jusqu'à ce qu'une version basée sur hermes3 soit disponible. C'est l'Expérience 6 dans la feuille de route. Pour les opérateurs utilisant des machines sans `hermes3:8b`, définissez `OLLAMA_INTERN_MODEL` sur un modèle disponible ; les URL pré-configurées par l'opérateur et la discipline de précision des requêtes (voir le manuel) atténuent les hallucinations de découverte sur des sujets ambigus.
|
|
181
|
+
|
|
182
|
+
## Feuille de route vers la version 1.0
|
|
183
|
+
|
|
184
|
+
La version 1.0 est un état atteint grâce aux progrès réalisés, et non une date de sortie. Six expérimentations sont nécessaires entre la version 0.1 et la version 1.0 : une version interne non axée sur les fonctionnalités existantes (actuellement en cours de développement avec le pack de durabilité pour ComfyUI), une commande `research-os pack publish` qui automatise l'exportation vers le référentiel unique `research-packs` (Expérience 2, limitée par la finalisation manuelle de l'Expérience 1), la stabilité de l'API sous pression externe, la résolution du problème de traçabilité des extractions, l'amélioration de la calibration des examinateurs au-delà de `hermes-two-pass`, et une exécution de référence propre sur `hermes3:8b`. L'Expérience 1 ne sera pas finalisée au moment de la version stable – elle se terminera lorsque la version stable sera distribuée comme premier paquet dans le référentiel unique `research-packs`, en complément de la version interne 0.1. Le plan complet est disponible dans [`docs/roadmap.md`](docs/roadmap.md). L'architecture reste inchangée ; la version 1.0 approfondit ce que la version 0.1 a démontré, plutôt que de réintroduire des éléments.
|
|
157
185
|
|
|
158
186
|
## Licence
|
|
159
187
|
|