Repository navigation
Refuse unresolved and uncited Altra 2DPC operating rates - #10954
Conversation
…t in the held datasheet. The held Altra datasheet and Mt. Jade spec state DDR4-3200 at 2DPC and publish no rank-dependent derate, so the envelope table is now empty rather than an uncited transcription that would decide a 32-slot RAM buy. Co-authored-by: Cursor <cursoragent@cursor.com>
…el instead. The empty ceiling table already records that the held datasheet has no rank derate. Mix is now a two-arm Mt. Jade standing consumed by channel_effective_data_rate, with a RED for 1R+2R on one channel. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63200 is right: the one-constructor On
— sent from proud-carp-600 |
…el_effective_data_rate. effective_data_rate answered the same 1DPC/ceiling question as the admitted arm; rate_at now calls channel_effective_data_rate. memory_bandwidth stays Bandwidth — PopulationOption cannot express mixed ranks, so a second refuse type would be permanently green. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63205 — both findings held against the tree.
— sent from proud-carp-600 |
memory_bandwidth cannot express unlike slot ranks, so catching TwoDpcUnlikeRanksOnOneChannelRefused and still emitting Bandwidth was a §5 widen. Mix refuse stays on channel_effective_data_rate, where both slot ranks are caller-supplied; the one-module path uses cited_channel_clock. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63209 — the fabricate arm was a real §5 widen; it is gone.
The mix refusal stays where a mix can be authored: — sent from proud-carp-600 |
The FactCitation companion had no fold. The witness name still claimed a rank-dependent downclock after the body flipped to a held 3200 rate. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63216 — both findings held.
— sent from proud-carp-600 |
…tinel. An OCP 2DPC figure is corroboration, not a term that ceilings ASRock (or 1DPC). The uniform-rank helper now reports Bool on ChannelDataRate instead of 0-1 as Nat. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63225 — both findings held.
— sent from proud-carp-600 |
PopulationOption still cannot name two slot ranks, so a product refuse could not fire on a buyer path. Table 3 standing stays in the Mt. Jade module. Empty-table citation is one field on the table, not a sibling row. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63231 — both findings held; did not widen
— sent from proud-carp-600 |
…ensus import. GitHub's merge of this branch into an older main still imported grain_admits_single_cabinet after the helper was renamed; that is the declarations FAIL on required-witnesses-floor.
PopulationOption still names one module, so a 1R+2R refuse cannot fire on the bandwidth path. A witness-only Table 3 fold is dangling; the 3200 2DPC rate row stays as corroboration. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63273 — the finding held. Did not route Table 3 into
Deleted — sent from proud-carp-600 |
|
Mechanical merge of This PR's own lane ( What was done:
Why the prior reviews still describe this head. The merge is verifiably content-free:
The subject the reviewers approved is unchanged. Had the merge produced any conflict, the instruction Freshness, by ancestry rather than push time: The push was necessary because this head predated gunbc#10992, so its runs were reproducing an Push-time timestamps were explicitly retired as a freshness test earlier tonight, after they The PR remains |
…10992. The previous floor red was interrupted_before_verdict on those four claims against a 500ms CPU budget; claims_failed=0. This merge pins the post-01:47:59Z main ref instead of replaying the stale one.
…a min. The datasheet figure already sits on the context at construction. Minning altra_memory_max_data_rate in the product fold forked that fact and would clamp a non-Altra context without a refusal. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63496 — held. Deleted — sent from proud-carp-600 |
The Altra DS is silent on rank derate; attaching CitedToAuthority to that silence treated absence as a positive warrant. Section 7.1 actually publishes DDR4-3200 at 2DPC. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63528 — held. — sent from proud-carp-600 |
briansrls
left a comment
There was a problem hiding this comment.
HOLD: removing the uncited 2933/2400 table is correct, but this head replaces one unsupported inference with another.
“Up to DDR4-3200,” “up to 2 DPC,” and Mt Jade's feature-list phrase “DDR4-3200 (2DPC)” establish a platform capability/ceiling. They do not establish that every 1R, 2R, and 4R two-DIMM population operates at 3200. The absence of a published rank-dependent table is an unresolved input, not a cited empty table whose default is the maximum.
Today altra_two_dpc_ceilings.rows = [] plus cited_channel_clock makes the absence executable as 3200, and two_dpc_keeps_the_cited_rated_rate_across_ranks positively asserts 1R/2R/4R at 3200. That is exactly the inference the source does not carry. The gated AVL/layout material being unread cannot prove a derate, but it also cannot prove there is none.
Please:
- keep 2933/2400 retracted as uncited;
- represent the per-population effective rate as unresolved unless an exact authority or an identity-bound observation supplies it;
- keep the cited 3200 value as a maximum/platform capability, not a default row for every rank count;
- add a control showing that deleting all rank-specific rows does not manufacture an admitted effective rate;
- keep #11068's same-channel 1R/2R refusal as a separate population-admission constraint and do not turn different-channel
TBDinto a speed result.
This head is also behind current main and its required witness run is red; neither condition should gate #11066/#11068/#11071 or the unit-1 receipt recut.
…ling. The cited 3200 figures remain a platform maximum. A 2DPC effective rate is unresolved until a rank-specific row or an identity-bound observation supplies it, so emptying the table cannot manufacture an admitted clock. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Answering the operator CHANGES_REQUESTED on this PR (GitHub review at 17:38Z): empty rank-specific 2DPC rows no longer execute as DDR4-3200.
— sent from proud-carp-600 |
…prohibition (#10982) * State epistemic humility in DESIGN: deduced fact, typed bet, over-prohibition. The corpus already typed warrant standing and asymmetric supplier hypotheses; the document did not name the three-way duty, so over-claim and over-forbid kept looking like rigor. Co-authored-by: Cursor <cursoragent@cursor.com> * Keep the over-prohibition receipt on main's typed-uncited rows. Co-authored-by: Cursor <cursoragent@cursor.com> #10954's source reading is that PR's finding; DESIGN must not settle it while the PR is open and the AVL unread. Same standing for gunbc-private #54's unlanded retraction. --------- Co-authored-by: Brian Searls <briansearls1@gmail.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Review 63993: a sentinel 0-1 greens the rank-starved bandwidth claim if either side refuses, and emptying production rows left apply_rank_ceiling_row without a positive control. Match the reading in the witness, and enroll a fixture table that is not an Ampere publication. Co-authored-by: Cursor <cursoragent@cursor.com>
|
review 63993 held on both findings.
16/16 — sent from proud-carp-600 |
An empty rank table must not turn the cited DDR4-3200 platform ceiling into an operating rate for every two-DIMM population. The uncited 2933/2400 transcription remains retracted. Missing rank-specific rows now produce a typed unresolved clock and bandwidth, carrying DIMMs per channel, rank count, and the platform maximum.
Matching rows must also carry
CitedToAuthorityevidence.TranscribedUncitedrows refuse with their read obligation; missing rows and uncited rows have distinct causes. The admitted-path fixture cites its own synthetic data and establishes no Ampere operating rate. Gated AVL/layout material remains unread and proves neither a derate nor its absence.The controls cover empty tables, nonempty uncited tables, and matching cited fixture rows capped by the platform maximum. #11068 owns the separate same-channel 1R/2R population constraint: this change does not alter that rule or turn different-channel
TBDinto a speed result.Mutation validation at
abad65677336034460dd2bcae7f43a46111223b0was run by parent sessioncrisp-lynx-452in an isolated detached worktree using/cargo-target/release/gunbc. ItsProcessExitdriver checksemptying_rank_specific_ceiling_rows_does_not_admit_an_effective_rate(ARM1) beforeuncited_rank_specific_rows_do_not_admit_an_effective_rate(ARM2), with named failure reasons. The production file was restored from a pristine copy between mutations. Run receipt: dashboard messagemsg_44d1f664-cf18-4212-bd28-5f069a17fa67(logs retained by that session).Absent => ChannelClockAdmitted { rate: platform_max }ARM1 EMPTY_ROWSfailsTranscribedUncited => ChannelClockAdmitted { rate: min_rate(a: ceiling, b: platform_max) }ARM2 UNCITED_ROWSfailsThus each control passes intact and detects its corresponding faulty arm. The provenance mutation also demonstrates that the empty-table control alone cannot catch uncited-row admission. The uncited control asserts
RankSpecificRateUncitedand its read obligation, so refusal with the wrong cause does not pass.Earlier infrastructure attempts in
smart-crab-414did not evaluate controls: the remote compiler built, but the interpreter exited 101 withHostBudgetUnreadable; the local build exited 101 because this container cannot write/cargo-target/release. These remain infrastructure findings, not semantic reds.Required CI on this exact head and the operator's re-review remain pending. The operator's
CHANGES_REQUESTEDis not cleared by a push.Static validation:
git diff --checkpassed. No effective speed is established for the fleet purchase by this PR.