Skip to content

revert(antigravity): remove the Antigravity adapter until #1487 lands - #1569

Merged
ryoppippi merged 1 commit into
mainfrom
revert-antigravity-1544
Aug 3, 2026
Merged

ryoppippi merged 1 commit into
mainfrom
revert-antigravity-1544

Conversation

@ryoppippi

@ryoppippi ryoppippi commented Aug 3, 2026 •

Copy link
Copy Markdown
Member

Summary

Temporarily reverts #1544 so v20.0.20 does not ship a half-finished Antigravity
adapter. The intent is to reapply Antigravity support, not to drop it — see
#1488 for the full write-up and the open questions.

This costs nothing today: the adapter has not been released (latest is v20.0.19,
and the antigravity commit is only queued in the tagpr PR #1507), so no user has
it yet.

Why

#1544 landed while @sambitcreate's contribution proposal #1488 was still open,
which was the wrong order. It also covers less ground than their #1487:

#1544 (reverted here) #1487
Data directories antigravity-cli only antigravity{,-cli,-ide,-backup}
Opaque model ids antigravity-model-<id>, unpriceable alias table to LiteLLM names
--offline Gemini rates none models.dev entries embedded
Real-data validation 3 chat turns, 1 CLI conversation 23 days of usage

Concretely, what is on main right now:

  • gives Antigravity IDE users nothing, because only the CLI directory is read;
  • silently understates cost, because unnamed model ids cannot be priced;
  • reports no cost at all under --offline for Gemini models;
  • ships retries, subagents and model comparison unexercised — the dedupe is
    designed to be correct either way, but nothing has run through those paths.

The first three are already solved in #1487, which is the better base to build on.

What is not lost

None of the reverse engineering. The recovered ModelUsageStats /
CortexStepMetadata / ChatModelMetadata field numbers, the evidence that
input_tokens and cache_read_tokens are disjoint, and the reasoning behind the
response_id dedupe are all written up in #1488, along with the questions we
still need the Antigravity team to answer.

Testing

  • cargo test across the workspace passes (48 suites; the two antigravity suites
    are gone with the crate).
  • ccusage antigravity daily now reports Unknown command 'antigravity', and the
    unified report no longer includes an antigravity row.
  • The revert applied cleanly: nothing landed on main after feat(antigravity): add Antigravity CLI usage adapter #1544 touched these
    files.

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.


Summary by cubic

Temporarily remove the Antigravity CLI usage adapter to avoid shipping incomplete support in v20.0.20. This disables ccusage antigravity ... commands and excludes Antigravity from unified reports for now.

  • Refactors

    • Removed the ccusage-adapter-antigravity crate and related loader/parser/report code.
    • Dropped Antigravity from CLI commands, help, tests, and BUILT_IN_AGENT_NAMES.
    • Removed Antigravity config schema and docs, including ANTIGRAVITY_DATA_DIR and the guide.
    • Cleaned up workspace manifests, build artifacts, and docs navigation.
  • Migration

    • No action needed. If you scripted ccusage antigravity ..., temporarily remove those calls until support returns.

Written for commit f124fe7. Summary will update on new commits.

Review in cubic

Summary by CodeRabbit

  • Changes
    • Removed Antigravity CLI support from usage reports and command-line options.
    • Removed Antigravity from unified reports, source detection, configuration, and environment-variable examples.
    • Updated supported-source tables and documentation to identify Antigravity as unsupported.
    • Removed Antigravity-specific documentation, configuration options, and reporting examples.
    • Other supported CLI integrations remain unchanged.

This reverts commit 50614f1.

Temporary, so that v20.0.20 does not ship a half-finished adapter. The
intent is to reapply Antigravity support, not to drop it — see #1488.

#1544 landed while the contribution proposal in #1488 was still open, and
it covers less ground than @sambitcreate's #1487:

- It reads only `~/.gemini/antigravity-cli`, missing `antigravity`,
  `antigravity-ide` and `antigravity-backup`, so IDE users get nothing.
- Opaque model ids stay as `antigravity-model-<id>` with no alias table,
  so they cannot be priced and cost is silently understated.
- The offline pricing snapshot has no Gemini rates, so `--offline`
  reports no cost for Gemini models.
- It was validated against three chat turns in one CLI conversation.
- Retries, subagents and model comparison ship unexercised.

The first three are already solved in #1487, which is the better base to
build on. Reverting now keeps the release clean while that is sorted out,
and costs nothing: the adapter has not been released, so no user has it.

Nothing about the reverse engineering is lost. The recovered field numbers
and the reasoning behind the dedupe are written up in #1488.
Copilot AI review requested due to automatic review settings August 3, 2026 14:59
@coderabbitai

coderabbitai Bot commented Aug 3, 2026 •

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Changes

Antigravity support was removed from the Rust CLI, configuration schema, adapter registry, build metadata, generated schema, and documentation. The Antigravity adapter implementation and guide were deleted. Documentation now identifies Antigravity as unsupported.

Antigravity support removal

Layer / File(s) Summary
CLI and configuration removal
rust/crates/ccusage-cli-parser/*, rust/crates/ccusage-cli/src/types.rs, rust/crates/ccusage-core/src/lib.rs, rust/crates/ccusage-config/src/config_schema.rs, rust/crates/ccusage/src/*, apps/ccusage/config-schema.json
Antigravity was removed from command parsing, command types, built-in agent names, configuration schemas, dispatch, and CLI tests.
Adapter and build integration removal
rust/adapters/antigravity/*, rust/crates/ccusage-adapter-all/*, rust/crates/ccusage/Cargo.toml, rust/Cargo.toml, nix/cargo-artifacts.nix
The Antigravity adapter was deleted. Workspace dependencies, unified loading and reporting, and generated build entries no longer reference it.
Documentation and navigation update
apps/ccusage/README.md, docs/guide/*, docs/.vitepress/config.ts
Antigravity was removed from supported-source documentation, examples, navigation, environment settings, and configuration references. The support FAQ records why it is unsupported.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • ccusage/ccusage#1487: Introduced the Antigravity adapter, CLI commands, configuration, reporting integration, and documentation removed here.
  • ccusage/ccusage#1544: Added the same Antigravity support areas that this change removes.
  • ccusage/ccusage#1070: Added the source-support documentation updated by this change.

Suggested reviewers: copilot

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 38.46% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the removal of the Antigravity adapter and states the temporary rationale.
✨ Finishing Touches 💡 2
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch revert-antigravity-1544

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@pullfrog

pullfrog Bot commented Aug 3, 2026 •

Copy link
Copy Markdown
Contributor
  • Get check suite logs and diagnose failure
  • Verify failure is introduced by this PR
  • Fix the issue: PR title needs scope 'antigravity'
  • Verify fix by running CI commands locally
  • Commit and push
  • Report progress

Pullfrog  | ⚠️ this action is pinned to a commit SHA, which freezes the cleanup step — switch to @v0 or keep the SHA fresh with Dependabot | View workflow run | via Pullfrog | Using DeepSeek Pro (free via Pullfrog for OSS) | 𝕏

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR reverts the previously-added Antigravity adapter so the Rust-first ccusage CLI (and its npm/docs surfaces) no longer exposes ccusage antigravity … commands, schema namespaces, or unified-report integration until a more complete Antigravity implementation is ready.

Changes:

  • Removes the ccusage-adapter-antigravity crate and all wiring (CLI dispatch, parser/help, unified loader, config schema, nix artifacts, Cargo workspace deps/lockfile).
  • Regenerates/updates snapshots and JSON schema artifacts to drop the antigravity namespace/commands.
  • Updates docs/READMEs to remove Antigravity as a supported source and deletes the Antigravity guide page.

Reviewed changes

Copilot reviewed 36 out of 37 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
rust/crates/ccusage/src/main.rs Removes Antigravity command dispatch and updates the adapter exposure test count.
rust/crates/ccusage/src/cli/last_window.rs Drops Antigravity from --last window targeting logic.
rust/crates/ccusage/src/adapter/mod.rs Removes the ccusage_adapter_antigravity re-export.
rust/crates/ccusage/Cargo.toml Removes the ccusage-adapter-antigravity dependency.
rust/crates/ccusage-core/src/lib.rs Removes antigravity from the built-in agent name list.
rust/crates/ccusage-config/src/snapshots/ccusage_config__config_schema__tests__snapshots_schema_agent_specific_option_edges.snap Updates schema snapshot content/metadata after removing Antigravity config.
rust/crates/ccusage-config/src/config_schema.rs Removes AntigravityConfig types and drops the antigravity root property from schema tests.
rust/crates/ccusage-cli/src/types.rs Removes Command::Antigravity from the CLI command enum.
rust/crates/ccusage-cli-parser/src/tests.rs Removes Antigravity from parser test routing and help agent lists.
rust/crates/ccusage-cli-parser/src/snapshots/ccusage_cli_parser__tests__root_help.snap Updates root help snapshot to remove Antigravity command listing.
rust/crates/ccusage-cli-parser/src/parser.rs Removes Antigravity parsing, command detection, display naming, and report support mapping.
rust/crates/ccusage-cli-parser/src/cli-commands.json Removes Antigravity entries from generated CLI command metadata.
rust/crates/ccusage-adapter-all/src/report.rs Removes Antigravity label mapping from unified report labeling.
rust/crates/ccusage-adapter-all/src/loader.rs Removes the Antigravity load spec from unified loading.
rust/crates/ccusage-adapter-all/src/lib.rs Removes the Antigravity adapter re-export.
rust/crates/ccusage-adapter-all/Cargo.toml Removes ccusage-adapter-antigravity dependency.
rust/Cargo.toml Removes ccusage-adapter-antigravity from workspace dependency map.
rust/Cargo.lock Removes the Antigravity adapter package entry and dependencies.
rust/adapters/antigravity/src/report.rs Deletes Antigravity adapter reporting implementation/tests.
rust/adapters/antigravity/src/proto.rs Deletes Antigravity protobuf reader/encoder and tests.
rust/adapters/antigravity/src/paths.rs Deletes Antigravity path discovery and env override logic/tests.
rust/adapters/antigravity/src/parser.rs Deletes Antigravity usage mapping and pricing-candidate logic/tests.
rust/adapters/antigravity/src/loader.rs Deletes Antigravity SQLite loader, dedupe logic, and tests.
rust/adapters/antigravity/src/lib.rs Deletes Antigravity adapter public entrypoints (run, summarize/report/load).
rust/adapters/antigravity/README.md Deletes adapter-specific documentation.
rust/adapters/antigravity/Cargo.toml Deletes the adapter crate manifest.
nix/cargo-artifacts.nix Removes antigravity from the Nix adapter artifact agent list.
docs/guide/source-support-qa.md Adds Antigravity CLI to the “Unsupported Sources Investigated” Q&A content.
docs/guide/index.md Removes Antigravity from the supported-sources narrative and tables; references Q&A for unsupported sources.
docs/guide/getting-started.md Removes Antigravity from troubleshooting and env var examples.
docs/guide/environment-variables.md Removes ANTIGRAVITY_DATA_DIR documentation and updates the grep example.
docs/guide/config-files.md Removes antigravity from the list of supported config namespaces.
docs/guide/antigravity/index.md Deletes the Antigravity guide page.
docs/guide/all-reports.md Removes Antigravity from supported sources and examples.
docs/.vitepress/config.ts Removes Antigravity from the VitePress sidebar.
apps/ccusage/README.md Removes Antigravity from the npm package README support tables/examples.
apps/ccusage/config-schema.json Removes the antigravity configuration namespace from the published JSON schema.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +25 to +29
The current local data has conversation files such as `conversations/<conversation-id>.pb`, plus lightweight history and cache JSON files. The `.pb` files are opaque binary payloads and do not expose readable token usage, model usage, or per-turn accounting without Antigravity's private schema and storage semantics.

The CLI log files include operational events such as conversation creation, streaming, prompt length, auth, and model configuration messages. They do not include input, output, cache, or reasoning token counts. Quota-oriented tools can inspect remaining Antigravity quota, but quota snapshots are not the same as historical per-session token usage.

Because the local files do not expose the token accounting needed for ccusage reports, Antigravity CLI is not supported right now.
@@ -1,5 +1,5 @@
---
source: crates/ccusage-cli-parser/src/tests.rs
source: crates/ccusage-cli/src/tests.rs
Comment on lines +2 to +3
source: crates/ccusage/src/config_schema.rs
assertion_line: 1293

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ No new issues found.

Reviewed changes — a single-commit revert of the ccusage-adapter-antigravity crate (#1544).

  • Antigravity adapter crate deleted entirely — rust/adapters/antigravity/ including all source, Cargo.toml, and README.
  • Integration points cleaned — workspace Cargo.toml, Cargo.lock, ccusage-adapter-all (lib, loader, report, deps), ccusage-cli-parser (parser, commands JSON, tests, root-help snapshot), ccusage-cli (types, main dispatch, last_window), ccusage-core (BUILT_IN_AGENT_NAMES), ccusage-config (schema types, test list, schema snapshot), nix/cargo-artifacts.nix.
  • npm artifacts: README table and config-schema.json antigravity section removed.
  • Docs: antigravity guide page deleted, sidebar link removed, agent list references scrubbed from all-reports, config-files, environment-variables, getting-started, and index; source-support-qa moved antigravity from "Previously Unsupported, Now Supported" to "Unsupported Sources Investigated" with updated rationale text.
  • Test count updates: BUILT_IN_AGENT_NAMES length 16→15, agent_commands_are_exposed_by_independent_crates count 15→14, snapshots regenerated.

No stray references — the docs now correctly represent Antigravity as unsupported pending #1487.

Pullfrog  | ⚠️ this action is pinned to a commit SHA, which freezes the cleanup step — switch to @v0 or keep the SHA fresh with Dependabot | View workflow run | Using DeepSeek Pro (free via Pullfrog for OSS) | 𝕏

@ryoppippi ryoppippi changed the title revert: "feat(antigravity): add Antigravity CLI usage adapter (#1544)" revert(antigravity): remove the Antigravity adapter until #1487 lands Aug 3, 2026
@pkg-pr-new

pkg-pr-new Bot commented Aug 3, 2026

Copy link
Copy Markdown

Open in StackBlitz

ccusage

npx https://pkg.pr.new/ccusage@1569

@ccusage/ccusage-darwin-arm64

npx https://pkg.pr.new/@ccusage/ccusage-darwin-arm64@1569

@ccusage/ccusage-darwin-x64

npx https://pkg.pr.new/@ccusage/ccusage-darwin-x64@1569

@ccusage/ccusage-linux-arm64

npx https://pkg.pr.new/@ccusage/ccusage-linux-arm64@1569

@ccusage/ccusage-linux-x64

npx https://pkg.pr.new/@ccusage/ccusage-linux-x64@1569

@ccusage/ccusage-win32-x64

npx https://pkg.pr.new/@ccusage/ccusage-win32-x64@1569

commit: f124fe7

@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

ccusage performance comparison

PR SHA: f124fe7d80b6
Base SHA: 4a85f028d750

This compares the PR package against the configured base package on the same CI runner.

Package runtime diagnostics

Compares the PR package wrapper, the installed native optional dependency binary, and the workspace release binary on the same large fixture. This identifies whether slow package results come from JavaScript wrapper overhead, the published native binary build, or the Rust core itself.

Fixtures: Claude /home/runner/_work/_temp/ccusage-large-fixture (1.01 GiB, 2597 files), Codex /home/runner/_work/_temp/ccusage-large-codex-fixture (1.01 GiB, 2597 files)
All rows run --offline --json, measured by hyperfine with 0 warmups and 1 runs. This isolates wrapper overhead from the installed native optional dependency and the workspace release binary built on the runner.

Command Runtime Input Median Throughput Samples
claude --offline --json Package wrapper 1.01 GiB 360.9ms 2.79 GiB/s 1
claude --offline --json Installed native binary 1.01 GiB 317.1ms 3.17 GiB/s 1
codex --offline --json Package wrapper 1.01 GiB 131.6ms 7.65 GiB/s 1
codex --offline --json Installed native binary 1.01 GiB 105.7ms 9.52 GiB/s 1

Committed fixture performance

Committed small fixtures for stable PR-to-PR feedback and explicit Claude/Codex command coverage.

Fixtures: Claude apps/ccusage/test/fixtures/claude (0.00 MiB, 2 files), Codex apps/ccusage/test/fixtures/codex (0.00 MiB, 1 files)
Base runs the published ccusage package from pkg.pr.new, installed before measurement; PR runs the published ccusage package from pkg.pr.new, installed before measurement. Both run --offline --json, measured by hyperfine with 2 warmups and 7 runs.
Peak RSS is measured separately with /usr/bin/time using 1 runs. Lower RSS ratios are better.

Command Input Base median PR median PR vs base Base peak RSS PR peak RSS PR/base RSS Base throughput PR throughput
claude daily --offline --json 0.00 MiB 30.5ms 27.2ms 1.12x 55.25 MiB 54.75 MiB 0.99x 0.05 MiB/s 0.06 MiB/s
claude session --offline --json 0.00 MiB 28.3ms 25.5ms 1.11x 55.00 MiB 55.25 MiB 1.00x 0.05 MiB/s 0.06 MiB/s
codex daily --offline --json 0.00 MiB 24.6ms 22.4ms 1.10x 55.25 MiB 55.00 MiB 1.00x 0.03 MiB/s 0.04 MiB/s
codex session --offline --json 0.00 MiB 27.4ms 24.0ms 1.14x 55.00 MiB 55.00 MiB 1.00x 0.03 MiB/s 0.04 MiB/s

Large real-world-shaped fixture performance

Generated fixtures shaped from aggregate local log statistics: thousands of JSONL files, many small sessions, and a long tail of larger sessions. No real prompts, paths, or outputs are stored in the fixtures.

Fixtures: Claude /home/runner/_work/_temp/ccusage-large-fixture (1.01 GiB, 2597 files), Codex /home/runner/_work/_temp/ccusage-large-codex-fixture (1.01 GiB, 2597 files)
Base runs the published ccusage package from pkg.pr.new, installed before measurement; PR runs the published ccusage package from pkg.pr.new, installed before measurement. Both run --offline --json, measured by hyperfine with 0 warmups and 1 runs.
Peak RSS is measured separately with /usr/bin/time using 1 runs. Lower RSS ratios are better.

Command Input Base median PR median PR vs base Base peak RSS PR peak RSS PR/base RSS Base throughput PR throughput
claude --offline --json 1.01 GiB 359.7ms 348.8ms 1.03x 988.59 MiB 944.83 MiB 0.96x 2.80 GiB/s 2.89 GiB/s
codex --offline --json 1.01 GiB 133.7ms 124.8ms 1.07x 412.91 MiB 416.65 MiB 1.01x 7.53 GiB/s 8.07 GiB/s

Artifact size

Artifact Base PR Delta Ratio
packed ccusage-*.tgz 19.09 KiB 18.78 KiB -0.32 KiB 1.02x
installed native package binary 4194.34 KiB 4159.09 KiB -35.25 KiB 1.01x

Lower medians and smaller artifacts are better. CI runner noise still applies; use same-run ratios as directional PR feedback, not release guarantees.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
rust/crates/ccusage-cli-parser/src/tests.rs (1)

609-610: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Assert that antigravity is absent from root help.

This test checks that supported agent names are present. It does not fail if a stale antigravity entry remains in help_text(). Add a negative assertion for the removed namespace.

Proposed test assertion
     for agent in agents {
         assert!(help.contains(&format!("\n  {agent} ")));
         assert!(!help.contains(&format!("\n  {agent} daily")));
     }
+    assert!(!help.contains("\n  antigravity "));
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@rust/crates/ccusage-cli-parser/src/tests.rs` around lines 609 - 610, Update
the root help test in tests.rs to explicitly assert that help_text() does not
contain the removed "antigravity" namespace, while preserving the existing
assertions for supported agent names.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@rust/crates/ccusage-cli-parser/src/tests.rs`:
- Around line 609-610: Update the root help test in tests.rs to explicitly
assert that help_text() does not contain the removed "antigravity" namespace,
while preserving the existing assertions for supported agent names.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 2d655c0e-0a82-4122-9c00-7c1d5bfa0a8f

📥 Commits

Reviewing files that changed from the base of the PR and between 4a85f02 and f124fe7.

⛔ Files ignored due to path filters (3)
  • rust/Cargo.lock is excluded by !**/*.lock
  • rust/crates/ccusage-cli-parser/src/snapshots/ccusage_cli_parser__tests__root_help.snap is excluded by !**/*.snap
  • rust/crates/ccusage-config/src/snapshots/ccusage_config__config_schema__tests__snapshots_schema_agent_specific_option_edges.snap is excluded by !**/*.snap
📒 Files selected for processing (34)
  • apps/ccusage/README.md
  • apps/ccusage/config-schema.json
  • docs/.vitepress/config.ts
  • docs/guide/all-reports.md
  • docs/guide/antigravity/index.md
  • docs/guide/config-files.md
  • docs/guide/environment-variables.md
  • docs/guide/getting-started.md
  • docs/guide/index.md
  • docs/guide/source-support-qa.md
  • nix/cargo-artifacts.nix
  • rust/Cargo.toml
  • rust/adapters/antigravity/Cargo.toml
  • rust/adapters/antigravity/README.md
  • rust/adapters/antigravity/src/lib.rs
  • rust/adapters/antigravity/src/loader.rs
  • rust/adapters/antigravity/src/parser.rs
  • rust/adapters/antigravity/src/paths.rs
  • rust/adapters/antigravity/src/proto.rs
  • rust/adapters/antigravity/src/report.rs
  • rust/crates/ccusage-adapter-all/Cargo.toml
  • rust/crates/ccusage-adapter-all/src/lib.rs
  • rust/crates/ccusage-adapter-all/src/loader.rs
  • rust/crates/ccusage-adapter-all/src/report.rs
  • rust/crates/ccusage-cli-parser/src/cli-commands.json
  • rust/crates/ccusage-cli-parser/src/parser.rs
  • rust/crates/ccusage-cli-parser/src/tests.rs
  • rust/crates/ccusage-cli/src/types.rs
  • rust/crates/ccusage-config/src/config_schema.rs
  • rust/crates/ccusage-core/src/lib.rs
  • rust/crates/ccusage/Cargo.toml
  • rust/crates/ccusage/src/adapter/mod.rs
  • rust/crates/ccusage/src/cli/last_window.rs
  • rust/crates/ccusage/src/main.rs
💤 Files with no reviewable changes (21)
  • docs/.vitepress/config.ts
  • rust/Cargo.toml
  • rust/crates/ccusage-adapter-all/Cargo.toml
  • rust/crates/ccusage/Cargo.toml
  • rust/adapters/antigravity/Cargo.toml
  • rust/crates/ccusage-adapter-all/src/report.rs
  • docs/guide/antigravity/index.md
  • nix/cargo-artifacts.nix
  • rust/adapters/antigravity/src/lib.rs
  • rust/crates/ccusage/src/adapter/mod.rs
  • rust/adapters/antigravity/src/loader.rs
  • docs/guide/getting-started.md
  • rust/adapters/antigravity/src/report.rs
  • rust/crates/ccusage-cli-parser/src/cli-commands.json
  • rust/adapters/antigravity/README.md
  • rust/adapters/antigravity/src/parser.rs
  • rust/crates/ccusage-adapter-all/src/lib.rs
  • apps/ccusage/config-schema.json
  • rust/adapters/antigravity/src/proto.rs
  • rust/adapters/antigravity/src/paths.rs
  • rust/crates/ccusage-cli/src/types.rs

@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

ccusage performance comparison

PR SHA: f124fe7d80b6
Base SHA: 4a85f028d750

This compares the Rust PR release binary against the configured base package on the same CI runner.

Package runtime diagnostics

Compares the PR package wrapper, the installed native optional dependency binary, and the workspace release binary on the same large fixture. This identifies whether slow package results come from JavaScript wrapper overhead, the published native binary build, or the Rust core itself.

Fixtures: Claude /home/runner/_work/_temp/ccusage-large-fixture (1.01 GiB, 2597 files), Codex /home/runner/_work/_temp/ccusage-large-codex-fixture (1.01 GiB, 2597 files)
All rows run --offline --json, measured by hyperfine with 0 warmups and 1 runs. This isolates wrapper overhead from the installed native optional dependency and the workspace release binary built on the runner.

Command Runtime Input Median Throughput Samples
claude --offline --json Package wrapper 1.01 GiB 351.8ms 2.86 GiB/s 1
claude --offline --json Installed native binary 1.01 GiB 328.3ms 3.07 GiB/s 1
codex --offline --json Package wrapper 1.01 GiB 117.5ms 8.57 GiB/s 1
codex --offline --json Installed native binary 1.01 GiB 92.7ms 10.86 GiB/s 1

Committed fixture performance

Committed small fixtures for stable PR-to-PR feedback and explicit Claude/Codex command coverage.

Fixtures: Claude apps/ccusage/test/fixtures/claude (0.00 MiB, 2 files), Codex apps/ccusage/test/fixtures/codex (0.00 MiB, 1 files)
Base runs the published ccusage package from pkg.pr.new, installed before measurement; PR runs the published native ccusage binary from pkg.pr.new, installed before measurement. Both run --offline --json, measured by hyperfine with 2 warmups and 7 runs.
Peak RSS is measured separately with /usr/bin/time using 1 runs. Lower RSS ratios are better.

Command Input Base median PR median PR vs base Base peak RSS PR peak RSS PR/base RSS Base throughput PR throughput
claude daily --offline --json 0.00 MiB 29.0ms 5.1ms 5.64x 54.75 MiB 12.70 MiB 0.23x 0.05 MiB/s 0.30 MiB/s
claude session --offline --json 0.00 MiB 26.0ms 3.6ms 7.23x 55.00 MiB 12.44 MiB 0.23x 0.06 MiB/s 0.43 MiB/s
codex daily --offline --json 0.00 MiB 24.3ms 2.4ms 10.07x 55.00 MiB 10.69 MiB 0.19x 0.04 MiB/s 0.35 MiB/s
codex session --offline --json 0.00 MiB 25.1ms 2.5ms 10.06x 55.00 MiB 10.69 MiB 0.19x 0.03 MiB/s 0.34 MiB/s

Large real-world-shaped fixture performance

Generated fixtures shaped from aggregate local log statistics: thousands of JSONL files, many small sessions, and a long tail of larger sessions. No real prompts, paths, or outputs are stored in the fixtures.

Fixtures: Claude /home/runner/_work/_temp/ccusage-large-fixture (1.01 GiB, 2597 files), Codex /home/runner/_work/_temp/ccusage-large-codex-fixture (1.01 GiB, 2597 files)
Base runs the published ccusage package from pkg.pr.new, installed before measurement; PR runs the published native ccusage binary from pkg.pr.new, installed before measurement. Both run --offline --json, measured by hyperfine with 0 warmups and 1 runs.
Peak RSS is measured separately with /usr/bin/time using 1 runs. Lower RSS ratios are better.

Command Input Base median PR median PR vs base Base peak RSS PR peak RSS PR/base RSS Base throughput PR throughput
claude --offline --json 1.01 GiB 363.9ms 332.2ms 1.10x 966.59 MiB 964.83 MiB 1.00x 2.77 GiB/s 3.03 GiB/s
codex --offline --json 1.01 GiB 116.3ms 94.8ms 1.23x 420.92 MiB 420.65 MiB 1.00x 8.66 GiB/s 10.62 GiB/s

Artifact size

Artifact Base PR Delta Ratio
packed ccusage-*.tgz 19.09 KiB 18.78 KiB -0.32 KiB 1.02x
installed native package binary 4194.34 KiB 4159.09 KiB -35.25 KiB 1.01x

Lower medians and smaller artifacts are better. CI runner noise still applies; use same-run ratios as directional PR feedback, not release guarantees.

@ryoppippi
ryoppippi merged commit 8028fd4 into main Aug 3, 2026
65 of 71 checks passed
@ryoppippi
ryoppippi deleted the revert-antigravity-1544 branch August 3, 2026 15:12
@github-actions github-actions Bot mentioned this pull request Aug 3, 2026
LeeShunEE added a commit to LeeShunEE/ccusage that referenced this pull request Aug 4, 2026
…usage-adapter

Rebase onto current upstream main (24cbb82). Resolve conflicts so Grok stays
wired while respecting the Antigravity revert (ccusage#1569).
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.

2 participants