politique trop stricte #9
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/paru-llm-audit#9
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?
voici le résultat avec la dernierer version :
il faudrait :
Pris en charge par la boucle de maintenance (tâche Kanban
t_0b76228c, branche prévuefix/issue-9-politique-trop-stricte). Une PR ou une demande de clarification sera liée ici après analyse.Analyse bloquée sur trois décisions fonctionnelles qu’il ne faut pas deviner :
brave-bin+/opt/brave-bin/chrome-sandbox+chmod 4755, faut-il autoriser automatiquement (risque statique faible/aucun), ou conserver une revue interactive mais avec une meilleure UX ? La v0.1.3 le classe déjàmediumau lieu dehigh, mais Luna peut indépendamment concluremedium; la politique actuelle interdit à une exception déterministe d’abaisser ce risque LLM.medium, ou aussi pourhigh,criticalet les erreurs d’audit (timeout, résultat invalide, artefacts modifiés) ? Autoriser ces derniers contredirait le contrat fail-closed actuel.PreBuildCommandde Paru peut autoriser ou échouer; un échec arrête l’opération entière et ce hook ne sait pas retirer seulement le paquet courant de la transaction. Pour « bloquer un paquet sans bloquer les autres », quel comportement est attendu : (a) afficher une commande de relance avec ce paquet ignoré, (b) changer d’intégration/helper pour disposer d’une exclusion avant transaction, ou (c) autre mécanisme ? Le menu proposé ne contient actuellement pas d’option « ignorer ce paquet et continuer ».Dès que ces trois choix sont fixés, je peux écrire les tests d’abord et implémenter la politique sans affaiblissement implicite de la barrière de sécurité.
1: je pense qu'il faut interroger le contexte qui pointe cette situation comme un risque. Par exemple, ce n'est pas une nouveauté dans le paquet, c'est la norme, c'était déjà ainsi la version précédente. Le modèle ne devrait pas flagguer ça comme medium. Par ailleurs, il faut en effet une opération interactive avec une ux simple à cet endroit pour permettre à l'utilisateur de déterminer si on fait la mise a jour ou non.
2: idéalement, l'interaction serait uniquement annuler/voir les preuves (qui ouvrirait un éditeur à l'endroit problématique), et après avoir fermé l'éditeur, proposer annuler/installer.
3: ah merde. Est-ce que c'est implementable autrement dans paru? Sinon, est-ce mieux avec yay?
Vérification des implémentations stables actuelles effectuée avant de choisir l’intégration : Paru v2.1.0 et Yay v13.0.1.
Conclusion sur le point 3 : changer simplement de Paru à Yay ne résout pas le besoin. Chez Paru,
PreBuildCommandest appelé dans une boucle avec propagation immédiate de l’erreur (?) : un refus arrête toute l’opération. Chez Yay,UpgradeSelectsait exclure un paquet, mais intervient avant le téléchargement des dépôts PKGBUILD, donc avant que notre audit puisse inspecter la recette.AURPreInstallintervient au bon moment pour auditer, maisyay.abort()arrête l’installation entière et la documentation précise que modifier la table d’événement ne modifie pas l’état interne de Yay.Pour continuer les autres paquets après un refus fondé sur la recette, il faut donc soit :
PKGBASE/VERSION.Deux décisions restent nécessaires avant un
Fixes #9honnête :medium(recommandé), ou aussihigh/critical? Je recommande de garderhigh,critical, erreurs, timeouts, résultat invalide et changement d’artefacts strictement fail-closed.Note sécurité UX : ouvrir directement un PKGBUILD hostile dans l’éditeur configuré peut activer modelines/plugins. Je recommande un visualiseur texte en lecture seule positionné sur la ligne, puis le menu « annuler / installer », plutôt qu’un éditeur complet. Confirmer si ce visualiseur en lecture seule convient.
Sources exactes consultées :
paru.conf(5)etsrc/install.rsau tag Paru v2.1.0;doc/lua.mdau tag Yay v13.0.1.Classification: clarification required; no code change will be made until the remaining product and safety decisions are explicit. Please answer all three:
Evidence: Paru PreBuildCommand cannot remove only the current package after recipe audit; Yay UpgradeSelect runs before recipe retrieval, while AURPreInstall aborts the full operation. The existing policy permits confirmation for medium and blocks high/critical. This issue is marked as needing human information until these choices are resolved.
Classification: ambiguous. The latest maintainer response still leaves three decisions unresolved, so no code change is safe yet. Please confirm all three:
Current-code evidence: the integration is a single Paru PreBuildCommand;
_confirmoffers only one continue prompt;decision_forblocks high/critical; aggregate risk is the maximum of deterministic and LLM risk. I will not create a regression test or implementation until these product and safety choices are explicit.Classification: ambiguous. No code change is safe until the remaining product and safety decisions are explicit. Please confirm all three:
Current-code evidence: the integration is a single Paru
PreBuildCommand;_confirmprovides only one continue prompt;decision_forblocks high/critical; aggregate risk is the maximum of deterministic and LLM risk. The branch remains unchanged pending these answers.Classification retenue : ambiguous. La réponse du mainteneur confirme l’objectif, mais ne tranche pas encore les décisions qui changent l’architecture et la frontière de sécurité. Merci de confirmer explicitement les trois choix suivants :
UpgradeSelectest trop tôt etAURPreInstallarrête la transaction.medium, tandis quehigh/critical, erreurs d’audit, timeouts, résultat invalide et mutation d’artefacts restent strictement fail-closed.État courant vérifié : l’intégration est un unique
PreBuildCommand;_confirmn’offre qu’une confirmation oui/non; le risque agrégé est le maximum du statique et du LLM; l’exception Bravechmod 4755restemedium. Aucun code, test, commit, push ou PR n’est créé avant ces réponses.