auroscope échoue à passer la main à paru pour la recherche d'un paquet #34

Closed
opened 2026-09-01 22:27:46 +00:00 by mathieu · 19 comments
Owner

Suivi remplacé par #51. Ce ticket est fermé pour repartir d’un rapport ciblé, pas comme preuve de correction.

Suivi remplacé par #51. Ce ticket est fermé pour repartir d’un rapport ciblé, pas comme preuve de correction.
Author
Owner

tu devrais travailler sur ce bug

tu devrais travailler sur ce bug
Owner

Classification: bug de compatibilité/runtime. La capture montre auroscope herdr silencieux jusqu’au Ctrl+C, puis le statut 130 rejeté; paru herdr affiche immédiatement la sélection native. Le paquet AURoscope déclare actuellement paru>=2.1.0, alors que le code capture stdout selon le contrat post-correctif d1dfbc4/commit épinglé 9ac3578; Paru 2.1.0 stable mélange justement le menu et les cibles sur stdout. Le menu est donc capturé et invisible, et l’interruption masque la cause réelle.

Plan: reproduire les deux surfaces Paru exactes, ajouter d’abord une régression couvrant le comportement installé, corriger la frontière de compatibilité sans parser silencieusement une UI humaine ambiguë, vérifier les tests Go et les E2E Arch/Paru, puis livrer la correction et son paquet dans une PR liée à #34.

Classification: bug de compatibilité/runtime. La capture montre `auroscope herdr` silencieux jusqu’au Ctrl+C, puis le statut 130 rejeté; `paru herdr` affiche immédiatement la sélection native. Le paquet AURoscope déclare actuellement `paru>=2.1.0`, alors que le code capture stdout selon le contrat post-correctif `d1dfbc4`/commit épinglé `9ac3578`; Paru 2.1.0 stable mélange justement le menu et les cibles sur stdout. Le menu est donc capturé et invisible, et l’interruption masque la cause réelle. Plan: reproduire les deux surfaces Paru exactes, ajouter d’abord une régression couvrant le comportement installé, corriger la frontière de compatibilité sans parser silencieusement une UI humaine ambiguë, vérifier les tests Go et les E2E Arch/Paru, puis livrer la correction et son paquet dans une PR liée à #34.
Owner

Correction proposée dans la PR #39 : #39

La cause reproduite est la dépendance de paquet trop large: Paru 2.1.0 stable mélange menu/prompt/cible sur stdout, tandis qu’AURoscope exige la surface post-correctif. La PR publie le paquet 0.1.0.r2.g6e02c6d-2 avec dépendance explicite paru-git, vérifie .SRCINFO, le build/install du paquet et les deux E2E Arch, dont la sélection native sur le commit Paru épinglé.

Correction proposée dans la PR #39 : https://git.2027a.net/2027a/auroscope/pulls/39 La cause reproduite est la dépendance de paquet trop large: Paru 2.1.0 stable mélange menu/prompt/cible sur stdout, tandis qu’AURoscope exige la surface post-correctif. La PR publie le paquet `0.1.0.r2.g6e02c6d-2` avec dépendance explicite `paru-git`, vérifie `.SRCINFO`, le build/install du paquet et les deux E2E Arch, dont la sélection native sur le commit Paru épinglé.
Author
Owner

on veux pouvoir utiliser le pauqet npm, pas juste le pauqte AUR ou pacman. met a jour la PR

on veux pouvoir utiliser le pauqet npm, pas juste le pauqte AUR ou pacman. met a jour la PR
Owner

PR #39 mise à jour sur le main courant : #39

Le support de @openai/codex installé par npm est conservé et rendu explicite : AURoscope cherche codex dans le PATH, le PKGBUILD n’impose aucun paquet Codex Pacman/AUR, et le test du paquet vérifie un binaire /usr/local/bin/codex qui n’appartient à aucun paquet Pacman. La dépendance paru-git concerne uniquement la surface Paru nécessaire à la sélection native.

