-
Host Helper 1.2.4 Stable
released this
2026-10-30 03:46:46 +01:00 | 0 commits to main since this releaseHost Helper 1.2.4 : normalisation du mode de la racine runtime /run/asami au démarrage.
- fix(runtime) : la racine runtime /run/asami, créée implicitement sous UMask=0077 par l'unité systemd, est désormais normalisée en 0755 au démarrage du service (défaut C) ; l'identité publique redevient déterministe et diagnosable après chaque reboot.
- diag(identity) : identity --json non privilégié ne rapporte plus un faux « identity not published » lorsque la racine runtime a un mode confiné (garde de diagnosabilité).
- invariants : aucun changement du contrat MCP public (codes et exit identiques) ; répertoires privés en modes confinés ; 1.2.3 immuable.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Host Helper 1.2.3 Stable
released this
2026-10-29 23:56:38 +01:00 | 5 commits to main since this releaseHost Helper 1.2.3 : correctifs canal GitLab self-updater et répertoire identité publique.
- fix(self-update) : les candidats téléchargés depuis le canal GitLab sont désormais posés exécutables (0755) ; un candidat non exécutable est refusé (UPDATE_ORIGIN_REFUSED). Corrige les échecs update_failed_rolled_back systématiques du canal GitLab sous umask restrictif (présent en 1.2.1 et 1.2.2).
- fix(identity) : un répertoire identité publique possédé par le propriétaire avec un mode dérivé (ex. 0700) est réparé en 0755 à la publication au lieu d'être refusé ; les refus conservés couvrent symlink, propriétaire étranger et non-répertoire.
Assets : binaire asami-host-helper (sha256 ebe0997a84b4bb189155cc09e57976a59033d7c022fca80bb0f4a1bf92a89d68), bootstrap hosthelper-bootstrap.pyz (sha256 ecba9fd45f041c2fac72042f159890a3af258ee6caf769f9249c846d5dd38cc4), tarball source (sha256 786f8171dd37c3695581f2bf694aeb4f1c0b6d9400006c5ff0c18fc9aec93ed4), wheel, install-hosthelper.py épinglé au commit
30fe959. Chaque asset a son sidecar sha256 dans le package générique.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Host Helper 1.2.2 Stable
released this
2026-10-29 22:22:37 +01:00 | 10 commits to main since this releaseHost Helper 1.2.2 : enrôlement live. Identité publique V2 (identity --json), self-update officiel 1.2.1 vers 1.2.2, enrôlement opérateur/agent via le tool MCP privileged_helper_enroll du CORE Asami 0.25.3. Assets : binaire asami-host-helper (sha256 1dfdef91…), bootstrap hosthelper-bootstrap.pyz (sha256 8364d307…), installer manual pinned, archive source et wheel.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)
-
released this
2026-10-28 19:06:29 +01:00 | 17 commits to main since this releaseLinux Host Helper — version 1.2.1
Apports de la release :
- Correctif installeur (INSTALLER_VERSION 0.3.0) : accepte le trust binding LocalCore émis par le CORE (prepare_local_helper_enrollment) en plus du Remote ID canonique. Validation discriminée par connection.kind : remote = invariant inchangé (rmt_[0-9a-f]{32}, host/port/cert) ; local = executor_target_id "local" exact, champs exactement {kind,uid,gid}, uid/gid entiers stricts. Kind inconnu ou hybride → Refusal fail-closed. Symétrique du contrat service (HelperRealm LocalCore/RemoteCore).
Qualification (Atelier-H2, bytes exacts publiés) :
- Contraste 1.2.0 : installeur publié + trust local → Refusal « Use canonical Remote ID », exit 2, zéro effet (reproduction exacte du blocage Terry).
- Fresh install 1.2.1 + trust local : ok, phase PREPARED, store LMDB store_integrity ok, trust_digest sha256:f1e6a335c799b74d9280d795c7967a4309fcfb2d2085a7f606f1cc831927fa9b.
- Idempotence : re-runs → preparation_noop, trust_digest/helper_sha256 inchangés ; --check → LOCAL_CHECKED PASS.
- Conservation remote : wipe + fresh install 1.2.1 + trust rmt_* canonique → PREPARED, exit 0, binding distinct (trust_digest sha256:1c8591fd6a167acde61d1e1893aab2646052e8925706d05e063e59c119a50f99), invariant remote intact.
- Tests : 1377 passed / 271 skipped (user) ; 1637 passed / 1 failed (root, test_0112 préexistant sur main, hors scope, documenté).
Limite documentée : upgrade LMDB 1.2.0→1.2.1 par installeur refuse (fail-closed, helper mismatch). L upgrade canonique du HH reste le self-update CORE-signé. Le trajet Terry (fresh après wipe) est couvert par le banc.
SHA-256 archive source : 929ba2dfb7c4990d86c09698bce3165b579b76434eb41347f78204c6ccc2d5e0
Build : tag 1.2.1, commit de merge
219a092, treeb4973278fb(identique au tree du commit de buildceb5f48), BUILD_HEADceb5f48.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-10-27 07:51:03 +01:00 | 19 commits to main since this releaseLinux Host Helper — version 1.2.0
Apports de la release :
- Self-update hebdomadaire fail-safe (CC6) : vérification hebdomadaire de l origine GitLab épinglée (sidecars SHA-256 + HTTPS), précontrôles, activation atomique, rollback automatique, journalisation des 4 états (starting / succeeded / failed-rolled back / impossible). Le service oneshot asami-host-helper-update.service et le timer hebdomadaire sont installés par le bootstrap et activés par l installateur sur --activate.
- Correctif installateur : la route replacing exécute --prepare-service (convergence service + unités update avec readback public, événement preparation_converged) ; INSTALLER_VERSION 0.3.0.
- Correctif archive TAR (hérité de 1.1.1) : racine directory en tête, construction déterministe, vérification round-trip intégrée au build et à --check.
Qualification (Atelier H4, bytes exacts publiés) :
- Fresh install 1.1.1 (installateur officiel) : PASS ; upgrade 1.1.1→1.2.0 via --upgrade-service-artifact : PASS (identité et trust préservés, public_state_preserved) ; fresh install 1.2.0 (--activate) : PASS (update.timer enabled et planifié).
- Readiness : --version-json 1.2.0, store LMDB store_integrity ok, --check LOCAL_CHECKED, happy-path self-update update_checked.
- Extraction : GNU tar PASS et tarfile.extractall(filter=data) PASS — racine dirtype, 413 membres.
SHA-256 archive : 17fe50e263b72bff4d62791c0cfb79673f63f12f63fe0c034704991dfac0b394
Build : tag 1.2.0, commit
85b1a274cf, tree4fdf83a041(identique au tree du commit de buildc26a35e), BUILD_HEADc26a35e.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Linux Host Helper 1.1.1 Stable
released this
2026-10-27 06:17:36 +01:00 | 24 commits to main since this releaseLinux Host Helper — version 1.1.1
Correctif archive TAR de la release 1.1.0 : la racine de l archive source est desormais une vraie entree repertoire (dirtype) en tete d archive, la construction est deterministe (uid/gid 0, mtime du commit, modes depuis l index git, ordre trie) et une verification round-trip (racine directory unique, extraction reelle avec tarfile filter data, egalite du contenu extrait) est integree au build et a --check.
Qualification (Atelier, bytes exacts publies) :
- Fresh install 1.1.1 : PASS (LOCAL_CHECKED, LMDB, store_integrity ok).
- Upgrade officiel 0.1.0 vers 1.1.1 : PASS — remplacement SQLite vers LMDB via l installateur officiel, migration du store COMPLETE (logical_digest preserve), service actif sans redemarrage, meme trust et identite. C est le parcours exact de l hote de production.
- Extraction : GNU tar PASS et tarfile.extractall(filter=data) PASS (l archive 1.1.0 publiee echouait avec NotADirectoryError, racine regular).
- Reproducibilite : wheel et archive reconstruits octet pour octet avec SOURCE_DATE_EPOCH du commit.
SHA-256 archive : 1bea035dfe0f021c0385b8cc0c1c27a919015dbee8c3976d644e7698a1a2a8ff
Limitation connue : l installateur officiel ne supporte pas l upgrade LMDB vers LMDB (seuls le candidat exact et la baseline SQLite 0.1.0 sont admis). Aucun hote ne tourne en service sur 1.1.0-LMDB ; une future montee de version depuis un store LMDB passera par le self-update.
Build : tag 1.1.1, commit
77928089b1, tree9a74c895ee, BUILD_HEAD720a9f4.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-10-23 08:17:21 +02:00 | 31 commits to main since this releaseLinux Host Helper Reference 1.1.0 — Sentry diagnostics
Independent Python+LMDB Linux Host Helper reference release integrating the qualified linux-hosthelper-sentry-diagnostics feature: optional Sentry initialization in entrypoints, causal error diagnostics, redaction, and an audited exception-handler inventory. Sentry remains non-authoritative; absent/broken telemetry does not alter business effects, receipts or trust.
Compatibility: Host Helper protocol 1 and LMDB persistence unchanged. The Debian 13/amd64 bootstrap includes the qualified python3-lmdb 3.0.0 native backport from immutable 1.0.0. Asami CORE requires neither a new version nor a deployment. The Enroller owns installation and activation.
Qualification: functional HH84 candidate unchanged except Git attribution and release identity, HEAD
f32058153c, tree0c66706c00, release main commitae689cd639. Non-root full test suite 1308 PASS/305 SKIP, root full test suite 1569 PASS/44 SKIP. Reproducible build, wheel metadata and hashes PASS. Isolated Debian 13 systemd QA containers: official fresh 1.1.0 install PASS; exact published 1.0.0 baseline install and 1.0.0→1.1.0 native upgrade PASS; LMDB, identity/trust conservation, version/readback and manual installer --check PASS. Services remain inactive pending explicit enrollment and a real CORE-linked channel was not claimed by these isolated tests.Published archive linux-hosthelper-reference-1.1.0.tar.gz SHA-256 10e05371afd0c53f2908e165156011c723433d9c5695b02cac9231979eb115ce. Wheel and four runtime artefacts with sidecars also available. Release 1.0.0 stays immutable.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)
-
released this
2026-10-14 23:45:06 +02:00 | 48 commits to main since this releaseReference 1.0.0 — Linux Python+LMDB
Cette distribution fixe la référence exécutable Linux Python+LMDB. Le helper conserve les clés Ed25519, certificats, trust et bindings lors du remplacement de Reference 0.1.0 SQLite ; il reprend les ledgers, compteurs anti-rejeu, événements et sorties sans recommencer un effet déjà engagé.
Utilisation
L’archive
linux-hosthelper-reference-1.0.0.tar.gzcontient une racinelinux-hosthelper-reference-1.0.0/, les sources exactes et les artefacts préparés dansartifacts/. Le wheel, le helper, le bootstrap administratif, l’installeur et le manifest helper ont également leurs liens et sidecars propres dans la Release officielle.L’administrateur fournit le trust public exact de CORE et utilise son accès administratif existant. Après vérification des empreintes, il peut préparer une installation neuve :
sudo /usr/bin/python3 -I artifacts/install-hosthelper.py \ --version 1.0.0 \ --bootstrap artifacts/hosthelper-bootstrap.pyz \ --trust /chemin/du/trust-public-fourni-par-core.jsonL’installation neuve conserve le service arrêté jusqu’au binding explicite de son identité publique par CORE. La même commande avec
--activateactive cette identité liée ou remplace la baseline SQLite admise.--checkvérifie localement le binding, les bytes et le store ; la readiness fonctionnelle exige ensuite HELLO, fraîcheur CORE liée au nouvel epoch et exécution contrôlée. Le remplacement s’effectue sans effet actif, sous arrêt et fences vérifiés, avec journal et relecture de la migration ; la reprise corrige en avant.Qualification Linux
Candidate opérateur admise :
56b47169594296791760bf15ae8ff4a6d11ce78f. Intégrationdevelop:7fd34f5e923023579982af8ef4690fe46c169713, tree strictement identique. Runtime de qualification fonctionnelle :8fdc027b11e0dee6a645f5270f19bfe4e8bf188a; le delta de release porte uniquement sur identité/version, documentation et packaging.- H3 : 1 282 PASS / 271 SKIP non-root et 1 543 PASS / 10 SKIP root ; migration installée, reboot guest et récupération après effet fsyncé sans deuxième effet.
- A4 : suite complète de composition, 1 543 PASS / 10 SKIP, exit 0. Le premier banc incomplet, ses erreurs de Git/toolchain et la relance réussie sont conservés dans
provenance/reference-1.0-integration-20261014*. - H2 contre CORE QA-A4 réel : trois décisions humaines one-shot et trois SUCCESS, avant restart, après restart, puis après reboot guest. High-water 3, identités/ledgers/marqueurs conservés, sorties transférées et ACKées. La tentative expirée sans dispatch reste tracée séparément.
- Endurance H2 : trois fenêtres de 30 minutes, 183 observations et quatre redémarrages du helper ; conservation des invariants et absence de deuxième effet.
- Charge installée : 600 effets fsyncés via TLS/CORE de test, stdout court puis 64 KiB, vérification des doublons et ACK ; RSS observé environ 63–64 MiB, descripteurs 8–9, allocation LMDB stable sur ce profil.
Les comptes root/non-root se recoupent. Les preuves de candidate sont identifiées par commit/bytes ; la release impose en plus une qualification fresh install et upgrade des artefacts finaux exacts avant publication. Le bilan historique de candidate reste dans
provenance/lmdb-linux-qualification-20261014-aggregate.json; son ancien champ d’admission décrit l’instant de capture et n’est pas réécrit après décision de l’opérateur.Dépendance et mesures
Tuple de livraison qualifié : Debian 13 / amd64 / CPython 3.13, py-lmdb 3.0.0, moteur embarqué LMDB 0.9.36, format 0.9 explicite. Le bootstrap embarque le backport reproductible
python3-lmdb3.0.0-0asami1, SHA-256cc96b82d225b333cade2b0916ca72957041b6134f6d755e0b1d027c0416b77cb, puis vérifie l’extension effectivement chargée. Source amont, licence et provenance sont conservées. Une dépendance déjà conforme produit un no-op.Les cycles complets SQLite/LMDB, trois répétitions de 500 par backend avec même host/runtime et maintenance, montrent LMDB plus lent et davantage d’écritures sur ce banc, avec moins d’espace alloué et PSS proches. Les latences médianes sont SQLite 30–49 ms contre LMDB 51–59 ms. Aucun gain global n’est annoncé ; les données brutes et la méthode figurent dans
provenance/lmdb-lifecycle-20261014T205300Z*.Périmètre conservé
Le tag
0.1.0/c7ff916c6cf93ef8f7530313a1ad44bc0068dc17conserve la baseline SQLite et ses bytes. Python+LMDB reste une référence exécutable vivante pour les comportements communs, sous l’autorité normative P1–P6. Les ports C, OpenWrt et Windows, le self-update autonome, l’Enroller et l’intégration Linux à l’étape 3 gardent leurs gates et obligations propres. Cette publication n’active pas le rollout du parc ni la généralisation du transport persistant.Archive publiée exacte : SHA-256
521d0ea6df4e18aa37024eb4d7ed8e8509c6cb5b326554c7dbb1e5a07c64aa2b, 2 325 009 octets. Les bytes de cette archive ont passé fresh install et upgrade depuis 0.1.0 via le parcours officiel, puis les GET du Registry ont été comparés intégralement.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-10-13 21:50:02 +02:00 | 193 commits to main since this releaseReference 0.1 — Linux Python+SQLite
Cette première référence rassemble le HostHelper Linux Python+SQLite développé et qualifié dans la branche Asami
privileged-execution. Elle rend son code, ses tests, ses fixtures et ses preuves reproductibles indépendamment du serveur MCP et des interfaces humaines.Ce que permet la référence
- Exécuter un
ProcessSpecauthentifié déjà matérialisé par CORE, avec executable et identité explicites, guards locaux et postconditions ; aucun shell implicite ni autorité inventée par le helper. - Conserver une identité Ed25519 et un trust pinné, vérifier le TLS et les signatures métier, reconnecter sans recommencer un effet.
- Persister l’admission, le high-water, le start fence et les résultats SQLite. Avant fence durable, une reprise exige l’absence de start prouvée ; après effet possible, réconcilier ou conserver
AMBIGUOUS. - Annuler selon le contrat un groupe de processus réel, y compris lorsque son processus principal est déjà sorti ; conserver les issues et preuves terminales.
- Borner sorties, blobs, délais, mémoire et descripteurs ; récupérer les ACK et nettoyer progressivement sans supprimer les racines de recovery ou la protection contre le rejeu.
- Construire le même artefact portable et le même bootstrap administratif que ceux admis sur les pilotes, puis installer manuellement le service systemd avec un trust exact fourni par CORE.
Parcours de développement
Le socle durable et l’exécuteur POSIX ont été établis le 4 octobre ; le service supervisé, les événements et le trust persistant le 7 ; les contrôles d’identité, la fraîcheur, les blobs et les guards le 8. Les 9–10 octobre ont ajouté les preuves de pression mémoire/descripteurs/disque et de recovery SQLite/WAL, la compaction progressive puis le bootstrap et l’installation systemd. Les 11–13 ont renforcé la reconnexion, le transfert des sorties, les refus, les crashes avant fence et la cancellation signée. Le pilote Longitude et l’admission explicite ont ensuite fixé la baseline.
L’import Git conserve 138 commits pertinents pour les fichiers effectivement extraits, avec une correspondance vers les commits Asami. Ce nombre n’est pas un nombre de fonctionnalités ni une nouvelle qualification de tout le plan de contrôle.
Identité et limites
Source figée :
4c4dcf09d693fd7690ab1511ab04cc06ccd0a4ef; candidate admisee9ff5e2; helper97c82d4. Helper reconstruit SHA-2569e83210b179fde8716ae9dd90d7e1ebf7fd268e6c263044fa98be402262cd9adet bootstrapb32c0b4919faf62830e7d5079bb119ef48fd260b0b1c546bbf7c4f590108dd0c, strictement identiques aux artefacts conservés.Cette référence est la baseline SQLite, pas le port LMDB, le self-update autonome Common Core, un Enroller ou un nouveau runtime Windows/OpenWrt. Elle ne revendique pas la clôture des qualifications globales MCP/WMI/Receipes. La réserve opérateur sur la généralisation du transport persistant reste distincte.
La publication finale doit relier le commit du dépôt autonome, l’archive exacte, les checksums et la qualification de cette extraction. Ce document prépare ses notes ; il ne prouve pas qu’une GitLab Release a déjà été publiée.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Exécuter un