All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
This version -------- v1.108.0
Previous version ---- v1.91.2
Initial version ----- v1.29.14
Total commits ------- 39
- write in mapping change listener
- adjust write in handling
- add monitoring of asynchronous protocol exports
- report suffix for business level bz is "kantonal" instead of "bezirk"
- Enable electorates for non-zh
- Import ech-0110 count of voters informations
- Add proportional wabsti exports with a single political business
- Group lists in proportional election unions
- extend domain of influence type mapping with bezirk for report display name
- Double proportional election mandate algorithms
- database query monitoring
- proportional election union party votes export
- exports generated for export configuration should use same state of data
- Filter out votes with no e-voting results in detail e-voting protocol
- Label in sk stat csv export
- Add counting circle electorate
- correctly check write-ins with their ballot content
- add wp gemeinden sk stat export
- add candidate check digit
- adjusted proportional election end result protocols
- add new zh features flag
- added permission service
- csv proportional election candidates exports order
- Timestamp handling with result corrections
- csv proportional election candidates exports
- rework authentication system to use permissions instead of roles
- Add counting machine to counting circle details
- add eCH from voting lib
- add multiple vote ballots
- adjust log level for abraxas authentication values
- use proportional election id for empty list identificationcurity
- use separate port for metrics endpoint provisioning
- Delete protocol exports on counting circle reset
- add additional oauth client scopes for subsystem access authorization
- add support for custom oauth scopes.
- revert empty and invalid vote count for single majority mandate
- udpate to latest voting-lib version to fix role cache
- add vote end results to e-voting details result export
- add vote e-voting CSV report
- add dmdoc callback fail policy
- add dmdoc callback timeout parameter
- added vote e-voting details result protocols
- added vote result e-voting protocol
- avoid raising of additional ProtocolExportCompleted events if aggregate state is already completed
- delegate draft cleanup to background job by enqueuing it to cleanup queue
- schedule draft content cleanup after successful callback
- schedule hard draft cleanup for obsolete documents
- Add vote protocol e-voting fields
- update lib to add dmdoc callback retry
- clean up outdated draft on webhook callback
- correctly calculate count of modified lists for e-voting proportional elections
- correctly track e-voting vote sources
- use secury temporary file name for evoting uploads
- use latest lib to use new role token cache
- add logs for webhook callback
- Add e-voting proportional election list total results
- Add e-voting list end results to list union report
- Add missing evoting fields for protocols
- skip majority election ballot created if the bundle is deleted
- make PDF activity protocol smaller, add more detailed CSV version
- wabsti cwp list adjust zusatzstimmen
- wabstic wp gemeinde export total count of lists with party
- filter counting circle eVoting exports
- Use correct eventing meter event position
- add roles cache to minimize calls to iam
- Extend pdf proportional election ballot with whether all original candidates are removed from list
- upgrade voting library version to include event type processing histogram
- convert percentages in gemeinden export correctly
- revert counting pre-accumulated candidates in unmodified results
- Update lib to inject malware scanner config correctly
- Add wp gemeinden bfs export
- Added eVoting protocols
- use empty value if absolut majority is not yet calculated in WabstiC WM_Kandidat csv export.
- handle completely empty proportional election lists correctly
- enable automatic exports during testing phase
- malwarescanner - unless problem with cert-pinning is solved
- Skip processing of proportional election ballot create event if the bundle does not exist
- Update eai and lib dependency to deterministic version
- revert removal of ResultExportGenerated event
- malwarescanner service
- add sum of initial distribution number of mandates to pdf exports
- votes of ballots/bundles without a list should not count towards CountOfVotesOnOtherLists
- remove result export generated event and disable automatic exports during testing phase
- bundle review list without party
- rework party votes export
- malwarescanner temporary unless resolved problem
- activity protocol export should only be available if contest manager, testing phase ended and only for monitoring
- remove second factor transaction for owned political businesses
- malware scanner service
- add import change listener
- Extend wabsti csg abstimmungsergebnisse export with domain of influence type
- Sort contests depending on states
- Multiple counting circle results submission finished
- Add missing events to activity protocol
- Added modified lists count and lists without party count columns to csv proportional election candidates with vote sources export
- Make certain contact person fields required
- submission finish race condition with updated counting circle details prevented
- add db command timeout configuration
- Show correct read signed event count in activity protocol
- reset write ins for majority election
- add csv export for vote results
- moved creator from PdfMajorityElectionResultBundle to base class
- wabstic export vote id
- wabstic export vote id
- update cd-templates to resolve blocking deploy-trigger
- clear result values for initial state for wabstic majority election detail results report
- doi and cc sorting by name for protocols
- changed result export template entity description
- clear result values from certain states for wabstic majority election detail results report
- Make activity protocol for all monitoring admins available
- result start submission as contest manager should be possible
- allow enter results as contest manager in testing phase
- WabstiC Majority election results only results with state correction done or submission done.
- VOTING-2480: input-validation allow character "«»;&
- wabstic wahlergebnisse additional columns
- order candidate results for majority end result detail protocol by position
- wabstic wmwahlergebnis report
- Update end result finalized on simple political business
- rename export protocols
- Some reports should only show up for certain types of domain of influences
- add scoped dmdoc httpclient
- Apply relaxed policy in transient catch up processor to handle replay attacks
- add end result detail without empty and invalid votes protocol
- change voting card channel priority
- changed wabsti export column header
- change eCH-0222 import and test eCH export output
- remove internal description, invalid votes and individual empty ballots allowed from elections
- hide proportional election end result columns and protocolls before finalized
- Added export configuration political business metadata, needed for Seantis
- add on list for proportional election candidate pdf exports
- update library to extend complex text input validation rules with dash sign
- Fixed handling of event signature on exports
- add domain of influence canton
- Delete inherited domain of influence counting circles correctly on domain of influence delete
- add candidate origin
- add request recorder tooling for load testing playbook
- update voting lib to add transient subscription health check
- Changed public key signing
- Validate voting basis event signature in activity protocol
- adjust input validation
- insert vote aggregated result correctly in protocols
- filter not needed domain of influence results in protocols
- Added aggregated domain of influence results in protocols
- Removed contest details on end results and added domain of influence details in protocols
- add result export configurations for newly created contests
- added new vote counts to majority election
- add log messages for debugging within the updated voting lib
- use unique identifier for messaging consumer endpoints so each horizontally scaled instance consumes change notifications
- ensure no proxy is used for local development so cert pins are matching
- log messages for debugging
- add eVoting write in mapping to invalid ballot
- Added domain of influence and counting circle sort number to the protocols
- add result state change listener for erfassung
- Reset counting circle results in testing phase
- Changed WabstiC export
- Correctly register shared SECURE Connect account for DOK Connector
- WabstiC export changes
- no empty vote count for evoting import with single mandate
- Fixed summation of aggregated voting card results
- Added DOK Connect implementation
- no empty vote count and no invalid vote count for single mandate
- Added majority election calculation fields
- Added total count of voters on counting circle results in pdf protocols
- Send enum instead of a translated string as question label in pdf protocols
- Added question labels in pdf protocols
- Added pdf protocol field for counting circle and domain of influence name
- Deserialize eCH-0222 from eCH ballots, as the eCH votes may not correlate to the "VOTING votes"
- Added name for protocol for domain of influence and counting circle
- Extended sorting of domain of influences and counting circles in protocols
- second factor transaction code
- review procedure for vote, majority election and proportional election
- Add eCH message type to eCH-exports
- Correctly handle CountingCirclesMergerActivated events, which previously may not have created all necessary counting circles
- Update proto validation dependencies
- add Serilog.Expressions to exclude status endpoints from serilog request logging on success only
- add application builder extension which is adding the serilog request logging middleware enriching the log context with tracability properties
- exchanged custom health check with ef core default one
- Set correct hagenbach bischoff distribution number
- Process political business number modification event of secondary majority election after testing phase has ended
- Updated proto validation dependencies
- Updated dependencies
- Added proto validators at the requests.
- exchanged ef core default health check with custom one
- Allow contest counting circle details entry when e-voting is enabled
- Contests merge processing
- refactoring
- updated lib version
- correctly set new proportional election candidate party id on contest merge.
- CORS configuration support
- refactored event signature
- refactored event signature and allow exceptions when deleting a public key
- upgraded underlying dotnet image to sdk 6.0.301 after gituhb issue #24269 has been fixed
- added OpenAPI description
- Fixes some code smells reported by sonar
- add query split behavior where needed
- Added authentication checks (role and correct tenant) to the methods which initialize the 2FA process
- New proportional election union party mandates csv export
- Correctly map political business union id when returning templates
- Added a check that requested political business union ids in exports have to be owned by the current tenant
- add cancellation token for verify second factor
- lot decision always required for proportional election when there are candidates with the same vote count
- get accessible counting circles only for the domain of influence from the current contest
- extend evoting date with time
The readmodel needs to be recreated after this commit
- correctly track e-voting vote sources
- use secury temporary file name for evoting uploads
- use latest lib to use new role token cache
- add logs for webhook callback
- check if bundle exists before performing events on the bundle
- Add e-voting proportional election list total results
- Add e-voting list end results to list union report
- Add missing evoting fields for protocols
- skip majority election ballot created if the bundle is deleted
- make PDF activity protocol smaller, add more detailed CSV version
- wabsti cwp list adjust zusatzstimmen
- wabstic wp gemeinde export total count of lists with party
- filter counting circle eVoting exports
- improve performance of ListSummaries
- Use correct eventing meter event position
- re-implement counting of pre-accumulated candidates again
- add roles cache to minimize calls to iam
- Extend pdf proportional election ballot with whether all original candidates are removed from list
- upgrade voting library version to include event type processing histogram
- convert percentages in gemeinden export correctly
- revert counting pre-accumulated candidates in unmodified results
- Update lib to inject malware scanner config correctly
- Add wp gemeinden bfs export
- Added eVoting protocols
- use empty value if absolut majority is not yet calculated in WabstiC WM_Kandidat csv export.
- handle completely empty proportional election lists correctly
- enable automatic exports during testing phase
- malwarescanner - unless problem with cert-pinning is solved
- Skip processing of proportional election ballot create event if the bundle does not exist
- Update eai and lib dependency to deterministic version
- better support for large import files
- revert removal of ResultExportGenerated event
- increase import file size limit to 250MB
- malwarescanner service
- add sum of initial distribution number of mandates to pdf exports
- votes of ballots/bundles without a list should not count towards CountOfVotesOnOtherLists
- remove result export generated event and disable automatic exports during testing phase
- bundle review list without party
- rework party votes export
- malwarescanner temporary unless resolved problem
- activity protocol export should only be available if contest manager, testing phase ended and only for monitoring
- remove second factor transaction for owned political businesses
- malware scanner service
- add import change listener
- Extend wabsti csg abstimmungsergebnisse export with domain of influence type
- Sort contests depending on states
- Multiple counting circle results submission finished
- Add missing events to activity protocol
- Added modified lists count and lists without party count columns to csv proportional election candidates with vote sources export
- correct e-voting count of voters in CSV exports
- show e-voting count of voter values in reports
- remove filter on result algorithm in vote end result report
- add latest execution timestamp to result export configuration
- do not mark candidate results with optional lot decisions as pending
- add validation for when majority election has no candidates
- correctly handle repeated write ins reset
- Make certain contact person fields required
- submission finish race condition with updated counting circle details prevented
- add db command timeout configuration
- Show correct read signed event count in activity protocol
- reset write ins for majority election
- add csv export for vote results
- moved creator from PdfMajorityElectionResultBundle to base class
- wabstic export vote id
- wabstic export vote id
- do not log update of lot decisions as error
- show imported counting circles
- update cd-templates to resolve blocking deploy-trigger
- correctly check imported voting cards contest ID
- import e-voting voting cards from eCH
- clear result values for initial state for wabstic majority election detail results report
- doi and cc sorting by name for protocols
- changed result export template entity description
- clear result values from certain states for wabstic majority election detail results report
- only report distinct ignored counting circles
- Make activity protocol for all monitoring admins available
- consider blank and invalid e-voting ballots for votes and proportional elections
- add e-voting blank ballots
- show correct count of voters information and voting cards on end results
- handle multiple eCH-0222 election group ballot raw data groups
- update voting lib to support eCH changes
- result start submission as contest manager should be possible
- allow enter results as contest manager in testing phase
- add the tenant ID to the export template ID
- restrict wabstic majority election detail results report to certain states
- use correct voting cards in communal voting end result report
- don't show multiple political businesses results when political business in not finalized
- protocol export state changes
- validate counting circles on result import and filter test counting circles
- fix list protocol exports
- WabstiC Majority election results only results with state correction done or submission done.
- async PDF generation process
- order candidate results for majority end result detail protocol by position
- VOTING-2480: input-validation allow character "«»;&
- wabstic wahlergebnisse additional columns
- order candidate results for majority end result detail protocol by position
- wabstic wmwahlergebnis report
- wabstic use political names of candidates
- Update end result finalized on simple political business
- rename export protocols
- Some reports should only show up for certain types of domain of influences
- add more data to bundle review exports
- add invalid vote count to majority election result bundle review export
- expand multiple business counting circle templates correctly
- remove accumulated proportional election candidate from ballot candidates
- new export api
- detect replay attacks per activity protocol
- add scoped dmdoc httpclient
- correctly copy result export configuration provider when creating a contest
- update library to fix dmdoc accessibility issues
- update library to use secure dmdoc authentication
- add basis events before testing phase ended to activity protocol
- Apply relaxed policy in transient catch up processor to handle replay attacks
- clear audited tentatively timestamp on reset
- manual proportional election end result
- group seantis exports by seantis token
- add individual candidate to WabstiC WM_Kandidaten export
- order candidate results by vote count
- rename protocol description and filename
- sort counting circle results correctly in vote end result report
- add pdf ballot end result label
- allow empty ballots
- test eCH import against schema
- add end result detail without empty and invalid votes protocol
- change voting card channel priority
- changed wabsti export column header
- change eCH-0222 import and test eCH export output
- remove internal description, invalid votes and individual empty ballots allowed from elections
- hide proportional election end result columns and protocolls before finalized
- Added export configuration political business metadata, needed for Seantis
- add on list for proportional election candidate pdf exports
- update library to extend complex text input validation rules with dash sign
- Fixed handling of event signature on exports
- add domain of influence canton
- Delete inherited domain of influence counting circles correctly on domain of influence delete
- add candidate origin
- add request recorder tooling for load testing playbook
- update voting lib to add transient subscription health check
- Changed public key signing
- Validate voting basis event signature in activity protocol
- adjust input validation
- correctly export reports after testing phase has ended
- insert vote aggregated result correctly in protocols
- filter not needed domain of influence results in protocols
- Added aggregated domain of influence results in protocols
- Removed contest details on end results and added domain of influence details in protocols
- ignore export of templates that do not exist (anymore)
- add result export configurations for newly created contests
- added new vote counts to majority election
- add log messages for debugging within the updated voting lib
- use unique identifier for messaging consumer endpoints so each horizontally scaled instance consumes change notifications
- ensure no proxy is used for local development so cert pins are matching
- log messages for debugging
- add eVoting write in mapping to invalid ballot
- Added domain of influence and counting circle sort number to the protocols
- add result state change listener for erfassung
- Reset counting circle results in testing phase
- Changed WabstiC export
- Correctly register shared SECURE Connect account for DOK Connector
- WabstiC export changes
- no empty vote count for evoting import with single mandate
- Fixed summation of aggregated voting card results
- Added DOK Connect implementation
- no empty vote count and no invalid vote count for single mandate
- Added majority election calculation fields
- Added total count of voters on counting circle results in pdf protocols
- Send enum instead of a translated string as question label in pdf protocols
- Added question labels in pdf protocols
- Added pdf protocol field for counting circle and domain of influence name
- Deserialize eCH-0222 from eCH ballots, as the eCH votes may not correlate to the "VOTING votes"
- Added name for protocol for domain of influence and counting circle
- Extended sorting of domain of influences and counting circles in protocols
- second factor transaction code
- review procedure for vote, majority election and proportional election
- Add eCH message type to eCH-exports
- Correctly handle CountingCirclesMergerActivated events, which previously may not have created all necessary counting circles
- Update proto validation dependencies
- add Serilog.Expressions to exclude status endpoints from serilog request logging on success only
- add application builder extension which is adding the serilog request logging middleware enriching the log context with tracability properties
- exchanged custom health check with ef core default one
- Set correct hagenbach bischoff distribution number
- Process political business number modification event of secondary majority election after testing phase has ended
- Updated proto validation dependencies
- Updated dependencies
- Added proto validators at the requests.
- exchanged ef core default health check with custom one
- Allow contest counting circle details entry when e-voting is enabled
- Contests merge processing
- refactoring
- updated lib version
- correctly set new proportional election candidate party id on contest merge.
- CORS configuration support
- refactored event signature
- refactored event signature and allow exceptions when deleting a public key
- political business union party strength and voter participation export add new columns
- upgraded underlying dotnet image to sdk 6.0.301 after gituhb issue #24269 has been fixed
- added OpenAPI description
- add authorization checks where necessary
- Fixes some code smells reported by sonar
- fix code smells
- add query split behavior where needed
- Added authentication checks (role and correct tenant) to the methods which initialize the 2FA process
- use latest vo lib
- use new ssl cert option instead of preprocessor directive
- add proportional election union party votes report
- new proportional election union voter participation report
- New proportional election union party mandates csv export
- Correctly map political business union id when returning templates
- Added a check that requested political business union ids in exports have to be owned by the current tenant
- generate dotnet swagger docs
- add cancellation token for verify second factor
- lot decision always required for proportional election when there are candidates with the same vote count
- only change result state to in process if tenant matches
- avoid dividing by 0 in absolute majority calculation
- get accessible counting circles only for the domain of influence from the current contest
- extend evoting date with time
- contest merger should also merge simple businesses
- lib version
- add check for invalid value range
- code quality issues