Document multi-value claims with rowBoundaries operator:in (and their per-record application)
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 70/100
- Loại issue
- Tài liệu
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- markdown, rust, yaml
- Lĩnh vực
- documentation
Hướng nghiên cứu
Bắt đầu bằng cách đọc crates/registry-breg/src/api/mod.rs (~2849) và authority.rs (~190) để xác nhận xử lý đa giá trị của In, sau đó auth.rs và context.rs cho per-record AND. Tìm tài liệu authoring (vd. docs/) và thêm một phần về các claim đa giá trị với operator: in, hành vi fail-closed, và đề cập bregctl explain access. Done nghĩa là docs bao phủ rõ ràng cú pháp dev-clients và các chế độ thất bại thầm lặng.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
rowBoundaries supports operator: in with multi-value claims, and the boundary applies independently to every referenced record of that type. This is the only way we found to model a caller authorized over several records of the same type in one action (e.g. a representative filing a merger over two companies), but it does not appear to be documented anywhere we looked, and the failure modes are silent.
Proven behaviour (live, origin/main 634eba0b2)
dev-clients.yaml accepts an array claim:
claims:
registry_represented_brns: [SAMPLE-LR-A, SAMPLE-LR-B]
and a target boundary:
targets:
- recordType: company
rowBoundaries: [{field: brn, claim: registry_represented_brns, operator: in}]
- an action with two
companyreference inputs is authorized only when both referenced records match the claim set → a caller holding only[SAMPLE-LR-A]is refused at proposal start when the second company isSAMPLE-LR-B(exactly the "one-company representation is insufficient" authority check our benchmark needed) - a missing claim fails closed (
row-claim-missing-or-wrong-cardinality/ concealed) equals+ an array claim is denied; onlyinaccepts multi-value- one dev client per access profile may be claim-free (the "default"); a second client with different claims needs explicit
testBindingsor dev session start refuses with "a shared local access profile needs at most one default client"
Source pointers
crates/registry-breg/src/api/mod.rsverified_row_boundaries_from_sources(~2849) —Equalsrequires exactly one claim value;Incarries all valuescrates/registry-breg/src/authority.rs~190 —multi_valueset forBoundaryOperator::Incrates/registry-breg/src/auth.rsmap_authority_claim(~799) — array claims mapped per entrycrates/registry-breg/src/postgres/context.rssnapshot_matches_boundaries(~1243) — per-record AND semantics
Ask
Document multi-value claims + operator: in (dev-clients syntax, per-record application, fail-closed behaviour) in the authoring docs; a bregctl explain access mention would also help. If per-record application is not intended semantics for multi-reference actions, that is worth stating explicitly too.
- Ngôn ngữ chính
- Rust
- Star
- 2
- Fork
- 0
- Merge trung bình
- 8 giờ 49 phút
- Pull request đã merge (30 ngày)
- 264
Chuẩn bị môi trường
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của registrystack/registry-stack
-
area:breg criticality:p3 documentation good first issue triage:needs-implementation
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
registrystack/registry-stack#2415 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
scheduling: profile refusals on appointment detail, busy-import and operational routes log nothingĐang mởarea:scheduling criticality:p3 enhancement triage:needs-implementation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
registrystack/registry-stack#2412 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
registrystack/registry-stack#2381 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area:docs documentation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
registrystack/registry-stack#2253 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area:coordinator bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
registrystack/registry-stack#2252 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của registrystack/registry-stack
Issue tương tự
-
bug priority: P3 ready-for-agent
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
shep-pm/shep-kelpie#1332 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
ramensoftware/windhawk#1156 · 2 bình luận ·
-
units: No `#` in rustdoc headingCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 67/100
rust-bitcoin/rust-bitcoin#7089 · 1 bình luận · 1 reaction ·
Maintainer thường phản hồi trong vòng 2 ngày
-
phase:3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
pchrysostomou/ananke#183 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area/tools bug session-analysis
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày