Repository navigation
dir-sim: #321 review follow-up (exact bag-member names, SID transform, DNS-label tenant) - #322
Merged
Merged
Conversation
Codex and CodeRabbit on #321, each reproduced by a failing test first: - Codex P2 / CodeRabbit: the bag-member check parsed the suffix, so extensionAttribute01 counted as member 1 and was neither stored nor reported as ignored; it also sliced by byte length and could panic on a multi-byte name. ogar_dir_core::schema::bag_member_of accepts only the canonical spelling and uses a checked split. - Codex P1: objectSid is binary in AD, onPremisesSecurityIdentifier is the S-1-... string in Graph. New SyncTransform::SecurityIdentifier and ogar_dir_core::sid::sid_to_string ([MS-DTYP] 2.4.2), tested against an independently computed vector and on malformed lengths. - cloud_of resolves a numbered extension attribute to the bag entry, canonical spelling only. - routing_parts requires the tenant to be a DNS label (letters, digits, hyphens), not just free of '@' and '.'. - Doc: the bag's zero-based offset and bag_member's 1-based index are stated separately. 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
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing (10)
✨ Finishing Touches📝 Generate docstrings
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. Comment |
AdaWorldAPI
marked this pull request as ready for review
October 7, 2026 21:58
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
#321 was merged while its review fixes were being pushed, so
ace0918reached the branch but notmain. This PR carries only that commit. Codex and CodeRabbit raised six findings on #321; each was reproduced by a failing test first.extensionAttribute01counted as member 1 and was neither stored nor reported as ignored. It also sliced by byte length and could panic on a multi-byte name.ogar_dir_core::schema::bag_member_ofaccepts only the canonical spelling: the bag name in any ASCII case, then 1..=15 with no leading zero, sign or space. It uses a checked split.ogar-adnow reportsextensionAttribute01as ignored.objectSidis binary in AD, andonPremisesSecurityIdentifieris theS-1-…string in Graph.SyncTransform::SecurityIdentifierandogar_dir_core::sid::sid_to_string, per [MS-DTYP] 2.4.2: big-endian 48-bit authority, little-endian sub-authorities, and a length that must match the sub-authority count.cloud_ofresolves a numbered extension attribute to the bag entry. Only the canonical spelling counts:extensionAttribute7resolves,extensionAttribute07andextensionAttribute16do not.routing_partsrequires the tenant to be a DNS label: letters, digits and hyphens, no leading or trailing hyphen.bag_member's 1-based index are stated separately.Tests
The workspace passes 1008 tests; fmt and clippy
-D warningsare clean. New tests:bag_members_are_named_exactly;a_binary_sid_renders_as_its_string_form, against an independently computed vector (S-1-5-21-1004336348-1177238915-682003330-512) plusS-1-1-0, with malformed lengths refused;extension_attributes_are_one_bag,every_synced_attribute_exists_on_both_sides_onceand the routing-template test.Disable runs, each red on a named test:
OnPremisesEvidence;cloud_ofwithout the bag fallback;cloud_ofwith a prefix match instead of the exact name;@or.";Merge order
This does not break lance-graph: nothing there uses
SyncTransformor the bag helpers, and lance-graph #1392'slance-graph-dir-simsuite passes against this head.🤖 Generated with Claude Code
https://claude.ai/code/session_01G22yT6htkcdyXsihxxXdrg
Generated by Claude Code