Que fait AssertLedger ?
Vue d'ensemble
Évaluez le même candidat de régression contre le code corrigé, un défaut déclaré et un contrôle neutre. Conservez les observations et rejouez le manifeste résultant avant de rapporter le verdict borné. L'opérateur fournit le défaut et la signification du contrôle ; l'outil n'établit pas la correction globale du programme, l'authenticité du producteur, ni l'absence permanente de tests instables.
Ce workflow maintenu localement suit la documentation publiée d'AssertLedger 1.4.0.
Utilisation
Utilisez $assertledger <dépôt et régression> ou /assertledger <manifeste à rejouer>.
Par exemple : Vérifiez si la régression de parité validée détecte la révision boguée fournie.
Utilisez tdd pour les implémentations courantes et proof-integrity-review lorsque le mécanisme de vérification lui-même change. La qualification AssertLedger est un workflow supplémentaire demandé, pas une passerelle de test générale.
Obtenez l'interface CLI compatible via l'installation d'outils déclarée par l'hôte ; la compétence elle-même n'a pas besoin de vérifier les dotfiles au moment de l'exécution. Si la CLI est absente, signalez ce prérequis sans installer de paquet ni modifier la configuration du projet de manière implicite.
Étapes
-
Exécutez
assertledger --versionetassertledger doctor /chemin/vers/depot --json. Ce diagnostic est statique et en lecture seule. Inspectez les conflits et le support du framework avant de planifier l'exécution ; la détection d'une commande de test ne démontre pas qu'un adaptateur peut l'exécuter. -
Pour la qualification Git, établissez les révisions boguée, corrigée et neutre validées, la raison du neutre, le chemin du candidat, les chemins des tests de base inchangés, et un nouveau répertoire de sortie relatif au dépôt. Récupérez les faits fournis lorsque c'est possible ; n'inventez jamais de sémantiques de contrôle manquantes. Consultez le guide Git pour l'éligibilité : fichiers
.js,.mjsou.cjssans dépendance utilisantnode:test, tests de base inchangés, et ensembles de chemins de fichiers identiques hormis le candidat. Les modifications locales non validées sont ignorées. -
Établissez le backend d'exécution à partir de l'autorisation de l'opérateur. Une exécution en conteneur nécessite une image sélectionnée par l'opérateur, épinglée par digest, déjà présente sur un démon Linux et contenant Node. L'exécution locale de confiance est
UNSANDBOXEDet nécessite une autorisation pour cette portée. Ne combinez jamais les deux modes et n'inférez jamais la permission d'exécution de l'installation ou d'une configuration de projet. -
Exécutez la commande choisie avec les entrées effectives établies. Pour une exécution en conteneur autorisée :
assertledger check /chemin/vers/depot --before AVANT --after APRES --neutral NEUTRE --neutral-reason "Raison du contrôle établi" --test tests/regression.test.js --base-test tests/base.test.js --out .assertledger/evidence-001 --container-image node@sha256:DIGEST --jsonPour une exécution locale de confiance autorisée, remplacez
--container-image node@sha256:DIGESTpar--allow-unsafe-execution. Ne passez aucun des deux drapeaux avant que ce backend soit établi. -
Conservez le code de sortie, le résumé, la requête exécutée et le manifeste de la commande. Un répertoire de sortie complet contient
manifest.json, publié en dernier. Exécutezassertledger replay /chemin/vers/depot/.assertledger/evidence-001/manifest.json --json. Une preuve positive nécessitedecision.status: VERIFIEDet une relecturevalid: true; conservez toutes les tentatives échouées, les contrôles, les codes de raison, les limites d'exécution et les faits d'isolement. Le rejet, les observations non concluantes, les erreurs opérationnelles ou une relecture invalide ne peuvent pas soutenir l'acceptation. -
Rapportez le défaut exact, les révisions, le candidat sélectionné, l'environnement, les emplacements des artefacts et les limitations. Utilisez
assertledger explain CODE --jsonpour les refus. La relecture vérifie l'intégrité et la cohérence de la décision sans relancer les tests ni authentifier leur producteur. Conservez les révisions sources, les requêtes et les journaux bruts séparément lorsque la reproduction ou un audit indépendant est important. -
Pour une requête versionnée déjà fournie ou une campagne Bun prise en charge, lisez la référence correspondante avant d'utiliser
verifyou la relecture. L'adaptateur Bun épingle Bun 1.4.2 et crédite les échecs deassertledger/bunassertSame; les échecs natifs de Bunexpectne comptent pas comme détection de cible. Ce chemin de bas niveau n'étend pas l'éligibilité de la commande Gitcheck.
Pièges
- Appliquer la qualification Git à TypeScript/Bun ou Rust — la détection statique peut sembler prometteuse
alors que
checkne peut pas exécuter le candidat ; conservez les tests natifs existants et signalez la limite. - Ignorer un refus de lien symbolique du dépôt — supprimer des liens ou inventer des exclusions modifie la
preuve déclarée ; conservez le checkout et signalez
UNSUPPORTED_REPOSITORY_SYMLINK. Seul l'opérateur peut déclarer une exclusion locale uniquement après avoir examiné les règles documentées. - Réutiliser un répertoire de preuves — la réservation de sortie échoue plutôt que d'écraser une campagne précédente ; sélectionnez un nouveau chemin relatif et conservez la preuve antérieure.
- Compter un plantage comme détection — les timeouts, les échecs de compilation, de découverte et de processus n'établissent pas la régression prétendue ; inspectez les codes de raison et corrigez le problème d'exécution.
- Exécuter automatiquement la configuration client —
connect --writeinstalle une compétence de projet et une configuration MCP, créant ainsi une autre copie découverte de cette compétence utilisateur ; prévisualisez uniquement sur une configuration client demandée et résolvez cette duplication avant toute écriture.
Contraintes
- Ne fabriquez jamais de sémantique de défaut, de raisonnement neutre, de résultats observés ou d'autorisation d'exécution.
- N'initialisez jamais de projets, n'enregistrez pas de serveurs MCP, ne tirez pas d'images et ne modifiez pas les exclusions de manière implicite.
- N'exécutez jamais un exécuteur non pris en charge via un adaptateur deviné et n'affaiblissez pas la politique pour obtenir une acceptation.
- Ne traitez jamais la validité de relecture comme une preuve d'exécution réelle, d'authenticité ou de correction générale.
- Ne jetez jamais les observations échouées, ne cachez pas les sorties incomplètes et ne traitez pas une démo comme une preuve de dépôt.
- Préservez les exigences natives de test et d'intégration continue ; cette compétence ne les remplace pas et n'autorise pas une fusion.