Skip to content

feat(consensus): baya consensus command + site - #34

Merged
juliomatcom merged 7 commits into
mainfrom
feat/consensus
Sep 7, 2026
Merged

feat(consensus): baya consensus command + site#34
juliomatcom merged 7 commits into
mainfrom
feat/consensus

Conversation

@juliomatcom

@juliomatcom juliomatcom commented Sep 7, 2026

Copy link
Copy Markdown
Owner

Closes #33

Summary

Adds baya consensus — a second command that puts one artifact (a spec, a diff, or a plain question) in front of several provider CLIs, has them review it independently and blind, and reconciles their findings round by round until nothing blocking is left.

  • Engine (src/consensus/): pass 0 classification + criteria, blind fan-out to reviewers, per-reviewer ledgers, moderator reconcile loop, stall/round-ceiling stop, access postures.
  • CLI (src/cli/consensus.ts, args, help, spinner): baya consensus <file|prompt> --providers … [--rounds …] [--kind …] [--tools …], confirm gate.
  • Manifest/schema helpers and a JSON-schema builder for provider structured output.
  • Report UI (src/ui/consensus-report.ts, block.ts): final document, rejected findings, unresolved disagreements.
  • Docs: wiki-llm/consensus.md, specs/002-ai-consensus/spec.md, wiki-llm/cli.md updates.
  • Site: dedicated /consensus page with a plain-language flow diagram, a Mermaid component and shared diagram sources, docs page split into per-topic sections, consensus wired into nav / features / FAQ / sitemap, README trimmed.

Test plan

  • npm test — unit + integration suites for the engine, ledger, prompt, schemas, report, CLI gate, and interrupt handling.

🤖 Generated with Claude Code

juliomatcom and others added 2 commits September 6, 2026 23:41
Add a dedicated /consensus marketing page with a plain-language flow
diagram, and a Mermaid component plus shared diagram sources. Break the
monolithic docs page into per-topic sections. Wire consensus into the
nav, features, FAQ, and sitemap. Trim the README and refresh wiki-llm
conventions/index.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@socket-security

socket-security Bot commented Sep 7, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addedlog-update@​8.0.010010010083100
Addedmermaid@​11.17.29810010096100

View full report

@socket-security

socket-security Bot commented Sep 7, 2026

Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn High
Obfuscated code: npm robust-predicates is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: site/package-lock.jsonnpm/mermaid@11.17.2npm/robust-predicates@3.0.3

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/robust-predicates@3.0.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

juliomatcom and others added 5 commits September 7, 2026 11:27
Add needs_draft to ConsensusCriteria fixtures, add criterion_id to Change
fixtures, drop criterion_id from Finding fixtures (not a Finding field),
and pass a ColorMode string to createTheme.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
The path and the nav label now say "AI Consensus", which reads better as
what the command does. Docs sidebar and section heading follow; the
#consensus anchor id is unchanged so existing deep links still resolve.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Link previews for the ai-consensus page now show a 1200x630 card that
redraws the "How the debate runs" flow instead of the generic site card.
pageMetadata takes optional image/imageAlt overrides; the card is a
committed PNG regenerated by scripts/generate-consensus-og.mjs.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…e report

The producing-run report cut each reviewer's answer to its opening line and
dropped straight into `spend`, so the thing the run exists to deliver was
gone. Now it prints every reviewer's last answer in full, wrapped; the
stop-reason line is green on convergence; `spend` closes with the run's
wall-clock time; and the bare document goes to stdout only when piped.

The gate lists reviewers on one line as `[model, model, …]`, model names
only, falling back to the provider id when unpinned.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@juliomatcom juliomatcom self-assigned this Sep 7, 2026
@juliomatcom
juliomatcom merged commit baaac31 into main Sep 7, 2026
4 checks passed
@juliomatcom
juliomatcom deleted the feat/consensus branch September 7, 2026 09:58
@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown

🎉 This PR is included in version 1.9.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Multi-Provider Debate & Alignment Engine

1 participant