Establish certifiable Voting provider boundary

This commit is contained in:
2026-08-04 14:01:26 +02:00
parent 0168c5ecd5
commit 8cfd6bfd48
8 changed files with 371 additions and 2 deletions
@@ -21,8 +21,10 @@ from govoplan_core.core.voting import (
ExternalVotingCastRequest,
ExternalVotingFinalizationRequest,
ExternalVotingPreparationRequest,
VOTING_CERTIFICATION_NOT_CERTIFIED,
VotingReceipt,
VotingResult,
VotingProviderAssuranceDeclaration,
)
from govoplan_voting.backend.db.models import (
VotingConfidentialBallot,
@@ -49,6 +51,19 @@ class LocalConfidentialVotingProvider:
def __init__(self, registry: object | None) -> None:
self._registry = registry
def assurance_declaration(self) -> VotingProviderAssuranceDeclaration:
return VotingProviderAssuranceDeclaration(
provider_id=LOCAL_CONFIDENTIAL_PROVIDER_ID,
implementation_ref="govoplan-voting/local-confidential@1",
supported_assurance_profiles=("confidential",),
certification_state=VOTING_CERTIFICATION_NOT_CERTIFIED,
protocol_ref="govoplan:voting:local-confidential",
protocol_version="1.0",
notes=(
"Server-readable reference provider; no anonymity, secrecy, coercion-resistance, or certification claim.",
),
)
def prepare_ballot(
self,
session: object,