Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions PROJECT_STATUS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Project Status

Last updated: 2026-09-23
Last updated: 2026-09-25

## Why / What

Expand Down Expand Up @@ -51,11 +51,11 @@ separately approved safety design justify renewed investment.
- v1.14.3 includes the post-v1.14.2 code-health and native qualification
repairs. Subsequent documentation-only bookkeeping does not imply a newer
desktop release; release truth remains the published `v1.14.3` tag.
- Unreleased source proposes retiring the general Usage workspace, provider
allowance checks, `codevetter usage`/`quota`, and the bundled `ccusage`
sidecar. ContextDaddy owns general agent usage. Per-verification token and
cost receipts and CodeVetter's History recovery remain. This proposal has
not been published in a desktop release.
- The proposed v1.15.0 release candidate retires the general Usage workspace,
provider allowance checks, `codevetter usage`/`quota`, and the bundled
`ccusage` sidecar. Retired CLI commands return a migration message pointing to
ContextDaddy. Per-verification token and cost receipts and CodeVetter's
History recovery remain. This candidate has not been published or installed.
- Maintenance is limited to core verification reliability, regressions,
security, dependency hygiene, and evidence requested by real users. New
product surfaces require an explicit change in the investment decision.
Expand All @@ -64,7 +64,7 @@ separately approved safety design justify renewed investment.

External:
- Published v1.14.3 bundles `ccusage` 20.0.20 for local Claude/Codex/Grok usage
accounting; the unreleased source proposal above removes that sidecar.
accounting; the unreleased v1.15.0 candidate removes that sidecar.
- Installed and authenticated Codex or Claude CLI for Work conversations; provider account policy remains external to CodeVetter.
- GitHub Releases + GitHub Actions — `auto-release.yml` cuts a `v<version>` release on native `Shared.xcconfig` version bumps; `release.yml` signs, notarizes, qualifies, and uploads the SwiftUI app, DMG, ZIP, and Sparkle `appcast.xml`.
- Cloudflare Pages — hosts the landing page (`codevetter` project, codevetter.com).
Expand Down Expand Up @@ -793,7 +793,7 @@ Internal (fleet):
explicit and historical debt tracked in GitHub Issues.
- Local-first native macOS binary: SwiftUI/AppKit presentation, Rust-owned
verification and SQLite, no WebView and no server.
- Five-surface nav: Usage, Repo Unpack, Review, Testing, Performance. Repo contains Unpack, Activity, Graph, Inventory, Analysis, Handoff, and past snapshots; Settings is an integrated utility hosting Ops, Memories, Rubrics, Agent MCP, and preferences. Retired Work/Board routes redirect to Usage while their local records and backend lifecycle code remain available for separately reviewed cleanup.
- Published v1.14.3 still has the general Usage workspace. The v1.15.0 candidate presents Explore, Review, Testing, Performance, Runs, and Settings; the retired Usage route is kept only for decoding legacy deep links and is not navigable. Explore contains Unpack, source navigation, graph, and history. Existing local session/work-item records and backend lifecycle code remain available for separately reviewed cleanup.
- Testing and Performance now share a local deterministic scope planner for a human-described function/flow, an exact PR or Git change, or a bounded whole-codebase portfolio. Every plan exposes its revision, dirty state, concrete adapters/targets, uncovered paths, and limitations and requires confirmation before execution; human text is discovery input and is never run as a command.
- Risk-tiered CLI review: trivial single-pass → lite product/agent passes → full sensitive path with security, product, agent specialist passes, coordinator, and dedup metadata.

Expand Down
4 changes: 2 additions & 2 deletions apps/macos/Config/Shared.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ EXECUTABLE_NAME = CodeVetterNative
// Debug stays isolated from user data; Release owns the production identity.
PRODUCT_BUNDLE_IDENTIFIER = com.codevetter.desktop
PRODUCT_BUNDLE_IDENTIFIER[config=Debug] = com.codevetter.desktop.native-preview
MARKETING_VERSION = 1.14.3
CURRENT_PROJECT_VERSION = 11403
MARKETING_VERSION = 1.15.0
CURRENT_PROJECT_VERSION = 11500

