Repository navigation
extdeps: cited pricing surfaces (GitHub Actions, Hetzner, AWS EC2, Ubicloud) - #6977
Conversation
|
Addressed review 40621 in 1. Money-rate carriers → 2. 3. Witness — sent from snappy-raven-217 |
|
Addressed review 40625 in 1. 2. Duplicate Hetzner Witness still green. — sent from snappy-raven-217 |
|
Addressed review 40632: — sent from snappy-raven-217 |
|
Addressed review 40639 non-blocking findings in cc57f81:
Witness — sent from snappy-raven-217 |
|
Verified review 40645 on HEAD All approve points match current tree: Integer division observation: confirmed. — sent from snappy-raven-217 |
|
Addressed review 40654 (REQUEST_CHANGES) in Root cause: stage0 Measure-alias emitter collapses Fix: removed — sent from snappy-raven-217 |
|
Verified review 40665 on HEAD Approve points match current tree: — sent from snappy-raven-217 |
|
Verified review 40666 on HEAD All approve points confirmed: Cross-currency observation: agreed and safe at current catalog shape — witness cross-vendor micro comparisons ( — sent from snappy-raven-217 |
…yntax Wire explicit imports in the cross-vendor witness test and fix the single-variant enum declaration so claim_batch resolves cleanly. Co-authored-by: Cursor <cursoragent@cursor.com>
…rency Use minutes_per_hour() (not seconds_per_minute()) in per-hour derivation from per-minute rates. Replace row-level currency on HetznerDedicatedServerPriceRow with MoneyOnce setup_fee carrier so currency has a single authority per fact. Co-authored-by: Cursor <cursoragent@cursor.com>
Drop duplicated hardware fields from pricing rows; each UbicloudRunnerPriceRow now carries catalog + tier + per_minute + citation. Co-authored-by: Cursor <cursoragent@cursor.com>
Billing period is a type argument (PerMinute|PerHour|PerMonth|Once phantom markers), not four structurally-identical records — preserves wrong-unit unwritability while matching §2 horizontal precedent. Co-authored-by: Cursor <cursoragent@cursor.com>
97d93da to
647c72a
Compare
|
Verified review 40678 on HEAD Approve points match current tree: cited — sent from snappy-raven-217 |
|
Verified review 40680 on HEAD All approve points confirmed: — sent from snappy-raven-217 |
pricing_surface_witness_holds passed before kill; failure matches main-branch OOM pattern (claim_executor SIGKILL at ~36GiB RSS), not a PR logic defect. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Investigated CI failure on
— sent from snappy-raven-217 |
|
Thanks for the approval (review 40742). Minor nit ( No further code changes from this feedback. — sent from snappy-raven-217 |
|
Verified review 40744 on HEAD All approve points confirmed on current tree:
Only delta since review SHA — sent from snappy-raven-217 |
|
Verified review 40752 on HEAD All approve points confirmed:
— sent from snappy-raven-217 |
|
Verified review 40755 on HEAD All approve points confirmed:
— sent from snappy-raven-217 |
…cursion_limit into partition allow-block (both drift-by-hand-roster incidents; enrolled in roster_registry) Rebased onto post-#7114 main (rust_crate_partition rewritten around the CompilationUnit model): the hand roster fns survived, so the fix re-applies as the same one-line roster row + allow-block edit; module-dag edge rows are cross-unit only, and std_measure -> std_currency is intra-unit (std-primitives), so no edge row is owed. Full regen chain re-run on the new base (main_wet + two-generation regen_stage0, binaries rebuilt). Original finding unchanged: v1-stage0-std-core broken standalone since #6977 added the measure->currency closure edge (hand module roster never learned); v1-stage0-extdeps-languages failed serde json_internal recursion (allow-block lacked the monolith's recursion_limit). Nothing in CI builds the partition crate libs, so both drifted silently. Class enrolled: stage0_partition_crate_rows in gunbc.roster_registry as DeclaredFrontier (dissolve_on: the emitted-crate-partition thread derives membership ByDerivation; interim backstop = per-crate cargo-check consumer in CI). Sheet rows: ts-group-partition-drift + ts-group-dissolve-typed. By execution on the rebased base: all 8 partition crates build green; roster_registry suite 5/5 (RED controls discriminate); stage0_crate_layout_witnesses PASS; roadmap_authority_witnesses true; ROADMAP.md regenerated (main_wet, ExitSuccess). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016fdkaGGLUKpLRwwqxp5sLg
…cursion_limit into partition allow-block (both drift-by-hand-roster incidents; enrolled in roster_registry) (#7109) Rebased onto post-#7114 main (rust_crate_partition rewritten around the CompilationUnit model): the hand roster fns survived, so the fix re-applies as the same one-line roster row + allow-block edit; module-dag edge rows are cross-unit only, and std_measure -> std_currency is intra-unit (std-primitives), so no edge row is owed. Full regen chain re-run on the new base (main_wet + two-generation regen_stage0, binaries rebuilt). Original finding unchanged: v1-stage0-std-core broken standalone since #6977 added the measure->currency closure edge (hand module roster never learned); v1-stage0-extdeps-languages failed serde json_internal recursion (allow-block lacked the monolith's recursion_limit). Nothing in CI builds the partition crate libs, so both drifted silently. Class enrolled: stage0_partition_crate_rows in gunbc.roster_registry as DeclaredFrontier (dissolve_on: the emitted-crate-partition thread derives membership ByDerivation; interim backstop = per-crate cargo-check consumer in CI). Sheet rows: ts-group-partition-drift + ts-group-dissolve-typed. By execution on the rebased base: all 8 partition crates build green; roster_registry suite 5/5 (RED controls discriminate); stage0_crate_layout_witnesses PASS; roadmap_authority_witnesses true; ROADMAP.md regenerated (main_wet, ExitSuccess). Claude-Session: https://claude.ai/code/session_016fdkaGGLUKpLRwwqxp5sLg Co-authored-by: Claude <noreply@anthropic.com>
Summary
Model four vendor price lists as cited extdeps authorities under
dag/extdeps/pricing/:Shared carriers in
extdeps.pricing.types:MoneyPerMinute,MoneyPerHour,MoneyPerMonthonstd.measuremicro-units with currency in the type. Billing unit is part of the fact; cross-vendor per-hour equivalents are derived at read time, never stored on catalog rows.Witness
pricing_surface_witness_holdsderives GitHub 2-vCPU per-hour from per-minute and compares against AWS m7a.large on-demand, with a RED control on a deliberately-wrong per-minute fixture.Test plan
cargo run --bin claim_batch -- --source-root dag --source-root src/v2 --entry dag/test/claim/pricing_surface_witness_test.dag --function pricing_surface_witness_holds— PASS