Skip to content

Phase 1.2: design diagnostics + 1.1.5 surfaced#2

Merged
Gimpleberry merged 2 commits into
mainfrom
phase-1.2-design-diagnostics
Apr 28, 2026
Merged

Phase 1.2: design diagnostics + 1.1.5 surfaced#2
Gimpleberry merged 2 commits into
mainfrom
phase-1.2-design-diagnostics

Conversation

@Gimpleberry
Copy link
Copy Markdown
Owner

  • diagnose_cbc_design() with MNL D-efficiency under uniform priors
  • QUALITY_GATE_MAX_LEVEL_IMBALANCE promoted to shared.py per Tenet 1
  • Renames n_dominated -> n_duplicate alternatives (honest naming)
  • Production D-eff ~0.38 below 0.85 gate; sentinel test asserts the failure with docstring explaining the 1.1.5 fix path
  • 25+ new tests

Summary

Changes

  • path/to/file.py — what changed and why

Linked work

  • Closes: BACKLOG item 1.2 (design diagnostics)
  • Backlog: Phase 1 — CBC core, item 1.2; surfaces new 1.1.5
  • ADR: None — no architectural change; conforms to existing ADR-005

Validation checklist (Tenet 5)

  • 1. Lint — ruff clean on every modified file
  • 2. shared.py uniqueness — no symbol duplicated outside shared.py
  • 3. Encoding sweep — no non-ASCII in Python source
  • 4. Plugin registry — every entry has start()/stop()
  • 5. Import chain — no circular imports
  • 6. Lifecyclemain.py --check passes
  • 7. Docs present — README/CHANGELOG/DECISIONS/BACKLOG/PROJECT_KNOWLEDGE
  • 8. Config validkai validate-taxonomy passes
  • 9. Unit tests — all green
  • 10. Integration bootmain.py --boot-order works

scripts/validate.sh summary:

Passed: __ / 10

Documentation updated

  • CHANGELOG.md entry added under appropriate version
  • PROJECT_KNOWLEDGE.txt updated if architecture or folder map changed
  • DECISIONS.md ADR added if this is a non-trivial architectural choice
  • BACKLOG.md updated (phase items moved/completed/added)
  • In-app Help section added/updated if user-facing behavior changed

Screenshots / log excerpts

N/A — no UI or user-facing output changes.

Risk + rollback plan

Diagnostic correctness change. The production sentinel test
intentionally asserts a gate failure (D-eff ~0.38 vs 0.85 threshold)
with a docstring explaining the path forward via BACKLOG 1.1.5.
No downstream consumers depend on the diagnostic output yet.
Revert is safe: restores the NotImplementedError stub.

- diagnose_cbc_design() with MNL D-efficiency under uniform priors
- QUALITY_GATE_MAX_LEVEL_IMBALANCE promoted to shared.py per Tenet 1
- Renames n_dominated -> n_duplicate alternatives (honest naming)
- Production D-eff ~0.38 below 0.85 gate; sentinel test asserts the
  failure with docstring explaining the 1.1.5 fix path
- 25+ new tests
CI's ruff format --check caught format drift that validate.sh missed
(item #1 still only runs ruff check, per BACKLOG follow-up captured
during Phase 1.1 rollout). Pure whitespace; no logic changes.
@Gimpleberry Gimpleberry merged commit 6828486 into main Apr 28, 2026
4 checks passed
@Gimpleberry Gimpleberry deleted the phase-1.2-design-diagnostics branch April 28, 2026 02:53
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