La branche intègre aussi les changements déjà fusionnés de #35/#36; le paquet réconcilié est 0.1.0.r3.g7311508-2. Tests Go, vet, paquet Arch, E2E Arch et E2E Paru réel passent.

PR #39 mise à jour sur le `main` courant : https://git.2027a.net/2027a/auroscope/pulls/39 Le support de `@openai/codex` installé par npm est conservé et rendu explicite : AURoscope cherche `codex` dans le `PATH`, le PKGBUILD n’impose aucun paquet Codex Pacman/AUR, et le test du paquet vérifie un binaire `/usr/local/bin/codex` qui n’appartient à aucun paquet Pacman. La dépendance `paru-git` concerne uniquement la surface Paru nécessaire à la sélection native. La branche intègre aussi les changements déjà fusionnés de #35/#36; le paquet réconcilié est `0.1.0.r3.g7311508-2`. Tests Go, vet, paquet Arch, E2E Arch et E2E Paru réel passent.
Author
Owner

le problème persiste

❯ auroscope buzz
^Cauroscope: incompatible Paru issue-21 contract: interactive selection returned status 130, want 1
zsh: exit 1     auroscope buzz

auroscope/packaging/aur main 15s
le problème persiste ``` ❯ auroscope buzz ^Cauroscope: incompatible Paru issue-21 contract: interactive selection returned status 130, want 1 zsh: exit 1 auroscope buzz auroscope/packaging/aur main 15s ```
Owner

Correctif de suivi proposé dans la PR #43 : #43

La régression venait du compromis de #40 : depends=('paru') rend le paquet constructible avec un fournisseur AUR déjà installé, mais permettait aussi à l’exact paquet stable paru 2.1.0 — dont la redirection interactive est défectueuse — de rester installé. Le paquet 0.1.0.r4.gd0ad113-2 garde la dépendance virtuelle et ajoute le conflit versionné paru<=2.1.0. Le gate Arch prouve maintenant les deux côtés : installation refusée avec le paquet stable, puis réussie avec paru-git qui fournit paru sans déclencher faussement le conflit versionné.

La PR avance #34 mais laisse l’issue ouverte jusqu’à ta vérification sur le poste. Après fusion, la remise en état attendue reste : installer/remplacer par paru-git, puis reconstruire packaging/aur avec makepkg -si.

Correctif de suivi proposé dans la PR #43 : https://git.2027a.net/2027a/auroscope/pulls/43 La régression venait du compromis de #40 : `depends=('paru')` rend le paquet constructible avec un fournisseur AUR déjà installé, mais permettait aussi à l’exact paquet stable `paru 2.1.0` — dont la redirection interactive est défectueuse — de rester installé. Le paquet `0.1.0.r4.gd0ad113-2` garde la dépendance virtuelle et ajoute le conflit versionné `paru<=2.1.0`. Le gate Arch prouve maintenant les deux côtés : installation refusée avec le paquet stable, puis réussie avec `paru-git` qui fournit `paru` sans déclencher faussement le conflit versionné. La PR avance #34 mais laisse l’issue ouverte jusqu’à ta vérification sur le poste. Après fusion, la remise en état attendue reste : installer/remplacer par `paru-git`, puis reconstruire `packaging/aur` avec `makepkg -si`.
Author
Owner
chargement des paquets…
résolution des dépendances…
recherche des conflits entre paquets…
:: auroscope - 0.1.0.r4.gd0ad113-2 et paru - 2.1.0-2 sont en conflit. Supprimer paru ? [o/N] o
erreur : la préparation de la transaction a échoué (la satisfaction des dépendances a échoué)
:: impossible de satisfaire la dépendance « paru » requise par auroscope
==> ATTENTION : Échec à l’installation des paquets.
zsh: exit 14    makepkg -si
makepkg -si  114,62s user 3,48s system 66% cpu 2:57,19 total

j'imagine qu'il y a un problème ?

