[Decision D3] Séquencer les upgrades officiels et AUR sans partial upgrade #4
Labels
No labels
Agent/Autonomous OK
Agent/Demeter
Agent/Hermes
Agent/Human
Agent/Needs Review
Area/API
Area/Auth
Area/CLI
Area/Data
Area/Docs
Area/Infra
Area/UI
CI/Failing
CI/Flaky
CI/Green
CI/Needs Runner
CI/Needs Workflow
Compat/Backward Compatible
Compat/Breaking
Compat/Migration
Deploy/Ansible
Deploy/Blocked
Deploy/Homelab
Deploy/Needs Config
Deploy/Needs Secret
Deploy/Ready
Deploy/Rollback
Kind/Bug
Kind/Chore
Kind/Design
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Refactor
Kind/Security
Kind/Spike
Kind/Testing
Ops/Backup
Ops/Incident
Ops/Maintenance
Ops/Monitoring
Ops/Upgrade
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Priority
Someday
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Risk
Critical
Risk
High
Risk
Low
Risk
Medium
Security/Auth
Security/Disclosure
Security/Hardening
Security/Secret
Size
L
Size
M
Size
S
Size
XL
Size
XS
Stack/Ansible
Stack/Docker
Stack/Forgejo
Stack/Hermes
Stack/Node
Stack/Postgres
Stack/Python
Stack/Systemd
Status
Abandoned
Status
Blocked
Status
In Progress
Status
In Review
Status
Need More Info
Status
Ready
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
2027a/auroscope#4
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
MODE: DECISION
Statut
Proposé. Ticket ouvert jusqu’à ta réponse puis ton go explicite.
Question
Comment maintenir un upgrade officiel complet tout en permettant de différer certaines recettes AUR et en inspectant avant toute mutation de paquets ?
Contraintes
Options
A — Upgrade Paru combiné avec exclusions injectées
Pour : une expérience proche d’une transaction unique.
Contre : plan machine faible, refresh avant revue, risques de partial upgrade si des paquets officiels sont exclus.
B — Prérevue AUR, phase officielle complète, puis replanification AUR
paru -Syu --repocomme transaction officielle complète;Pour : pas de partial upgrade officiel; autorité humaine conservée; dérive visible.
Contre : deux plans AUR et deux phases visibles; un AUR peut être temporairement incompatible après la phase officielle.
C — Upgrader officiel d’abord, revoir AUR ensuite
Pour : simple.
Contre : viole la lecture stricte « identifier avant de changer le système ».
Recommandation
Option B. Les conséquences de dépendances du premier plan sont marquées provisoires; le second plan est exécutable seulement s’il correspond aux décisions.
Réponse attendue
Choisis A/B/C ou amende le séquencement. Aucun ADR/clôture avant ton go.
Documentation
Protocole automatique de décision
GO DECISIONn’autorise ni code de production ni plan d’implémentation; ce travail doit avoir son propre ticketMODE: EXECUTION.Je ne comprends pas le problème avec C ? C'est ma préférence mais je voudrais comprendre quel problème tu envisages avec cette solution très simple?
Ticket classé comme décision humaine. La discussion continue ici, mais aucune implémentation ni ADR accepté ne sera produit tant que Mathieu n’aura pas publié exactement
GO DECISIONdans un commentaire distinct.Tu as raison : C n’a pas de problème technique intrinsèque. Au contraire, c’est le séquencement le plus simple pour éviter un partial upgrade :
paru -Syu --repo), sans exclusion de paquet officiel;Mon objection venait uniquement d’une lecture très stricte de la contrainte « identifier avant de changer le système » : j’avais compris qu’il fallait identifier aussi les AUR avant la moindre mutation officielle. Mais cette prérevue AUR est provisoire et peut être invalidée par l’upgrade officiel; elle ajoute donc du travail sans apporter une garantie forte.
Si la contrainte signifie plutôt « chaque phase doit être inspectée avant sa propre mutation », C la respecte : revue officielle avant l’upgrade officiel, puis revue AUR avant l’upgrade AUR. Le seul état intermédiaire possible est qu’un paquet AUR installé soit temporairement incompatible après l’upgrade officiel; B ne supprime pas réellement ce risque, puisque son premier plan AUR reste provisoire.
Recommandation actuelle : option C, précisée comme ci-dessus. Elle est plus simple que B, conserve l’autorité humaine avant chaque mutation et ne crée pas de partial upgrade officiel. Il faudra reformuler la contrainte pour expliciter que la revue est par phase, pas globale avant toute mutation.
Ce commentaire propose donc C; il ne l’enregistre pas comme décision acceptée.
GO DECISION
Pour la revue officielle, inutile d'ajouter quoi que ce soit par dessus paru/Pacman. On Audit uniquement AUR
D’accord. Ça simplifie encore la frontière : Auroscope n’ajoute aucune couche de revue à la transaction officielle; Paru/Pacman reste seul responsable de l’upgrade complet des dépôts officiels. L’audit et l’approbation portent uniquement sur AUR.
Recommandation actuelle : option C, avec ce séquencement précis :
paru -Syu --repoou équivalent), sans exclusion de paquet officiel et sans pré-audit Auroscope;Le risque accepté est qu’un AUR déjà installé puisse être temporairement incompatible entre les étapes 1 et 4. Faire une prérevue AUR avant l’upgrade officiel ne supprimerait pas ce risque et produirait un plan potentiellement périmé.
Ta formulation
GO DECISIONest accompagnée d’un amendement dans le même commentaire; selon le protocole déterministe, je la traite donc comme une poursuite de discussion, pas comme le signal exact d’acceptation. La proposition concrète à accepter est désormais C + audit exclusivement AUR, telle que décrite ci-dessus.GO DECISION
Décision D3 consignée et vérifiée.
ADR-0004 — Complete official upgrade before AUR review0fea99db83342872eeb94c4a9505dbd745730dbaLa spécification et le registre de propositions reflètent désormais le séquencement accepté : transaction officielle complète et native d'abord, sans audit AURoscope; planification, audit et décisions AUR ensuite sur l'état réellement mis à jour. Aucun code de production ni plan d'implémentation n'a été ajouté.