Skip to content

feat(curate): v4.4.0 — /cx-curate semantic curator, /cx-downvote judgment automated#89

Merged
fermonterom merged 2 commits into
mainfrom
feat/v4.4.0-cx-curate
Jul 5, 2026
Merged

feat(curate): v4.4.0 — /cx-curate semantic curator, /cx-downvote judgment automated#89
fermonterom merged 2 commits into
mainfrom
feat/v4.4.0-cx-curate

Conversation

@fermonterom

Copy link
Copy Markdown
Owner

Qué añade

/cx-curate — la mitad LLM del zero-touch. Automatiza el juicio que hacía el humano (y el /cx-downvote manual): qué laws son generales, cuáles valen menos y bajan al pool de instincts, qué candidatos merecen hueco, qué instincts son ruido.

Criterios escritos (extracto)

  • KEEP: principios de conducta universales o reglas cortas que previenen fallos caros/irreversibles.
  • DEMOTE: específicas de stack, redundantes con ~/.claude/CLAUDE.md o una skill instalada, o cero impacto tras 30d. Listón más alto para laws sin YAML de respaldo.
  • PROMOTE: solo conocimiento sin momento de disparo fiable — hallazgo de la auditoría de 29 agentes de hoy: todos los candidatos top fueron refutados porque ya viven como instincts 0.99 con trigger determinista (mejor canal que una law).
  • DOWNVOTE: acciones vacías, triggers muertos, datos obsoletos, ruido > útil.

Mecánica

  • Presupuestos duros del engine: máx 2 demotes + 2 promotes + 8 downvotes por pasada, suelo de confianza 0.30, laws <30d intocables. Todo vía funciones ya probadas (cascada v4.3.1, swap, CLI downvote), logueado y reversible.
  • Cadencia semanal (.last-curate); el banner [CURATE] due de SessionStart ES el disparador — Claude lo ejecuta en sesión sin preguntar. Cero intervención humana; /cx-downvote queda como veto manual.
  • Engine: CURATE_*, apply_confidence_downvote() (@_write_locked, floor-clamped), curate_snapshot() + CLI curate-snapshot/downvote.
  • De paso: core/claudemd-section.md llevaba la lista v3 completa desde v4.0.0 — refrescado al set activo v4; test_integrity ahora valida ese contrato.

Validación

  • Implementado por 3 subagentes paralelos + verificador de integración (coherencia de contratos engine↔spec↔banner comprobada símbolo a símbolo).
  • Validado el mismo día por la auditoría semántica de 29 agentes que recompuso la constitución en vivo: 6 demotes, 0 promotes, 10 downvotes, cap 15/15 → 9/15.
  • Tests: test_curate 6/6 (nuevo), test_session_start 11→14, batería completa en verde (integrity 14, security 9, dream 40, distill_v4 12, distill_engine 46, law_tier 14, runner 10).

🤖 Generated with Claude Code

fermonterom and others added 2 commits July 5, 2026 16:43
…ment automated

The LLM half of zero-touch. Claude now performs the semantic judgment
that used to be the human's: which laws are general, which have less
value and belong in the instinct pool, which candidates deserve a slot.

- commands/cx-curate.md: weekly pass with written criteria (KEEP/DEMOTE
  by generality + redundancy vs CLAUDE.md/skills + value-per-token;
  PROMOTE only knowledge with no reliable trigger moment — audit
  finding: a 0.99 trigger-gated instinct beats a law; DOWNVOTE broken/
  noisy instincts). Hard engine budgets: 2 demotes, 2 promotes, 8
  downvotes per pass, floor 0.30, laws <30d untouchable. All actions
  via engine functions (v4.3.1 cascade demote, swap, downvote CLI).
- distill_engine.py: CURATE_* constants, apply_confidence_downvote(),
  curate_snapshot() + CLI curate-snapshot/downvote, curate_due()/
  touch_curate_marker() on .last-curate.
- session-start.py: '[CURATE] due' banner (>7d) — the banner is the
  trigger, Claude runs it in-session without asking. Single stat,
  never raises.
- core/claudemd-section.md refreshed to the v4 active set (stale with
  the full v3 list since v4.0.0); active commands 7->8 everywhere;
  test_integrity now validates the active-set contract.

test_curate new 6/6, test_session_start 11->14, integrity/security/
dream/distill_v4/distill_engine/law_tier/runner green.

Implemented by 3 parallel subagents + integration verifier per
operator request; validated same-day by the 29-agent semantic audit
(6 demotes, 0 promotes, 10 downvotes, cap 15/15 -> 9/15).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… v4 active set

CI caught what the local battery missed (test_install not in the
pre-push subset): the installed-commands count was pinned to 24 and
two CLAUDE.md assertions grepped for cx-dream, which the refreshed
core/claudemd-section.md no longer advertises (legacy stubs are not
listed since v4.4.0). Now 25 files expected and cx-curate is the
advertised-set witness. 44/44 locally.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@fermonterom
fermonterom merged commit be45ca6 into main Jul 5, 2026
11 checks passed
@fermonterom
fermonterom deleted the feat/v4.4.0-cx-curate branch July 5, 2026 14:52
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