``` chargement des paquets… résolution des dépendances… recherche des conflits entre paquets… :: auroscope - 0.1.0.r4.gd0ad113-2 et paru - 2.1.0-2 sont en conflit. Supprimer paru ? [o/N] o erreur : la préparation de la transaction a échoué (la satisfaction des dépendances a échoué) :: impossible de satisfaire la dépendance « paru » requise par auroscope ==> ATTENTION : Échec à l’installation des paquets. zsh: exit 14 makepkg -si makepkg -si 114,62s user 3,48s system 66% cpu 2:57,19 total ``` j'imagine qu'il y a un problème ?
Owner

Le problème est confirmé : Pacman peut proposer de supprimer paru 2.1.0, mais il ne peut pas ajouter le fournisseur AUR absent paru-git à cette même transaction. Accepter la suppression rend donc la dépendance virtuelle paru insatisfaite après le build.

Correctif proposé : la recette échoue désormais avant la compilation avec la commande précise paru -S paru-git, puis demande de relancer makepkg -si. La PR conserve aussi le conflit Pacman comme garde finale et teste le chemin complet dans Arch jetable.

PR : #44

Le problème est confirmé : Pacman peut proposer de supprimer `paru 2.1.0`, mais il ne peut pas ajouter le fournisseur AUR absent `paru-git` à cette même transaction. Accepter la suppression rend donc la dépendance virtuelle `paru` insatisfaite après le build. Correctif proposé : la recette échoue désormais avant la compilation avec la commande précise `paru -S paru-git`, puis demande de relancer `makepkg -si`. La PR conserve aussi le conflit Pacman comme garde finale et teste le chemin complet dans Arch jetable. PR : https://git.2027a.net/2027a/auroscope/pulls/44
Author
Owner

mais paru-git est déjà installé depuis le AUR. le pense que c'est la même (mauvaise) version

mais paru-git est déjà installé depuis le AUR. le pense que c'est la même (mauvaise) version
Owner

Le journal précédent identifie pourtant le paquet installé comme paru 2.1.0-2 (et non paru-git). Les deux ne devraient normalement pas être installés ensemble. Avant de modifier encore la recette, peux-tu coller la sortie exacte de :

pacman -Q paru paru-git
pacman -Qo "$(command -v paru)"
paru --version

Cela dira si Pacman connaît réellement paru-git, si le binaire utilisé appartient plutôt au paquet stable paru, ou si un binaire externe/ancien masque celui du paquet. Si paru-git est bien le propriétaire actif, le correctif de la PR #44 est insuffisant et il faudra identifier la surface/version réellement défectueuse; si seul paru 2.1.0-2 est installé, la remise en état proposée reste la bonne mais doit être formulée sans supposer que le nom demandé à l’AUR correspond déjà au paquet installé.

Le journal précédent identifie pourtant le paquet installé comme `paru 2.1.0-2` (et non `paru-git`). Les deux ne devraient normalement pas être installés ensemble. Avant de modifier encore la recette, peux-tu coller la sortie exacte de : ```console pacman -Q paru paru-git pacman -Qo "$(command -v paru)" paru --version ``` Cela dira si Pacman connaît réellement `paru-git`, si le binaire utilisé appartient plutôt au paquet stable `paru`, ou si un binaire externe/ancien masque celui du paquet. Si `paru-git` est bien le propriétaire actif, le correctif de la PR #44 est insuffisant et il faudra identifier la surface/version réellement défectueuse; si seul `paru 2.1.0-2` est installé, la remise en état proposée reste la bonne mais doit être formulée sans supposer que le nom demandé à l’AUR correspond déjà au paquet installé.
Author
Owner

C'est pourtant simple : paru-git fourni paru. Tu devrais avoir un container arch pour tester ces trucs là

C'est pourtant simple : paru-git fourni paru. Tu devrais avoir un container arch pour tester ces trucs là
Owner

Relecture du suivi : oui, paru-git fournit bien la capacité paru. Le test packaging/aur/scripts/test-package.sh couvre cette distinction dans un conteneur Arch jetable : paquet stable factice refusé avant compilation, puis fournisseur factice paru-git accepté. Ce test de métadonnées ne prouve pas quelle recette AUR ni quel binaire sont réellement installés sur ton poste; ma réponse précédente était trop affirmative sur ce point.

La demande du commentaire 1780 avait déjà été reprise dans la revue de #44, que tu viens d’approuver et de fusionner (main f5310e5). Le nouvel échec après fusion est maintenant décrit dans #45 et possède sa propre tâche active : l’investigation se poursuit là, sans autre modification concurrente de la recette ni PR dupliquée. #34 reste ouverte; je ne considère pas le problème poste comme résolu.

Vérification de ce recheck : fichiers packaging fusionnés identiques au commit revu abe807a; CGO_ENABLED=1 go test ./..., go vet ./... et git diff --check passent sur main fusionné. Les gates Arch ne sont pas revendiqués comme réexécutés dans ce recheck.

Relecture du suivi : oui, `paru-git` fournit bien la capacité `paru`. Le test `packaging/aur/scripts/test-package.sh` couvre cette distinction dans un conteneur Arch jetable : paquet stable factice refusé avant compilation, puis fournisseur factice `paru-git` accepté. Ce test de métadonnées ne prouve pas quelle recette AUR ni quel binaire sont réellement installés sur ton poste; ma réponse précédente était trop affirmative sur ce point. La demande du commentaire 1780 avait déjà été reprise dans la revue de #44, que tu viens d’approuver et de fusionner (main `f5310e5`). Le nouvel échec après fusion est maintenant décrit dans #45 et possède sa propre tâche active : l’investigation se poursuit là, sans autre modification concurrente de la recette ni PR dupliquée. #34 reste ouverte; je ne considère pas le problème poste comme résolu. Vérification de ce recheck : fichiers packaging fusionnés identiques au commit revu `abe807a`; `CGO_ENABLED=1 go test ./...`, `go vet ./...` et `git diff --check` passent sur main fusionné. Les gates Arch ne sont pas revendiqués comme réexécutés dans ce recheck.
Author
Owner

fonctionne désormais, mais on perd les couleurs. possible de les ravoir ?

fonctionne désormais, mais on perd les couleurs. possible de les ravoir ?
Author
Owner

et de ce côté là ?

et de ce côté là ?
Owner

Classification : régression d’interface native, distincte du choix Codex #46. La recherche fonctionne d’après ton commentaire 1819 ; je traite maintenant les couleurs demandées, relancées en 2035. Dans Paru épinglé 9ac3578, le mode couleur automatique exige stdout ET stderr terminaux : notre capture de stdout pour les cibles désactive donc les couleurs du menu pourtant envoyé sur stderr. Plan : régression avec pseudo-terminal, préserver la détection native et la configuration couleur de Paru sans coloriser/parser les cibles, puis vérifier Go et le gate réel Arch/Paru. Aucune PR ouverte actuellement ; les correctifs packaging précédents sont déjà fusionnés.

Classification : régression d’interface native, distincte du choix Codex #46. La recherche fonctionne d’après ton commentaire 1819 ; je traite maintenant les couleurs demandées, relancées en 2035. Dans Paru épinglé 9ac3578, le mode couleur automatique exige stdout ET stderr terminaux : notre capture de stdout pour les cibles désactive donc les couleurs du menu pourtant envoyé sur stderr. Plan : régression avec pseudo-terminal, préserver la détection native et la configuration couleur de Paru sans coloriser/parser les cibles, puis vérifier Go et le gate réel Arch/Paru. Aucune PR ouverte actuellement ; les correctifs packaging précédents sont déjà fusionnés.
Owner

Le correctif source des couleurs est prêt dans la PR brouillon #49 : #49 (commit signé e403dc5). Le menu retrouve la détection native de Paru, sans forcer les couleurs si Color est désactivé ou si la sortie est redirigée. Tests Go/vet, race ciblée, terminal réel simulé, interruption et matrice du vrai Paru 9ac3578 en Arch jetable passent.

Pas encore livré dans le paquet : son pin reste inchangé. Pour terminer, peux-tu autoriser explicitement l’exécution des PKGBUILD uniquement dans les conteneurs Arch jetables des gates package/E2E ? La carte exige ces validations mais interdit actuellement toute exécution de PKGBUILD. Avec cette autorisation, je pourrai mettre à jour le pin (à réconcilier avec #45/#48) puis valider le binaire installé. Sinon il faudra une vérification externe du paquet; je ne déclarerai pas la livraison terminée.

Transparence : j’ai lancé à tort le gate complet avant d’appliquer cette interdiction; il a exécuté le build hello dans son conteneur jetable. L’arrêt demandé a été refusé par le runner headless; le conteneur a depuis terminé et disparu. Aucun Pacman du poste n’a été utilisé. J’ai ensuite ajouté et relancé avec succès un mode sélection seule qui s’arrête avant toute recette. Aucun autre gate exécutant un PKGBUILD ne sera lancé sans clarification. #34 reste ouverte.

Le correctif source des couleurs est prêt dans la PR brouillon #49 : https://git.2027a.net/2027a/auroscope/pulls/49 (commit signé e403dc5). Le menu retrouve la détection native de Paru, sans forcer les couleurs si Color est désactivé ou si la sortie est redirigée. Tests Go/vet, race ciblée, terminal réel simulé, interruption et matrice du vrai Paru 9ac3578 en Arch jetable passent. Pas encore livré dans le paquet : son pin reste inchangé. Pour terminer, peux-tu autoriser explicitement l’exécution des PKGBUILD uniquement dans les conteneurs Arch jetables des gates package/E2E ? La carte exige ces validations mais interdit actuellement toute exécution de PKGBUILD. Avec cette autorisation, je pourrai mettre à jour le pin (à réconcilier avec #45/#48) puis valider le binaire installé. Sinon il faudra une vérification externe du paquet; je ne déclarerai pas la livraison terminée. Transparence : j’ai lancé à tort le gate complet avant d’appliquer cette interdiction; il a exécuté le build hello dans son conteneur jetable. L’arrêt demandé a été refusé par le runner headless; le conteneur a depuis terminé et disparu. Aucun Pacman du poste n’a été utilisé. J’ai ensuite ajouté et relancé avec succès un mode sélection seule qui s’arrête avant toute recette. Aucun autre gate exécutant un PKGBUILD ne sera lancé sans clarification. #34 reste ouverte.
Author
Owner

Autorisation donnée

Autorisation donnée
Owner

Livraison couleurs terminée et PR49 sortie du brouillon : #49 . Paquet 0.1.0.r6.gf97d6ab-1, source immuable f97d6ab, tête signée6a063b9; le Codex minimum de PR48 fusionnée est conservé. Le paquet réellement installé passe la matrice couleurs activées/désactivées/redirection avec le vrai Paru épinglé, puis les parcours build/install et edit/réaudit. Go/vet/race ciblée, package gate et deux E2E Arch PASS (exit0). Autorisations2189/2187 appliquées, aucun Pacman du poste. Les limites du premier probe RED et du vieux test drift sont explicites dans la PR. Revue des anciens findings : un bug distinct de recherche uniquement officielle et la preuve drift trop permissive restent suivis dans #50. #34 attend la revue/fusion humaine de PR49; aucun merge automatique ni installation du poste.

Livraison couleurs terminée et PR49 sortie du brouillon : https://git.2027a.net/2027a/auroscope/pulls/49 . Paquet 0.1.0.r6.gf97d6ab-1, source immuable f97d6ab, tête signée6a063b9; le Codex minimum de PR48 fusionnée est conservé. Le paquet réellement installé passe la matrice couleurs activées/désactivées/redirection avec le vrai Paru épinglé, puis les parcours build/install et edit/réaudit. Go/vet/race ciblée, package gate et deux E2E Arch PASS (exit0). Autorisations2189/2187 appliquées, aucun Pacman du poste. Les limites du premier probe RED et du vieux test drift sont explicites dans la PR. Revue des anciens findings : un bug distinct de recherche uniquement officielle et la preuve drift trop permissive restent suivis dans #50. #34 attend la revue/fusion humaine de PR49; aucun merge automatique ni installation du poste.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
2027a/auroscope#34
No description provided.