allowing CIDRs, wildcards and Plural in IP and DNS#324
Conversation
|
Warning Review limit reached
More reviews will be available in 55 minutes and 58 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (18)
✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
🧩 Analysis chain
🏁 Script executed: Length of output: 21242
Atomicity Confirmation
Cross-PR Coupling Flags🔴 File-Level Conflicts (merge order matters)1. node-agent#808 ↔ node-agent#809 — 2. node-agent#808 ↔ node-agent#812 — 3. node-agent#807 ↔ node-agent#811 — 🟡 Ordering Dependencies (no file conflicts, but merge sequence required)4. storage#323 → storage#325 5. storage#324 → node-agent#806 6. storage#325 → node-agent#808 Recommended Merge Sequencegraph TD
A[storage#322] --> E[storage#326 umbrella]
B[storage#323] --> C[storage#325] --> E
D[storage#324] --> F[node-agent#806] --> K[node-agent#810 umbrella]
C --> G[node-agent#808]
H[node-agent#811] --> I[node-agent#807] --> K
J[node-agent#812] --> G
G --> L[node-agent#809] --> K
A --> E
D --> E
H --> K
J --> K
F --> K
In short: the three intra-node-agent file conflicts ( ✅ Actions performedReview triggered.
|
| // IPAddresses is the v0.0.2 list-form replacement for IPAddress. | ||
| // Each entry MAY be a literal IP, a CIDR (a.b.c.d/n), or the "*" sentinel. | ||
| // See pkg/registry/file/networkmatch for matcher semantics. | ||
| IPAddresses []string `json:"ipAddresses,omitempty" protobuf:"bytes,9,rep,name=ipAddresses"` |
There was a problem hiding this comment.
Blocking: IPAddresses is added here, but the generated protobuf/conversion/deepcopy code is unchanged, so the field is silently dropped on real storage paths. The new TestNetworkNeighbor_IPAddresses_ProtobufRoundtrip already fails (go test ./pkg/apis/softwarecomposition/v1beta1). Please regenerate generated.pb.go, conversion code, and deepcopy code for this field before merge.
There was a problem hiding this comment.
This has now been addressed and the PR compiles standalone
matthyx
left a comment
There was a problem hiding this comment.
Blocking: IPAddresses does not survive marshal/unmarshal today. The new protobuf roundtrip test fails because generated.pb.go, zz_generated.conversion.go, and zz_generated.deepcopy.go were not regenerated for the new field, so the API loses data on storage/conversion paths. Please regenerate the generated artifacts (and ideally add conversion/deepcopy regression coverage) before merging.
0a8a0b8 to
6473d36
Compare
Signed-off-by: entlein <einentlein@gmail.com>
Signed-off-by: entlein <einentlein@gmail.com>
…nal state Signed-off-by: entlein <einentlein@gmail.com>
NetworkNeighbor.IPAddresses (added on this branch) was missing hand-edited entries in the Marshal/Size/String/Unmarshal stanzas of generated.pb.go, the proto declaration, both conversion functions, and the internal+v1beta1 deepcopy. Result: TestNetworkNeighbor_IPAddresses_ ProtobufRoundtrip failed and the field was silently dropped on every real storage write. This patch adds the missing codec for field 9 (repeated string, wire tag 0x4a), the .proto declaration, the conversion stanzas in both directions, and the deepcopy slice copy in both type-system layers. Codegen pipeline is not run as part of build on this fork (the protoc image is x86_64-only); hand-edit follows the proven recipe from commit 0d83e2b / ad60a5b. Resolves matthyx review on network_types.go:68 (2026-05-27). Signed-off-by: entlein <einentlein@gmail.com>
6473d36 to
46f37d3
Compare
|
the failed test -> can we rerun- it passed on my arm64 3x in a row 🤷🏻♀️ |
Three matthyx blockers (2026-05-27): (1) tamper_alert.go:28 — imports pkg/signature and pkg/signature/profiles which ship in node-agent#809 (not yet merged). Adds minimum-surface stubs (pkg/signature/stub.go, pkg/signature/profiles/stub.go) so the PR compiles standalone. With IsSigned returning false, the tamper path short-circuits and never invokes Verify — the no-op stub is behavior- safe: signed-profile detection is dormant until kubescape#809 lands and replaces these files with the real implementation. (2) projection_apply.go:265 — NetworkNeighbor.IPAddresses missing. (3) mock.go:202 — same IPAddresses issue. Both (2) and (3) resolved by replacing kubescape/storage with k8sstormcenter/storage's upstream-pr/sbob-network tip 46f37d32 (sibling of kubescape/storage#324). Removed when kubescape#324 merges and a release ships IPAddresses.
|
Rechecked on current head The original protobuf/codegen blocker is fixed - Still blocking: |
Sorry, we do not accept changes directly against this repository. Please see
CONTRIBUTING.md for information on where and how to contribute instead.