// ==========================================
// Platform Configuration
Expand Down
6 changes: 3 additions & 3 deletions crates/codevetter-core/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions crates/codevetter-core/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "codevetter-core"
version = "1.14.3"
version = "1.15.0"
edition = "2021"
publish = false
description = "CodeVetter verification core, CLI, and read-only MCP server"
Expand All @@ -24,7 +24,7 @@ path = "src/bin/codevetter-graph.rs"
[dependencies]
# Source-compatible command facade while legacy annotations are renamed. This
# is repository-owned and contains no Tauri, WebView, or windowing runtime.
tauri = { package = "codevetter-transport", version = "=1.14.3", path = "../codevetter-transport" }
tauri = { package = "codevetter-transport", version = "=1.15.0", path = "../codevetter-transport" }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha2 = "0.10"
Expand Down
5 changes: 5 additions & 0 deletions crates/codevetter-core/src/bin/codevetter.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2183,6 +2183,11 @@ fn parse_arguments(
"runs" => return parse_runs(arguments),
"performance" => return parse_performance(arguments, cwd),
"scope" => return parse_scope(arguments, cwd),
"usage" | "quota" => {
return Err(format!(
"`codevetter {command}` was retired. Use ContextDaddy for general agent usage and provider allowances. CodeVetter still records token and cost evidence for verification runs."
));
}
"ops" => return parse_ops(arguments),
"unpack" => return parse_unpack(arguments),
"settings" => return parse_settings(arguments),
Expand Down
10 changes: 8 additions & 2 deletions crates/codevetter-core/src/codevetter_cli_tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -741,8 +741,14 @@ fn runs_parser_and_human_output_are_bounded() {
#[test]
fn general_agent_usage_commands_are_retired() {
let cwd = Path::new("/tmp/widget");
assert!(parse_arguments(["usage".into()], cwd).is_err());
assert!(parse_arguments(["quota".into()], cwd).is_err());
for command in ["usage", "quota"] {
let error = match parse_arguments([command.into()], cwd) {
Ok(_) => panic!("{command} should be retired"),
Err(error) => error,
};
assert!(error.contains("Use ContextDaddy"));
assert!(error.contains("token and cost evidence for verification runs"));
}
assert!(!HELP.contains("codevetter usage"));
assert!(!HELP.contains("codevetter quota"));
}
Expand Down
2 changes: 1 addition & 1 deletion crates/codevetter-transport-macros/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "codevetter-transport-macros"
version = "1.14.3"
version = "1.15.0"
edition = "2021"
publish = false

Expand Down
4 changes: 2 additions & 2 deletions crates/codevetter-transport/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
[package]
name = "codevetter-transport"
version = "1.14.3"
version = "1.15.0"
edition = "2021"
publish = false

[lib]
name = "tauri"

[dependencies]
codevetter-transport-macros = { version = "=1.14.3", path = "../codevetter-transport-macros" }
codevetter-transport-macros = { version = "=1.15.0", path = "../codevetter-transport-macros" }
tokio = { version = "1", features = ["rt-multi-thread"] }
4 changes: 2 additions & 2 deletions docs/architecture/how-it-works.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@ flowchart LR

`apps/macos` contains the Xcode workspace, minimal app shell, feature Swift
package, assets, and XCUITest targets. The UI presents six primary workspaces:
Usage, Repo Unpack, Review, Testing, Performance, and Settings, plus the bounded
Runs evidence ledger.
Explore, Review, Testing, Performance, Runs, and Settings. Explore includes
Repo Unpack and the local source browser; Runs holds bounded evidence receipts.

Swift does not open SQLite, traverse Git history, rank findings, or reinterpret
verdicts. It starts supervised companion commands and decodes exact Rust-owned
Expand Down
5 changes: 5 additions & 0 deletions docs/product/surfaces.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,11 @@ to an individual verification run remains in its receipt and Runs ledger.
CodeVetter's History settings and `history-roots` command are retained for its
existing local evidence archive and are not a general usage dashboard.

If you used `codevetter usage` or `codevetter quota` in a script, move that
workflow to ContextDaddy's app. ContextDaddy has no equivalent CodeVetter CLI
command; these retired commands now return a migration message instead of a
usage or quota receipt.

## Interaction policy

### Review and Explore navigation
Expand Down
Loading