fix(evidence): GPU pass fusion stack 4/5 — acceptance - #2169
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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. Comment |
Confidence Score: 4/5The PR should not be treated as completing performance acceptance until the committed benchmark run satisfies the primary, repeat-stability, and control/barrier gates. The current manifest consistently rejects overall acceptance: the primary confidence interval crosses 1.0, baseline repeats are unstable, and control/barrier checks fail; the report and unchecked T123 task correctly preserve that unresolved state. Files Needing Attention: docs/specs/004-gpu-pass-fusion/evidence/acceptance-report.md; docs/specs/004-gpu-pass-fusion/evidence/paired-benchmark-run/manifest.json Important Files Changed
Reviews (41): Last reviewed commit: "docs(evidence): GPU pass fusion stack 4/..." | Re-trigger Greptile |
Code Review BotNo comment/code divergences or documentation drift (partially analyzed) detected. Reviewed 70 file(s); skipped 209. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 47df808591
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
47df808 to
4b1c0be
Compare
4b1c0be to
7154618
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 715461816c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
7154618 to
4c2eec7
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4c2eec75b6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
9f24d6d to
52834ec
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 52834ec625
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
52834ec to
dab02df
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: dab02df814
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
dab02df to
0195b0c
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0195b0cd1b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
0195b0c to
dd5ff9f
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: dd5ff9f494
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
e7e2388 to
599990f
Compare
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b7697b9362
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ea22887fea
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6deee60b78
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Review summary 4836840267 was rechecked and does not require a code change. The AGENTS.md test-project list is explicitly introduced as examples rather than an exhaustive inventory, and the latest drift review reports no drift. The benchmark harness remains documented and authenticated in the feature evidence contracts. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7cf5f783da
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
beutl/tests/Beutl.Benchmarks/Rendering/PairedBenchmarkAnalyzer.cs
Lines 1472 to 1473 in f0178e8
Require these fields to equal <caseName>.setup.rgba16f and <caseName>.measured.rgba16f, and reject duplicate or unreferenced mappings. Currently a harness instrumentation regression can point both phases at one blob while leaving the nominal second file in output-blobs; validation follows only the counter references, while HashDirectory and the archive test merely authenticate that the unused file exists. For static cases whose setup and measured contracts are normally identical, this can make the archive claim an independently captured measured frame without ever validating it; add an NUnit regression for the duplicate-mapping case.
AGENTS.md reference: AGENTS.md:L50-L50
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
1 similar comment
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
0a47569 to
843e508
Compare
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
1 similar comment
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
No TODO comments were found. |
843e508 to
3c9fb04
Compare
|
No TODO comments were found. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
The paired A/B benchmark archive, the frozen visual baselines, the acceptance harness that verifies them, and the corpus-backed analyzer (PairedBenchmarkAnalyzer, FeatureVisualEvidenceExporter, BenchmarkHarnessProvenance, and their tests) ship here with the 61.5 MiB corpus. The target-benchmark harness, paired-runner scripts, manifests, and RGBA16F blobs are pinned by the acceptance report and verified by the archive tests. The migration census returns to 242 test overrides; the FrameProviderImpl retention-heuristic test and the ownership-transfer contract tests stay excluded with their separately shipped changes; the personal Codex store ignore entry is dropped.
Minimum allowed line rate is |
3c9fb04 to
e41a935
Compare
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
No TODO comments were found. |
|
Superseded by #2221, which merges every layer of this stack into one branch, propagates the s2 reduction through layers 3–5 (this stack no longer built above s2), and drops the 61.5 MB evidence archive. |
Description
Stacked-PR slice 4/5 of
speckit/004-gpu-pass-fusion.This slice contains the persistent-lifetime BenchmarkDotNet harness, paired analyzer, immutable starting-SHA visual baseline, paired visual and benchmark archives, evidence-anchored tests, and the T115/T123 acceptance report.
The final paired visual run passes all 44 scenes. The final paired benchmark archive is complete and fail-closed, but formal performance acceptance remains false: the primary 95% confidence interval crosses the acceptance boundary, baseline repeat stability fails, and the control/barrier gate fails under documented host contention. T123 therefore remains pending; this PR does not lower thresholds or reinterpret the failed run as acceptance.
Stack
speckit/004-s1-spec— specification and contractsspeckit/004-s2-engine— record-then-plan engine and consumer migrationspeckit/004-s3-tests— pipeline and rendering test suitesspeckit/004-s5-shader-migration— built-in Shader migration, excluding Blur and DropShadowAffected areas
Beutl.Engine(rendering / scene / track)Beutl.ProjectSystem(project / document persistence)Beutl.Editor,Beutl.Editor.Components,Beutl.Controls)Beutl.Extensibility(plugin abstractions)Beutl.NodeGraph(node editor)Beutl.FFmpegIpc/Beutl.FFmpegWorker(media IPC boundary)Beutl.Api(server API client)Breaking changes
None in this slice.
Review follow-up (2026-08-09)
MixedSpatialColoracross target and feature as Gamma → Blur(3,3) → Invert → Opacity(0.8) → ChannelRotate, aligned complete-target clipping, and pinned stage order plus resource lifetime in tests.scene3d-with-2d-tailsemantic baseline and refreshed every dependent trust anchor.All ten unresolved inline review threads were answered and resolved. The non-actionable drift-review summary was also rechecked and answered.
Evidence status
86fd3e92f1bb578f2b404d41c35fea4a61a93b759f5061051a935e59acd91260.0.96147(required>= 0.95).f10ab3ba6f03f36621c9e4254d7cb9467481fce301245b75434855e75b2c9303.0.8388; 95% CI[0.6410, 1.0082].overallAcceptancePassed: false; T123 remains pending.Test plan
bash -n.dotnet format --verify-no-changes, trust-anchor byte-hash cross-checks, and sourcegit diff --check: passed.Fixed issues / References
Review follow-up (2026-08-10)
Final historical manifest SHA-256:
f10ab3ba6f03f36621c9e4254d7cb9467481fce301245b75434855e75b2c9303. Historical feature provenance remains01c70637and is not relabeled as final-S3/current-HEAD performance evidence. All localized gates pass; primary, repeat-stability, control/barrier, and overall formal gates remain false, so T123 remains pending.Validation: fresh solution build 0 warnings / 0 errors; evidence tests 120/120; GPU live/frozen diagnostics 56/56 with no skips; TargetScope/allocation/pool 91/91; Headless lifecycle 4/4; PublicApiContractTests 212/212; SourceGeneratorTest 30/30; solution format 3,470 checked / 0 changed; script syntax, GPL boundary, hash, ancestry, and diff checks passed.