Skip to content

Rust 1.97.1 + workspace clippy clean (31/31) - #247

Merged
AdaWorldAPI merged 4 commits into
mainfrom
claude/loco-funnel-probe-s0
Aug 5, 2026
Merged

Rust 1.97.1 + workspace clippy clean (31/31)#247
AdaWorldAPI merged 4 commits into
mainfrom
claude/loco-funnel-probe-s0

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Aug 5, 2026

Copy link
Copy Markdown
Owner

What this does

Moves OGAR to Rust 1.97.1 and pays down the clippy debt the bump exposed.

Scope correction: an earlier version of this description also claimed the
PROBE-ORACLE-FUNNEL Stage 0 work. That is not in this PR — it merged separately
as #245, and this branch has since been rebased onto the main that contains it.
What is left here is the toolchain bump and the lint sweep.

Toolchain

rust-toolchain.toml and .github/workflows/ci.yml move 1.95.0 -> 1.97.1.

The dormant lance pins move with it (7.0.0 / 0.30.0 / df 53 -> 9.0.0 / 0.33.0 /
df 54) purely as realignment: no OGAR crate consumes them today, so this cannot
break a build — it keeps the pins from drifting away from the workspace they
mirror. Worth recording because it is easy to look for and not find: lancedb
has no 0.34+ on crates.io.
0.33.0 is the maximum and it pins lance =9.0.0;
the 0.36 version people see is the PyPI package, which is numbered
independently.

The clippy sweep

Fixed crate by crate: needless_range_loop where the index only subscripted,
unused imports dropped or moved into mod tests, map_or -> is_some_and, and
one doc_lazy_continuation.

All 31 crates are clippy-clean at -D warnings, and cargo test --workspace
is green with zero failures
— verified centrally on this branch, and
re-verified after the rebase, since main brought in ogar-loco value_codebook +
ogar-ro code that had never been compiled under 1.97.1. It is clean too.

One thing worth not relearning

clippy::doc_lazy_continuation and doc list item without indentation are
twins. A continuation line must align with the list item's text column
(5 spaces for a marker at 3); clippy's literal "try 4 spaces" hint flips one
lint into the other. Two of these oscillated before the rule was pinned down.

Testing

  • cargo +1.97.1 clippy -p <crate> --all-targets across all 31 crates: 0 errors,
    run twice (pre- and post-rebase).
  • cargo +1.97.1 test --workspace: every suite ok, 0 failed.

@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_9e7ad30f-3ddd-4466-8f74-97c8abaf53c0)

claude added 4 commits August 5, 2026 16:27
…3 / df 54

Operator-directed: bump now, fix after. rust-toolchain.toml + the CI
toolchain pin move together - leaving CI at 1.95.0 would fight the
toolchain file and defeat the bump.

The lance pins here are DORMANT: [workspace.dependencies] declarations
that zero OGAR crates consume (verified - no crate inherits them), and
the block's own comment says they exist so the pin is 'canonical and
matches the rest of the AdaWorldAPI ecosystem'. Realigning them to the
measured lance-graph bump therefore cannot break a build; leaving them
at 7.0.0 would make that canonical claim quietly false.

Recorded in the manifest comment: there is no lancedb 0.34-0.36 Rust
crate. The registry tops out at 0.33.0, which IS the lance-9 pairing
(it pins lance =9.0.0 exactly); 0.36 is the PyPI package, versioned
independently. arrow stays 58 and object_store 0.13.2 - only
datafusion crosses a major. Also cross-references the operator ruling
that this family is consumed from crates.io upstream and NEVER from a
fork, so a future session finding the AdaWorldAPI/lance and /lancedb
repos does not read their existence as intent to depend on them.
Owed fix-after of the toolchain bump. Two changes, both mechanical:
- ogar-adapter-clickhouse-ddl/src/lib.rs:230 - map_or(false, f) ->
  is_some_and(f) (clippy::unnecessary_map_or).
- ogar-emitter/src/do_adapter.rs - cosmetic vec! collapse from fmt.

PARTIAL, and honestly so: 8 of 30 crates. 7 of the 8 were already
clean (ogar-vocab, -ontology, -emitter, -adapter, -proposal,
-adapter-surrealql, -adapter-ttl - all tests green). The worker then
stopped on its 5 GB disk guard, correctly diagnosing the cause as
external (a 9.8 GB sibling target dir, since cleared) rather than its
own residue. The clickhouse fix was applied but NOT re-verified before
the halt, and 22 crates were never reached - the full list is in the
tag-file. Resume there, starting by re-verifying that one crate.

Worker tag-file: .claude/exec-runs/sonnet-197-lint-sweep.md
Second sweep wave. Both fixes are pure unused-import cleanups:
- ogar-from-elixir/src/lib.rs: 9 ogar_vocab imports were test-only but
  sat at module scope, so they were unused in the lib build. Moved into
  mod tests.
- ogar-from-ruff/examples/compile_corpus.rs:30: unused Write import.

Also re-verified the previous wave's unverified fix
(ogar-adapter-clickhouse-ddl map_or -> is_some_and): clippy clean, 7
tests pass.

Now clean with tests green: clickhouse-ddl, postgres-ddl,
knowable-from, from-elixir, from-ruff, from-rails, from-schema,
action-handler (plus the 8 from the first wave). 6 of these 8 were
already clean.

Halted on the disk guard again at 3.9 GB free - and the cause was MINE,
not the worker's: I was rebuilding lance-graph's 10 GB target
concurrently for the bump verification. The fix is sequencing, not a
bigger floor: run the big workspace build and the crate-by-crate
grindwork serially. Remaining crates listed in the tag-file.

Worker tag-file: .claude/exec-runs/sonnet-197-lint-sweep-resume.md
clippy 1.97 doc_lazy_continuation on the action_to_step mapping table.
The continuation lines were aligned under the description text of each
bullet, not under the bullet's own text column; clippy reads that as a
new paragraph inside the list. Aligning to the marker's text column (5
spaces for a marker at 3) is the fix -- clippy's literal "try 4 spaces"
hint flips this lint into its twin (doc list item without indentation).
@AdaWorldAPI
AdaWorldAPI force-pushed the claude/loco-funnel-probe-s0 branch from 6ae54bf to 6ed7078 Compare August 5, 2026 16:50
@AdaWorldAPI AdaWorldAPI changed the title Rust 1.97.1 + workspace clippy clean (31/31); PROBE-ORACLE-FUNNEL Stage 0 Rust 1.97.1 + workspace clippy clean (31/31) Aug 5, 2026
@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review August 5, 2026 16:51
@AdaWorldAPI
AdaWorldAPI merged commit 8d31552 into main Aug 5, 2026
1 check passed
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