Skip to content

Advertised certificate mismatch removes a verified site from routing #80

Description

@hexfusion

What would you like to be added:

verify_peer_certificate should record an advertised-certificate mismatch rather than return a failing outcome, and the docs should be made consistent about it.

Why is this needed:

The documented contract is inconsistent. auth.md describes Mutual-mode verification as checking "the live leaf certificate against spec.trust.canonicalFingerprints" and says publicCertPem "does not indicate the remote site is authenticated or authorized for routing". operations.md documents the advertised check and its demotion, and crds.md tabulates the same. This proposes adopting the auth.md reading and correcting the other two.

The advertised copy has no trust consumer. Roots come from spec.tls.caSecretRef, client identity from siteSecretRef, and pins from spec.trust; none reads status, and the rendered Praxis config carries mount paths rather than certificate bytes. So the check gates nothing, and its only effect is to move the site out of Active and therefore out of routing eligibility.

Two things suggest that response is disproportionate. The documented remedy is "wait for certificate gossip to converge", which is not a condition that should remove a site from routing. And the check is skipped entirely when the field is absent, so it only affects peers that do advertise.

Keeping the detection looks worthwhile. Acting on it is probably the part worth removing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions