Skip to content

chore(claude-team): bump to 3.0.0 to dispatch the rebuild 2.0.0 and 2.2.0 deferred - #2666

Merged
Gregory91G merged 1 commit into
mainfrom
chore-claude-team-major-bump
Aug 19, 2026
Merged

chore(claude-team): bump to 3.0.0 to dispatch the rebuild 2.0.0 and 2.2.0 deferred#2666
Gregory91G merged 1 commit into
mainfrom
chore-claude-team-major-bump

Conversation

@Gregory91G

Copy link
Copy Markdown
Contributor

Closes #2665.

Why. Three Claude Team changes each needed rows to re-materialise and each shipped as MINOR to avoid a rebuild that was not yet safe. A MAJOR descriptor version is the only thing that dispatches the one-shot dbt --full-refresh scoped to tag:claude-team+.

What changed. descriptor.yaml 2.2.0 → 3.0.0, and the comment records the four effects: seat_status on rows written before 2.2.0, the seats the pre-2.2.0 status = 'active' filter dropped at staging time while Bronze kept them, the roster rows admitted before 2.2.0's activity gate, and the rows the old table-wide silver watermark stranded — #2607 stopped that loss without undoing it.

Safe now and not before. full_refresh=false on claude_team__ai_overage landed in 2.2.0, so the one relation holding a past month's closing spend is skipped while class_ai_overage re-materialises from it.

Set by hand, deliberately. claude-team is declarative and carries no images: block, so the build's automatic minor bump never touches this descriptor.

Out of scope. The classes this rebuild does not reach; the recovery procedure for those is tracked under #1607.

Verified. classify_bump.py 3.0.0 2.2.0 returns major where 2.3.0 returns minor, so the dispatch fires. scripts/ci/connector_wiring.py passes, with only the pre-existing slack warning. Descriptor parses; dbt_select unchanged.

….2.0 deferred

No schema change of its own. A MAJOR descriptor version is the only thing that
makes reconcile-connectors dispatch a one-shot `dbt --full-refresh` scoped to
`tag:claude-team+`, and three earlier changes each needed rows to re-materialise
and each deliberately shipped as MINOR instead.

Four things only that rebuild can do. Rows written before 2.2.0 carry an empty
seat_status and reach gold as `unknown`, because staging re-reads a three-day
window and never revisits them. The seats the pre-2.2.0 `status = 'active'`
filter dropped at staging time are still in Bronze — the vendor restates that
status as of the read rather than as of the metric date, so deactivating a seat
removed that person's whole history — and only a full re-read brings them
through. The roster rows admitted before 2.2.0's activity gate violate what
assert_ai_dev_usage_rows_active states. And the rows the old table-wide silver
watermark stranded return only when staging re-emits them: #2607 moved the
boundary to per-(tenant, source), which stops the loss without undoing it.

Safe now and not before. `full_refresh=false` on claude_team__ai_overage landed
in 2.2.0, and that model is the only place a past month's closing spend exists —
the endpoint keeps no history. It had to be on main before anything could read a
MAJOR version, or the rebuild would delete the months it protects. The rebuild
now skips it while class_ai_overage re-materialises from it.

The version is set by hand rather than by CI: claude-team is declarative and
carries no `images:` block, so the build's automatic minor bump never sees it.

Signed-off-by: Gregory Gogin <grigoriy.gogin@constructor.tech>
@Gregory91G
Gregory91G requested a review from a team as a code owner August 19, 2026 08:52
@Gregory91G Gregory91G added component:ingestion dbt / approved connector scope team:data Ingestion and dbt labels Aug 19, 2026
@Gregory91G Gregory91G self-assigned this Aug 19, 2026
@coderabbitai

coderabbitai Bot commented Aug 19, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 8dd2c6a5-557f-478f-ac4e-0a18dce8a6f3


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.

@Gregory91G
Gregory91G added this pull request to the merge queue Aug 19, 2026
Merged via the queue into main with commit f79fb73 Aug 19, 2026
65 of 68 checks passed
@Gregory91G
Gregory91G deleted the chore-claude-team-major-bump branch August 19, 2026 15:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component:ingestion dbt / approved connector scope team:data Ingestion and dbt

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ingestion: three Claude Team changes deferred the rebuild they needed — the guard is now on main

2 participants