Railshot
AI deployment & operations platform
Déployer une application web construite en local sur des environnements cloud et sur site préparés, puis l’exploiter.
Une plateforme IA de déploiement et d’exploitation qui mène une application web construite en local vers des environnements cloud ou sur site préparés, puis continue de l’exploiter.
Une passation vérifiée de façon indépendante, deux reprises réconciliées
Deux cas de la période October 3, 2026 to October 4, 2026, pendant la compétition. La session Codex utilisée pour le développement et le diagnostic Jev et CI du produit occupent des colonnes différentes.
October 3, 2026
Le travail d’observabilité a été confié à une session Codex distincte et vérifié séparément avec des fixtures d’échec
Session de travailSession d’origine
ActionCéder un worktree et cesser d’y éditer
- passationWorktree · échecs connus→ D’abord les défauts transmis : hypothèse de cinq portes fixes · preuve de non-exécution Q/L4 · régression draft (Session d’implémentation Codex)
Session de travailSession d’origine
ActionContrat : erreur observée ≠ hypothèse du modèle, chemin de déploiement existant uniquement
- passationCritères de fin→ Un contrat unique d’erreur JSON · de preuves + émetteurs Python · Node (Session d’implémentation Codex)
Agent de codeSession d’implémentation Codex
ActionD’abord les défauts transmis : hypothèse de cinq portes fixes · preuve de non-exécution Q/L4 · régression draft
- passation→ Un contrat unique d’erreur JSON · de preuves + émetteurs Python · Node (Session d’implémentation Codex)
Agent de codeSession d’implémentation Codex
ActionUn contrat unique d’erreur JSON · de preuves + émetteurs Python · Node
- pas une exécution consignéePreuves seulement, sans accès en écriture→ Jev ne fait que classer, sans autorité de correction (Diagnostic CI · Jev)
- passationPR · preuves de version renvoyées→ PR #131 · preuves de version fixées (Artefacts)
En développementDiagnostic CI · Jev
Observation · constatJev ne fait que classer, sans autorité de correction
ArtefactsArtefacts
ArtefactPR #131 · preuves de version fixées
- passationVérifié hors de la session d’implémentation→ Contrôle indépendant : fixtures d’échec · consultation du diagnostic · propriété (Session d’origine)
Session de travailSession d’origine
ActionContrôle indépendant : fixtures d’échec · consultation du diagnostic · propriété
- passationÉchecs connus injectés→ L1 : exclusion .env absente de .dockerignore · L2 : erreur de syntaxe (Diagnostic CI · Jev)
En développementDiagnostic CI · Jev
Observation · constatL1 : exclusion .env absente de .dockerignore · L2 : erreur de syntaxe
- renvoyéÉchec de syntaxe L2→ Erreur de syntaxe corrigée par le script de contrôle lui-même · resoumis (Session d’origine)
Session de travailSession d’origine
ActionErreur de syntaxe corrigée par le script de contrôle lui-même · resoumis
- passationMême chemin de service→ CI → image → GitOps → Argo → Pod · HTTPS confirmé (Artefacts)
ArtefactsArtefacts
ArtefactCI → image → GitOps → Argo → Pod · HTTPS confirmé
- Contexte
- Le travail corrigeait des échecs de CI dont les causes étaient masquées (cinq étapes supposées fixes, une empreinte de build qui masquait la cause, l’absence de preuve NOT_RUN par contrôle pour Q/L4 désactivés, etc.). À la demande de l’utilisateur, une session Codex distincte l’a implémenté ; la session d’origine a cessé d’éditer ce worktree, puis a vérifié le résultat en y injectant elle-même des échecs.
- Résultat
- Les enregistrements de diagnostic ont révélé la cause des deux échecs, et le côté vérification a corrigé lui-même l’erreur de syntaxe puis reconfirmé le même chemin jusqu’au Pod et au HTTPS. L’acceptation de l’implémentation et le nettoyage des ressources de test ont été achevés séparément par la session d’origine.
- Limite
- Ce n’est pas un cas de réussite de réparation automatique (le plafond de tentatives de réparation automatique était alors de 0). Rien n’indique que Claude a fait ce changement, et la même exécution ne prouve pas le déploiement sur OpenStack. Un statut fusionné ne signifie pas un nombre d’approbations formelles.
Sources et limites restantes
- La passation et le contrôle indépendant sont des enregistrements de travail internes et ne sont pas liés. D’autres sessions gardaient la propriété des travaux d’intégration, de fournisseurs et de déploiement, et la passation demandait de ne pas utiliser le checkout par défaut qui contenait encore les changements de l’utilisateur.
- Le cœur du contrat consistait à séparer, dans des champs distincts, l’erreur brute de l’hypothèse du modèle, et le conseil de nouvelle tentative de la décision réelle de réessayer.
October 4, 2026
Ce qui ressemblait à une panne de GitHub a été reproduit et décomposé, et deux changements de reprise concurrents ont été réconciliés en un seul
En développementAPI · appels GitHub
Observation · constatCommit distant présent · 0 exécution CI · redémarrage par liveness
- passationPas supposé être une panne GitHub→ Reproduit avec un GitHub simulé : la mise à jour de branche réussit, le callback local échoue (Session de reprise)
Session de travailSession de reprise
ActionReproduit avec un GitHub simulé : la mise à jour de branche réussit, le callback local échoue
- passation→ Vérifier séparément l’inscription de la source · le checkpoint local · le dispatch (Session de reprise)
Session de travailSession de reprise
ActionVérifier séparément l’inscription de la source · le checkpoint local · le dispatch
- passation→ #189 : stocker d’abord le run accepté · chercher le run existant si la réponse est perdue (Session de reprise)
ArtefactsArtefacts
ArtefactChangements concurrents : #185 terminaison · #186 checkpoint de source
- renvoyéComportements de reprise qui se chevauchent→ #189 : stocker d’abord le run accepté · chercher le run existant si la réponse est perdue (Session de reprise)
Session de travailSession de reprise
Action#189 : stocker d’abord le run accepté · chercher le run existant si la réponse est perdue
- passationTrois cas de régression→ Régressions : sortie après acceptation · erreur de checkpoint · réponse perdue (Artefacts)
ArtefactsArtefacts
ArtefactRégressions : sortie après acceptation · erreur de checkpoint · réponse perdue
- passation→ PR #189 fusionnée · hash source · image · Argo · health confirmés (Artefacts)
Session de travailUne autre session
ActionPérimètre annulation · concurrence détenu par cette session
- passationEmpêche une réexécution en double→ Relecture de la plateforme ≠ résultat client · non réexécuté (Artefacts)
ArtefactsArtefacts
ArtefactPR #189 fusionnée · hash source · image · Argo · health confirmés
- pas une exécution consignée→ Relecture de la plateforme ≠ résultat client · non réexécuté (Artefacts)
ArtefactsArtefacts
Règle · non vérifiéeRelecture de la plateforme ≠ résultat client · non réexécuté
- Contexte
- Le commit source était sur le dépôt distant, mais la CI n’a jamais démarré et l’API a été redémarrée par la liveness. L’erreur affichée portait un nom d’étape GitHub, mais c’est peut-être le callback local qui avait échoué.
- Résultat
- La source et le run acceptés sont stockés avant l’arrêt de l’observation, et si la réponse est perdue, le run déjà lancé est recherché au lieu d’un double dispatch. Une assertion qui échouait sur l’image précédente a été conservée comme enregistrement distinct.
- Limite
- Faute de texte d’exception d’origine, l’interruption locale reste une explication étayée, sans plus. Cela ne signifie ni que le goulot CPU ou stockage a été résolu ni que le déploiement sur le terminal du client a réussi, et la prévention du re-dispatch n’est pas généralisée au-delà des cas nommés.
Sources et limites restantes
- La reproduction n’a utilisé que des simulations, sans écriture ni nouvelle tentative réelles.
- Les deux enregistrements de reprise et la relecture du déploiement sont des enregistrements de travail internes ; les identifiants clients et opérationnels n’y figurent pas.