Releases: nForma-AI/nForma
Releases · nForma-AI/nForma
Release list
v0.44.1
What's Changed
- fix(hooks): prevent circuit breaker false positives on deliberate rollbacks by @jobordu in #195
- fix(quorum): preflight resolves spawn target from mainTool — stop false-dead fleet (#196) by @jobordu in #207
- fix(quorum): single-source providers.json + spawn-target resolvers (#197) by @jobordu in #216
- fix(quorum): no require side effects from run-prism (#198) by @jobordu in #212
- fix(formal): detect Alloy 6 counterexamples via receipt.json, not dead regex (#199) by @jobordu in #214
- fix(install): install unified-mcp-server.mjs to nf-bin and root MCP slots there (#200) by @jobordu in #211
- fix(quorum): unify provider semaphores, async wait, atomic failures.json (#201) by @jobordu in #213
- fix(quorum): pass --round and drop 5 unread dispatch flags (#202) by @jobordu in #210
- fix(quorum): correct verdict vocab/anchoring, cap traces, fix compaction (#203) by @jobordu in #215
- fix(quorum): fail-closed on malformed --remaining-rounds (#204) by @jobordu in #208
- fix(quorum): resolve scoreboard cooldown path from --cwd basis (#205) by @jobordu in #209
- fix(quorum): key cache on dispatched roster; budget-bound preflight (#206) by @jobordu in #217
- fix(quorum): close #218 follow-ups — SCBD requirements + wire deferred providers reads by @jobordu in #219
- fix(install): migrate mcpServers args→nf-bin in the empty-source branch (#200 regression) by @jobordu in #223
- feat(statusline): line-1 quorum indicator + background self-refresh by @jobordu in #222
- feat(statusline): actionable quorum indicator — show the fix command when slots are down by @jobordu in #224
- feat(statusline): tools on line 1 + honest River recency indicator by @jobordu in #225
- fix(coderlm): filter docs/prose files out of caller results by @jobordu in #226
- fix(hooks): eval-guard skips inline node evals inside quoted args by @jobordu in #227
- fix(tools): clamp progress bar fill so >100% completion doesn't crash by @jobordu in #228
- fix(solve): stop auto-commit from polluting main and leaking local snapshots by @jobordu in #229
- fix(tools): nf:tokens reads canonical telemetry path (was always "no data") by @jobordu in #230
- fix(coderlm): /nf:coderlm queries call createAdapter() (were throwing) by @jobordu in #231
- fix(observe): drop invalid url field from gh release list (silent data loss) by @jobordu in #233
- fix(skills): correct stale MCP worker tool names (debug + quorum-test) by @jobordu in #232
- fix(portability): drop hardcoded author home paths from skills + lint guard by @jobordu in #234
- fix(tools): find-phase resolves archived phases (one resolution path) by @jobordu in #236
- fix(cli): --help guards + valid --json on empty slots (3 dogfooding bugs) by @jobordu in #235
- fix(mcp): embedded-JS bugs in mcp-setup + mcp-repair skills by @jobordu in #237
- fix(solve-classify): --force via env, not a trailing CLI arg (F21) by @jobordu in #238
- fix(skills): update.md migrate flag + queue.md quote-injection (F29, F46) by @jobordu in #240
- fix(mcp-update): classify node slots by real .git root, not two-dirs-up (F36) by @jobordu in #241
- fix(skills): formal-test-sync safe modes + session-insights/reapply-patches/link-daintree papercuts (F22, F11, F40, F41) by @jobordu in #242
- fix(roadmap/health): parse checklist phase format; collapse W007 spam (F8, F3) by @jobordu in #243
- fix(mcp-setup): pass env BEFORE node, not after — process.env was undefined (F1) by @jobordu in #245
- fix(hooks): eval-guard skips inline evals inside heredoc bodies (F2b) by @jobordu in #239
- fix(skills): sync-baseline --dry-run + pr-resolve/gate-c/review-req correctness (F30, F32, F4b, F13) by @jobordu in #244
- feat(health): detect-only requirements staleness reporter (F14) by @jobordu in #247
- fix(test): de-flake CB/prompt hook suites under loaded CI (F6, CB-TC9) by @jobordu in #246
- fix(audit/mcp): payload-audit precision + mcp-set-model allowlist (F4a, F4c, F38) by @jobordu in #248
- feat(lint): skill-authoring standards gate — inline-eval placement (Rule 5) + MCP tool names (Rule 6) by @jobordu in #249
- fix(tokens): emit valid JSON from /nf:tokens --json on empty data (edge-path F47) by @jobordu in #250
- fix(nf-tools): clean errors for bad --fields / config-set args (edge-path F49) by @jobordu in #251
- fix(skills): guard skill state-file reads against malformed/missing JSON (edge-path F48) by @jobordu in #252
- fix(nf-tools): conflict-marker detection in validate + main() catch backstop (edge-path F50) by @jobordu in #253
- fix(lint+skills): flag quoted arg-after-eval + fix the 6 masked instances (edge-path F51) by @jobordu in #254
- feat(lint): CHANGELOG section-dedup tool + gate; consolidate Unreleased by @jobordu in #255
- fix(hooks): stop nf-stop auto-committing formal artifacts onto branches (self-pollution) by @jobordu in #256
- fix(quorum): cache Layer-1 binary probes + consolidate two divergent helpers by @jobordu in #257
- feat(lint): Rule 7 — gate unguarded state-file parses in skills (F47/F48 class) by @jobordu in #258
- fix(nf-tools): stop phase-remove corrupting ISO dates + collapsing phase numbers by @jobordu in #259
- fix(solve): add CLI entry blocks so debt-bridge + baseline-drift actually run (Batch 2) by @jobordu in #260
- fix(requirements): shape-guard the requirements/invariant validators (Batch 3a) by @jobordu in #261
- fix(proximity/resolve): guard pipeline parses + stop resolve writing garbage (Batch 3b) by @jobordu in #262
- fix(observe/polyrepo): shape-guard observe pipeline + polyrepo loader (Batch 3c) by @jobordu in #263
- fix(mcp-update): extract npm package as last non-flag arg, not args[last] (Batch 4) by @jobordu in #264
- fix(nf-tools): close 4 silent-success / path-resolution gaps (Batch 5) by @jobordu in #265
- fix(coderlm/install): portable-path robustness (Batch 6) by @jobordu in #266
- fix(plan-phase/quick/cli): contain formal-scope-scan SIGABRT + falsy-zero (Batch 7) by @jobordu in #267
- fix(scoreboard): enforce verdict validation + fix vote-recording flag contract (Batch 8) by @jobordu in #268
- fix(security/map-codebase): widen secret scan to catch modern sk- keys (Batch 9) by @jobordu in #269
- fix(verify-work): stop auto-verifying with zero real tests run (Batch 9b) by @jobordu in #270
- fix(solve/formal): discriminate dtoc cache key + guard formal-loop null deref (Batch 10) by @jobordu in #271
- fix(hooks): stop PreCompact emitting harness-invalid output; relay continuation via SessionStart by @jobordu in #272
- fix(hooks): detect source↔dist drift in verify-hooks-sync; resync stale circuit-breaker by @jobordu in #273
- feat(quorum): add antigravity (agy) as a quorum CLI family by @jobordu in #274
- fix(quorum): canonical args_template fallback — stop all slots crashing on missing field by @jobordu in #275
- feat(quorum): per-slot stall_timeout_ms — stop false-killing slow-bursty models by @jobordu in #276
- harden(quorum): close 8 adversarial edge-case gaps in dispatch + provider plumbing by @jobordu in #277
- harden: secrets/env + quorum-dispatch + MCP server — close a credential leak, 5 injection vectors, and fail-open DoS gaps by @jobordu in #278
- harden(hooks): close quorum-gate bypasses + oscillation mis-detection in nf-s...
v0.44.0
What's Changed
- Release v0.44.0 by @jobordu in #155
- fix(link-daintree): always register health_check + smoke-probe new slots by @jobordu in #158
- fix(link-daintree): make fan-out idempotent (canonical vanilla + preserve metadata on install) by @jobordu in #159
- feat(pr-resolve): intelligent bot thread evaluation by @jobordu in #160
- fix(mcp/install): resolve CLI from mainTool when cli is null; self-heal mainTool by @jobordu in #161
- fix(mcp): auto-fall-back to user-installed providers.json; backfill UNIFIED_PROVIDERS_CONFIG by @jobordu in #162
- fix(install): backfill UNIFIED_PROVIDERS_CONFIG when repo source is empty by @jobordu in #163
- fix(quorum): resolve CLI from mainTool when cli is null (call-quorum-slot) by @jobordu in #164
- fix(quorum): prefer slash-path providers.json so Daintree slots are visible by @jobordu in #165
- fix(mcp-status): read scoreboard from correct path by @jobordu in #166
- chore(quorum/debates): archive May 03–13 quorum reliability debates by @jobordu in #178
- chore(quorum): remove dead CCR code paths after ccr-* fleet retirement by @jobordu in #177
- fix(quorum/link-daintree): attribute fan-out slots to their actual upstream by @jobordu in #179
- fix(quorum): backport CLI fallback to probe-quorum-slots by @jobordu in #180
- feat(skills): worktree cleanliness pre-flight + nf:pr-resolve skill by @jobordu in #181
- fix(quorum): replace truthy gate in detectInstalledProviders by @jobordu in #183
- fix(quorum/link-daintree): store API tokens as ${VAR} placeholders, not plaintext by @jobordu in #182
- fix(autopilot): trust server state over gh exit code on merge by @jobordu in #185
- fix(quorum/link-daintree): persist fan-out preset metadata to install-immune store by @jobordu in #184
- fix: consolidate providers.json to nf-bin/ path (closes #167) by @jobordu in #186
- fix(quorum): replace HTML-comment FALLBACK_CHECKPOINT with structured file marker by @jobordu in #188
- fix(quorum): self-heal stale provider-concurrency semaphore locks (#176) by @jobordu in #187
- fix(quorum): model correlated provider failures in early-escalation gate by @jobordu in #190
- feat(quorum): empirical score delta calibration by @jobordu in #189
- feat(quorum): add min_live_voters floor for thin-consensus safety by @jobordu in #192
- fix(mcp): guard unified-mcp-server spawn target against null CLI by @jobordu in #193
- chore(release): 0.44.0 by @jobordu in #194
Full Changelog: v0.43.1...v0.44.0
v0.43.1
What's Changed
- fix(link-daintree): correct family-gate fallback in fan-out import by @jobordu in #153
- chore(release): 0.43.1 by @jobordu in #154
Full Changelog: v0.43.0...v0.43.1
v0.43.0
What's Changed
- ci: split lint into separate job for branch protection by @jobordu in #117
- fix: salvage PR #45 — formal spec fixes, config rename, orchestrator slot family by @jobordu in #118
- docs: add standalone onboarding prompt by @jobordu in #119
- refactor(formal-loops): migrate all consumers to shared convergent loops by @jobordu in #120
- fix(security): add gitleaks guard to pre-commit hook by @jobordu in #121
- ci: add Socket.dev supply-chain security and harden .gitignore by @jobordu in #122
- ci: enable CodeRabbit auto-review and disable request_changes_workflow by @jobordu in #123
- fix(debug): improve Loop 2 fix generation prompt and iteration budget by @jobordu in #134
- ci: add Socket Security to required branch protection by @jobordu in #135
- feat: PR merge-readiness autopilot script by @jobordu in #137
- feat(statusline): show quorum-slot responsiveness by @jobordu in #141
- fix(pr-merge-autopilot): treat skipping checks as non-blocking by @jobordu in #143
- feat(link-canopy): bidirectional fleet sync — Daintree presets ↔ nForma slots (#138) by @jobordu in #142
- feat(pr-merge-autopilot): parallelize thread resolution with check polling by @jobordu in #145
- chore(link-canopy): MD040 lint sweep by @jobordu in #144
- test(statusline): add buildSlotsLine coverage by @jobordu in #146
- fix(install): preserve user-customized providers.json across installs by @jobordu in #148
- chore(providers): retire ccr-1..ccr-6 from default fleet by @jobordu in #147
- fix(install): sync providers.json from ~/.claude.json when repo file is empty by @jobordu in #150
- Release v0.43.0 by @jobordu in #151
Full Changelog: v0.42.6...v0.43.0
v0.42.6
v0.42.5
What's Changed
Full Changelog: v0.42.4...v0.42.5
v0.42.4
What's Changed
- feat(solve): integrate Repowise intelligence, fix coderlm lifecycle, add auto-commit by @jobordu in #96
- feat: create 6 human phase skills (nf-idea, nf-plan, nf-build, nf-ship, nf-debug, nf-observe) by @jobordu in #99
- feat(solve): implement real impact tracking for solve skill by @jobordu in #98
- chore(repowise): ignore co-change and hotspot caches by @jobordu in #100
- feat(issue-101): add nf:harden adversarial hardening loop skill by @jobordu in #102
- feat(solve): add --no-coderlm flag (21× benchmark speedup) by @jobordu in #104
- fix(solve): fix benchmark detection gaps — 20.4% → 35%+ (issue #105) by @jobordu in #106
- ci: integrate nf-benchmark submodule into CI pipeline by @jobordu in #109
- ci(benchmark): block PRs on regression, auto-commit improved baseline by @jobordu in #111
- release: 0.42.4-rc.1 — Adversarial Hardening by @jobordu in #112
- release: 0.42.4 — Adversarial Hardening by @jobordu in #113
Full Changelog: v0.42.3...v0.42.4
v0.42.3
What's Changed
- feat: fully integrate River ML Q-learning for quorum slot delegation (#73) by @jobordu in #75
- feat(issue-77): standardize tech debt as required engineering tasks by @jobordu in #78
- chore(release): 0.41.18 by @jobordu in #79
- refactor(commands): rename agent slots + mcp-restart broken mode by @jobordu in #80
- feat(scope-guard): activate nf-scope-guard PreToolUse hook — closes #82 by @jobordu in #83
- feat: integrate coderlm adapter and graph-driven computeWaves into nf:solve by @jobordu in #63
- fix: close issue #84 baseline provenance advisory by @jobordu in #85
- fix: init quick race condition + gsd→nf rename (closes #81) by @jobordu in #91
- release: v0.42.3-rc.1 Repowise Intelligence Integration by @jobordu in #92
- release: v0.42.3 by @jobordu in #95
Full Changelog: v0.41.17...v0.42.3