Nouvelle page /urne : vote quotidien inspiré du vote à l'urne de l'Athènes antique. Chaque Citoyen dépose un jeton par jour sur une autre personne (jamais lui-même), avec confirmation à deux temps avant l'envoi — le vote est définitif pour la journée, aucune RPC de modification. Les jetons s'accumulent sur toute la semaine dans un classement public et cumulatif, identique pour tout le monde y compris les Archontes : contraste volontaire avec Le Mur de la Honte, ici personne (Archontes compris) ne voit qui a voté pour qui, seul le total par personne est public. Nouvelle table urn_votes (append-only, comme points_log) + deux RPC : urn_vote_counts() agrège les votes sans jamais exposer une ligne individuelle, cast_urn_vote() applique les règles (pas de vote pour un juge ni pour soi-même, un vote par jour). Les Archontes ne votent pas et ne peuvent pas recevoir de jetons.
This commit is contained in:
@@ -197,6 +197,19 @@ export function IconSword({ className = base }: IconProps) {
|
||||
);
|
||||
}
|
||||
|
||||
export function IconVote({ className = base }: IconProps) {
|
||||
return (
|
||||
<svg viewBox="0 0 24 24" className={className} fill="none" stroke="currentColor" strokeWidth={1.8} aria-hidden>
|
||||
<path
|
||||
d="M8 4h8M9 4v3.5L6.5 12a4 4 0 0 0-.5 2v4a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-4a4 4 0 0 0-.5-2L15 7.5V4"
|
||||
strokeLinejoin="round"
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
<path d="M9 14h6" strokeLinecap="round" />
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
|
||||
export function IconPin({ className = base }: IconProps) {
|
||||
return (
|
||||
<svg viewBox="0 0 24 24" className={className} fill="none" stroke="currentColor" strokeWidth={1.8} aria-hidden>
|
||||
|
||||
Reference in New Issue
Block a user