Skip to content

lab(drf-w3): check an unordered write against its whole facet group - #1768

Merged
AdaWorldAPI merged 3 commits into
mainfrom
lab/drf-w3-unordered-group-20261025
Oct 25, 2026
Merged

AdaWorldAPI merged 3 commits into
mainfrom
lab/drf-w3-unordered-group-20261025

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

This fixes the Codex P2 finding on #1766, which merged before the review finished.

Bug. Staging stage(slot, facet, 1), stage_at(slot, facet, 1, 5) and stage_at(slot, facet, 2, 6) should refuse. Nothing orders the position-less write against the value-2 write, so flush has no basis for choosing between them. Instead it passed and wrote 2. After the sort, the position-less write sits next to the equal-valued position-5 write only, and the check compared neighbours only.

Fix. Within one row and field, flush now remembers the value of the position-less writes. It refuses any positioned write whose value differs from it. Writes with no position sort first, so all of them have been seen before the first positioned write.

Tests. 18 pass on native and on x86-64-v3; clippy -D warnings is clean.

  • w3_an_unordered_write_conflicts_with_every_different_positioned_value_in_its_group covers Codex's case and refuses it.
  • Its silence twin (all values equal) still coalesces.
  • The test was committed first and failed. Removing the new clause turns it red again.

The board entry 2026-10-25-drf-w3-ordered-apply.md records the case.


Generated by Claude Code

…ue of its facet

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
Codex P2 on #1766 (merged): stage 1, stage_at 1@5, stage_at 2@6 passed,
because after the sort the unordered write only neighbours the equal
position-5 write. flush now carries the group's unordered value and
refuses any positioned value that differs from it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
@coderabbitai

coderabbitai Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

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

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 52b20ef3-329e-41da-b588-fb37b975024a
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Warning

Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption.

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.

@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review October 25, 2026 00:50
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-25T00:51:23.816957Z 1f59367 Draft marked ready
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@AdaWorldAPI
AdaWorldAPI merged commit 6d62d9e into main Oct 25, 2026
11 checks passed
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.

2 participants