Skip to content

feat(B.8): paridad GUI/servicio/CLI verificada por ejecución + alias canónicos en resultado GUI - #8

Merged
klssxx merged 1 commit into
mainfrom
feat/b8-parity
Sep 25, 2026
Merged

klssxx merged 1 commit into
mainfrom
feat/b8-parity

Conversation

@klssxx

@klssxx klssxx commented Sep 25, 2026

Copy link
Copy Markdown
Owner

Eje B — B.8

Misma entrada + target + perfil ⇒ mismo IR semántico, mismos artefactos compilados y mismo quality_report desde los tres puntos de entrada — verificado por ejecución (7 tests en tests/test_parity_b8.py), no declarado.

Hallazgos corregidos

  1. Deriva de esquema en compile_for_gui: el NSL elegido solo se exponía como nsl (no chosen_nsl), el prompt solo como optimized (no optimized_prompt), y los metadatos de perfil/nivel (applied_profile, target, chosen_level, context_loss_report…) faltaban en el nivel superior. Fix aditivo: alias canónicos a los mismos objetos; las claves legacy que la GUI consume quedan intactas.
  2. El CLI ya enruta por compile_prompt (entrada canónica); el test prueba que sus artefactos exportados son idénticos a los del servicio (salvo la línea ID= de traza) y que el JSON híbrido lleva el IR extendido B.2 de extremo a extremo.

Verificación final del Eje B

Las 6 rutas críticas de A.7 re-ejecutadas contra los resultados enriquecidos (quality_report/four_layers/policy_check/clarification): 6/6 VERIFIED_BY_EXECUTION. Suite: 304 passed + 10 subtests, ruff limpio.

… the GUI result

B.8: same input + target + profile must yield the same semantic IR, the
same compiled artifacts and the same quality_report from every entry
point — verified by execution, not declared (tests/test_parity_b8.py,
7 tests).

Hallazgos de la comparación, corregidos:

1. compile_for_gui's result schema had drifted from compile_prompt's
   canonical one: chosen NSL was only exposed as 'nsl' (not
   'chosen_nsl'), the execution prompt only as 'optimized' (not
   'optimized_prompt'), and the profile/level metadata
   (applied_profile, requested_profile, target, requested_level,
   chosen_level, context_loss_report) was missing from the top level —
   unreachable for parity checks and exports. Fixed ADDITIVELY: the
   canonical names are now aliases to the same objects; every legacy
   key the GUI consumes stays untouched, so no GUI behaviour changes.

2. The CLI already routes through compile_prompt (the canonical entry
   point); the parity test now proves its exported artifacts
   (canonical_nsl.nsl, optimized_prompt.txt) are ID-line-identical to
   the service's, and that the exported hybrid JSON carries the B.2
   extended IR (ambiguities/confidence) end to end.

Also re-executed the six A.7 critical-path routes against the enriched
results (quality_report/four_layers/policy_check/clarification now in
every result): all six VERIFIED_BY_EXECUTION. Suite: 304 passed +
10 subtests, ruff clean.
@klssxx
klssxx merged commit 9c5cc86 into main Sep 25, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant