Skip to content

CI: gate lance-graph-callcenter under --features query (close the blind gate) - #898

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/x265-x266-plans-review-h9osnl
Aug 5, 2026
Merged

CI: gate lance-graph-callcenter under --features query (close the blind gate)#898
AdaWorldAPI merged 1 commit into
mainfrom
claude/x265-x266-plans-review-h9osnl

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Aug 5, 2026

Copy link
Copy Markdown
Owner

What this does

Adds two mandatory CI steps for lance-graph-callcenter under
--features query — one clippy, one test.

Why this crate, and why the feature

Nothing in CI ran this crate at all. But the gap is subtler than "a crate
nobody tested": default = [], so even a bare
cargo test -p lance-graph-callcenter compiles almost none of it and reports a
green it has not earned.

Two defects rode through that gap on 2026-08-05:

  1. clippy EXIT=0 over never-compiled codevsa_udfs and
    transcode::ontology_table, both behind query / query-lite.
  2. Two genuinely failing tests — the graph_table fixture minted rows with
    the V1 CLASSID_OSINT while OSINT_GOTHAM.classid resolves to
    CLASSID_OSINT_V3 under the default guid-v3-tail, so project_snapshot's
    class filter matched zero of two rows and every assertion ran against an
    empty snapshot. Fixed in callcenter: fix the graph_table fixture's classid + tail mint (2 red tests) #897; recorded as
    E-A-FEATURE-CONDITIONAL-CLASSID-SILENTLY-EMPTIED-A-FIXTURE-1.

This is the same blind-gate shape the repo has already closed for deepnsm,
lance-graph-supervisor, lance-graph-ogar and bgz-tensor. It is only
subtler here because the missing coverage was a feature, not a crate.

Mandatory, not advisory — deliberately

The advisory tier exists for crates carrying pre-existing debt to be paid down
(lance-graph core's ~91, bgz-tensor's doc lints). This crate has none
under this feature today, so it gets the deepnsm posture: gate it while it
is clean, so it cannot regress.

Both steps were run on this tree before being added, so neither lands red:

  • cargo clippy --manifest-path crates/lance-graph-callcenter/Cargo.toml --features query --lib --tests -- -D warnings0 errors
  • cargo test --manifest-path crates/lance-graph-callcenter/Cargo.toml --features query --lib211 passed, 0 failed

Cost: ~2 min incremental for the DataFusion-54 tree.

Summary by CodeRabbit

  • Tests

    • Added automated coverage for feature-enabled library tests, including 211 previously unexecuted tests.
  • Chores

    • Added mandatory code-quality checks for feature-enabled library and test targets, with warnings treated as errors.

…nd gate)

Nothing in CI ran this crate, and `default = []` means even a bare
`cargo test -p lance-graph-callcenter` would compile almost none of it and
report a green it had not earned. Two defects rode through that gap on
2026-08-05:

  - clippy EXIT=0 over `vsa_udfs` and `transcode::ontology_table`, which were
    never compiled (both behind `query` / `query-lite`);
  - 2 genuinely failing tests -- the `graph_table` fixture minted rows with the
    V1 `CLASSID_OSINT` while `OSINT_GOTHAM.classid` resolves to
    `CLASSID_OSINT_V3` under the default `guid-v3-tail`, so the class filter
    matched zero of two rows and every assertion ran against an empty snapshot
    (fixed in #897).

Two steps, both mandatory, matching the deepnsm posture: gate it WHILE it is
clean so it cannot regress. Verified locally on this tree before adding them --
clippy 0 errors, tests 211/211 -- so neither step lands red.

Advisory was considered and rejected: the advisory tier exists for crates
carrying pre-existing debt to be paid down (lance-graph core, bgz-tensor).
This crate has none under this feature today.

A green run that never compiled the module is not coverage. Same shape the repo
has already closed for deepnsm, supervisor, ogar and bgz-tensor -- this one is
subtler only because the missing coverage was a FEATURE, not a crate.
@coderabbitai

coderabbitai Bot commented Aug 5, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 4c13a59f-a030-4d6a-be1d-559b4a6ffb30

📥 Commits

Reviewing files that changed from the base of the PR and between b66c7a0 and 2222df3.

📒 Files selected for processing (2)
  • .github/workflows/rust-test.yml
  • .github/workflows/style.yml

📝 Walkthrough

Walkthrough

The CI workflows now test and lint lance-graph-callcenter with the query feature enabled. The test workflow runs feature-gated library tests. The style workflow runs Clippy for library and test targets with warnings treated as errors.

Changes

Callcenter CI validation

Layer / File(s) Summary
Feature-specific tests and lint checks
.github/workflows/rust-test.yml, .github/workflows/style.yml
The test workflow runs callcenter library tests with --features query. The style workflow runs Clippy for library and test targets with warnings treated as errors.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: claude

Poem

A rabbit checks the query trail,
Tests hop clean through every gate.
Clippy listens, warnings pale,
The callcenter build stays straight.
CI thumps its little feet.


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.

@cursor

cursor Bot commented Aug 5, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_cca86ff3-edf7-41b9-9298-e14e6181dc2d)

@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review August 5, 2026 17:08
@AdaWorldAPI
AdaWorldAPI merged commit 660295f into main Aug 5, 2026
5 checks passed
AdaWorldAPI pushed a commit that referenced this pull request Aug 5, 2026
…ifiers)

`cycle-driver` is a SEPARATE feature that `supervisor` does not imply, so the
supervisor step -- despite being this crate's own step -- never compiled
`cycle_driver`, the three `probe_ignition*` / `d_ign_b_lenses` test binaries, or
any of #879's loop-closure contract.

Measured on this tree, not inferred:

  --features supervisor                 13 tests
  --features supervisor,cycle-driver    43 tests, 0 failed

The 30 in the gap include `probe_ignition_64k_start_at_full_population` -- the
65,536-owner / 17-sealed headline canonized as
E-64K-1TO1-OWNERS-IS-THE-MAIN-MODEL-1. It runs in 13.75 s and passes; it had
simply never run anywhere but a developer machine.

#891 recorded this gap and deliberately did not touch the workflow. #898 closed
the identical shape for callcenter (`--features query`) but not this one -- same
arc, same defect class, one closed and one left open. One added feature closes
it, and the new invocation is a strict superset of the old, so it cannot lose
coverage.
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