Skip to content

feat(cost): compare streaming summary lifecycles - #334

Merged
zzylol merged 4 commits into
mainfrom
feat/cost-streaming-lifecycle-ranking
Sep 4, 2026
Merged

zzylol merged 4 commits into
mainfrom
feat/cost-streaming-lifecycle-ranking

Conversation

@zzylol

@zzylol zzylol commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Why

A streaming resource estimate is not enough to choose whether one summary state should be ephemeral, prepared, shared, or continuously maintained. Those alternatives have different legality constraints and different build, update, retention, read, and retirement schedules.

What

Connect analytical streaming resource estimates to the existing summary-maintenance lifecycle alternatives without defining a second lifecycle domain model.

How

  • Convert build, update, read, retention, and retirement resources into lifecycle cost inputs for one summary state.
  • Apply the existing lifecycle legality and runtime-capability checks before ranking.
  • Evaluate alternatives over the same workload horizon and recurrence evidence.
  • Leave missing resource evidence unavailable rather than substituting zero.

Before this PR

Streaming resource dimensions could be estimated, but lifecycle alternatives were not compared with those estimates.

After this PR

Each legal lifecycle alternative for an individual summary state can be compared over one horizon using all evidence required by that lifecycle estimate. This PR does not yet claim that a nested SummaryExpr DAG is complete; #335 adds recursive whole-DAG accounting and shared-node deduplication.

Verification

  • cargo test --workspace
  • cargo clippy --workspace --all-targets --all-features -- -D warnings
  • cargo fmt --all -- --check

Stack

Depends on #331. #335 adds complete SummaryExpr DAG estimation.

@zzylol
zzylol force-pushed the feat/cost-streaming-linear branch from 6875361 to a239227 Compare September 3, 2026 16:29
@zzylol
zzylol force-pushed the feat/cost-streaming-lifecycle-ranking branch 2 times, most recently from f88029c to 77658a1 Compare September 3, 2026 16:45
@zzylol
zzylol force-pushed the feat/cost-streaming-linear branch from 1a7bc53 to 81fb4e3 Compare September 4, 2026 00:01
@zzylol
zzylol force-pushed the feat/cost-streaming-lifecycle-ranking branch from 089c8c1 to 40db2f1 Compare September 4, 2026 00:12
@zzylol
zzylol force-pushed the feat/cost-streaming-linear branch from 93ff779 to 2e98ec3 Compare September 4, 2026 02:25
@zzylol
zzylol force-pushed the feat/cost-streaming-lifecycle-ranking branch from 40db2f1 to 0219280 Compare September 4, 2026 02:25
@zzylol
zzylol force-pushed the feat/cost-streaming-linear branch from 2e98ec3 to a090454 Compare September 4, 2026 02:49
@zzylol
zzylol force-pushed the feat/cost-streaming-lifecycle-ranking branch from 0219280 to d72457a Compare September 4, 2026 02:50
@zzylol
zzylol force-pushed the feat/cost-streaming-linear branch from a090454 to ddf6067 Compare September 4, 2026 03:25
@zzylol
zzylol force-pushed the feat/cost-streaming-lifecycle-ranking branch from 48c15ca to 6e60fab Compare September 4, 2026 03:26
@zzylol
zzylol force-pushed the feat/cost-streaming-linear branch from ddf6067 to e9cb271 Compare September 4, 2026 04:01
@zzylol
zzylol force-pushed the feat/cost-streaming-lifecycle-ranking branch from 6e60fab to b4c5480 Compare September 4, 2026 04:01
@zzylol
zzylol changed the base branch from feat/cost-streaming-linear to main September 4, 2026 11:26
@zzylol
zzylol merged commit 3ff2062 into main Sep 4, 2026
3 checks passed
@zzylol
zzylol deleted the feat/cost-streaming-lifecycle-ranking branch September 7, 2026 15:51
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.

1 participant