You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Per-entity load-bearing-claim verification — before synthesis, the orchestrator re-confirms each main entity's single most decision-relevant claim (current architecture / conflict-resolution model / maturity / status) against the actual current text of that entity's highest-tier primary / first-party source — never a competitor's description or a researcher's paraphrase — and persists any correction as normal per-strand evidence. The synthesizer enforces the same rule and lowers confidence when only a secondary/competitor source backs such a claim.
Version strings are not maturity — a bare semver no longer reads as stability/GA; the release channel / dist-tag (alpha/beta/rc/stable) and the project's own roadmap/status language outrank it, and any discrepancy is stated explicitly.
Recency widened from figures to architecture — the recency self-check now also catches an entity with a rewrite, major-version transition, acquisition, or license change (one targeted "what changed in the last ~12 months" search) and feeds the finding back before synthesis.
Fixed
The SDK install is now self-contained. The wheel bundles the shared plugin/ core (agents + research-method skill) at cc_research/_core/plugin/, so pipx install / pip install of the SDK works from any directory; previously only an editable install (pip install -e) could locate the core. coreloader prefers the packaged copy and still falls back to the repo layout for development.
The synthesizer no longer silently misses late strands. It now has Glob and discovers every sources-*.jsonl / claims-*.jsonl itself (the orchestrator's strand list is a hint), matching what the Stop-hook audit already globs — wave-2, outlook, and load-bearing-claim correction strands can no longer be dropped.
The Stop-hook audit is session-scoped (still fail-open). A run whose evidence files are all older than a staleness window is treated as abandoned, so an earlier unfinished run can't block an unrelated later turn; and a plan-only run resumed past planning (sources present) is now correctly audited for a report.
--budget 0 is honored as a real $0 cap and labeled correctly in the banner (was shown as "unlimited").
SDK resume restores the run's stored budget / max_turns / max_waves from meta.json instead of reverting to defaults; an explicit flag overrides and is persisted.
Docs / tests
Clarified that ≤ 8 tool calls per researcher is a self-imposed budget while maxTurns: 8 is a turn-cap backstop (it caps agentic turns, not tool calls). Corrected the SDK install ordering in the READMEs. Added unit tests for auth credential resolution + env scrubbing, frontmatter parsing, and the citation audit.
Unchanged
The in-body [#<id>] citation sigil and what the Stop-hook audit checks, the per-strand file set / plan.md / meta.json / report.md substrate, the budget rails, the aim-wide / independence rules, and the v1.1 citation-style / TodoWrite / Frame / outlook / recency machinery.