Conversation
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
|
CI note / baseline comparison: The PR run ( This is the same pre-existing workflow failure shape as the winner/base branch at Independent Keeltrace proof for the underlying RCS hardening line is green ( I am therefore treating the full-repo lint result as an inherited base-branch blocker, not papering it over in this narrow release-hardening PR. |
FD-RCS-004/005/006/007/008 Retained from KeelTrace PR naormeit#6 (head 3aacca3): - RCS consent fallback resolver and its focused Asterism tests - Asterism test source-set/JUnit wiring - fail-closed Constellation signing - null-or-empty Gaia ID recovery Why retained: - each target defect is still present on the selected 276523b baseline - the resolver fixes the code/proto mismatch where top-level rcs_consent was ignored - returning an empty signature hides signing failure as malformed auth - null GoogleUserId must follow the same recovery path as an empty value Foundragon boundary: - exact Gaia-vs-RCS precedence is still tracked as an evidence frontier; this commit preserves KeelTrace's tested precedence behavior but does not claim external stock proof for the disagreement case - signing and Gaia recovery still require dedicated Foundragon failure-path regressions before those ledger items are marked CLOSED Contributor credit: KeelTrace / keeltrace/GmsCore
Port only the non-overlapping KeelTrace hardening exercised by the private Foundragon validator: explicit signing failure, null-or-empty Gaia ID recovery, and the follow-up Gaia logging repair. Original-Commits: - b0db179 - 57e43af - 3aacca3 Source-PR: naormeit#6 Authorship/implementation credit: KeelTrace Consent commits from that PR are intentionally not re-imported because the Anusha integration already supplies the overlapping consent resolver path.
Scope
This is a release-hardening follow-up stacked directly on the current
rcs-bounty-2994head used by microg#3784. It is not a competing microg#2994 implementation and does not replace or re-claim the underlying bounty solution.Base verified before submission:
276523b1d3e136b5b6e4ba0cf3f505b6702d60e2(includes the multipart MT-SMS fix merged in #5).Hardening changes
rcs_consentwhen no matching Gaia consent entry exists, while keeping a matching Gaia consent authoritative when present.GoogleUserIdis either missing (null) or empty, rather than only when it is exactly the empty string.Release intent
The goal is to reduce silent failure modes and carrier/account-dependent edge cases in the consolidated microg#2994 release candidate while preserving all existing winner functionality beneath this branch.
Non-claims
Verification
The branch is rooted exactly at the current
rcs-bounty-2994head and is 0 commits behind it at submission time. CI should exercise the full project build/lint lanes; the added Asterism tests specifically cover the new consent resolver behavior.Related: microg#2994, microg#3784.