Aller au contenu principal

AUSUS v0.2.0-alpha.5 — Hotfix documentation et CI

Release documentation, metadata d'empaquetage et CI. Aucun changement runtime, aucun changement architectural, aucune nouvelle fonctionnalité, aucun changement d'API publique. Une passe de correction au-dessus de v0.2.0-alpha.4 qui clôt deux problèmes observés lors d'installations réelles.

Vue d'ensemble

Deux problèmes sont apparus après l'arrivée de v0.2.0-alpha.4 sur Packagist :

  • @ausus/renderer-react@0.2.0-alpha.4 n'a jamais pu être publié sur npm parce que le champ repository.url du package ne correspondait pas au dépôt GitHub Actions qui exécute le workflow de publication, ce qui faisait échouer l'attestation de provenance sigstore. Le renderer est resté à 0.1.1 sur le registre npm public alors que les packages PHP affichaient 0.2.0-alpha.4.
  • La commande quickstart documentée composer create-project ausus/starter myapp (sans flag explicite --stability=alpha) utilisait la valeur par défaut Composer minimum-stability=stable, qui résout sur la ligne legacy v0.1.x de Packagist au lieu de la chaîne v0.2 alpha. La déclaration minimum-stability: alpha du starter lui-même est lue après que le résolveur a déjà choisi une version, et ne peut donc pas influencer la sélection.

v0.2.0-alpha.5 corrige les deux — exclusivement par des changements de metadata de package, de documentation et de CI. Le runtime PHP, le runtime React, la surface d'API publique et le format de fil ViewSchema sont bit-à-bit identiques à v0.2.0-alpha.4.

Correctifs

  • Provenance npm du renderer. renderer/react/package.json repository.url et homepage pointent désormais vers https://github.com/adonko3xBitters/ausus-framework, en correspondance exacte avec le dépôt GitHub Actions qui exécute npm publish --provenance. Le bundle sigstore est désormais validé et le renderer peut atteindre le registre npm public.

  • Quickstart documenté mis à jour. La commande d'installation canonique dans docs-site/docs/getting-started/installation.md et dans README.md demande désormais explicitement le canal alpha :

    composer create-project "ausus/starter:^0.2@alpha" myapp --stability=alpha

    C'est la commande d'installation pour toutes les v0.2.x alpha jusqu'à la première release stable d'AUSUS.

  • Couverture troubleshooting élargie. Deux nouvelles entrées dans docs-site/docs/tutorial/troubleshooting.md :

    • create-project installe le monorepo au lieu du starter — symptômes, cause (résolution par défaut Composer minimum-stability=stable qui sélectionne legacy 0.1.x), et commande d'installation corrigée.
    • composer boot retourne Command "boot" is not defined — même cause racine, même résolution (relancer avec le sélecteur alpha explicite).

Rétrospective v0.2.0-alpha.4

Les notes de release antérieures impliquaient que composer create-project gérait automatiquement la stability alpha via le composer.json scaffolded. La procédure documentée a été clarifiée pour correspondre au comportement réel de résolution Composer : le flag de stability doit actuellement être demandé explicitement.

CI / Release Engineering

  • Gate clean-room ajouté. scripts/release-gate.sh Step 9 (live mode uniquement) invoque le nouveau scripts/clean-room-install-test.sh, qui exécute le quickstart documenté exact dans un répertoire temporaire jetable contre le registre Packagist live et vérifie cinq gates :

    GateVérification
    AAucun de packages/, apps/, docs-site/, renderer/, .github/, scripts/ n'est présent dans le scaffold.
    BLe composer.json du scaffold a name == ausus/starter.
    CLe composer.json du scaffold n'a pas d'entrée repositories[] non vide.
    Dcomposer boot --no-interaction réussit.
    EChaque package ausus/* requis s'installe à la version attendue.

    Chaque gate émet des marqueurs ::error:: en cas d'échec. Le gate est l'invariant de publication qui aurait dû intercepter la régression du quickstart v0.2.0-alpha.4 avant le push de tag.

  • Surface des codes de sortie étendue. scripts/release-gate.sh documente désormais le code de sortie 8 = clean-room starter install failure (live mode).

  • Notice de skip en mode local. Lorsque release-gate.sh s'exécute en mode local (RELEASE_GATE_LIVE != 1), il émet désormais une notice explicite clean-room starter install skipped pour rendre le skip visible dans les logs CI de PR.

Installation

Commande d'installation canonique pour les alpha v0.2.x :

composer create-project "ausus/starter:^0.2@alpha" myapp --stability=alpha
cd myapp
composer boot

Si vous configurez le projet manuellement plutôt que via create-project, déclarez la stability alpha à la racine de votre composer.json :

{
"minimum-stability": "alpha",
"prefer-stable": true,
"require": {
"ausus/standard-stack": "^0.2@alpha"
}
}

Voir Alpha installation requirements pour l'explication complète, et Troubleshooting si l'installation ne se comporte pas comme attendu.

Renderer React

@ausus/renderer-react@0.2.0-alpha.5 embarque les corrections de metadata repository.url et homepage.

  • Aucun changement runtime TypeScript, JavaScript ou React.
  • peerSchemaVersion reste à ^1.0.0.
  • schemaVersion côté backend reste à 1.0.0.
  • peerDependencies, exports, scripts de build et forme du bundle sont inchangés.

L'artefact publié reflète le correctif de metadata ; le renderer est sinon bit-à-bit identique à 0.2.0-alpha.4.

Limitations connues

  • Aucun changement runtime depuis v0.2.0-alpha.4. Le kernel, le runtime, la persistence, la surface HTTP API, la taxonomie d'erreurs et le format de fil ViewSchema sont bit-à-bit identiques à v0.2.0-alpha.4. Aucune API PHP publique n'a été ajoutée, supprimée ou renommée.
  • Le flag --stability=alpha Composer reste requis. Composer utilise minimum-stability=stable par défaut et ne peut pas résoudre la chaîne v0.2 alpha sans le flag explicite. C'est un comportement Composer documenté et standard ; il ne disparaîtra qu'avec la première release stable v1.0.0 d'AUSUS.
  • Le filtrage et la pagination restent reportés. Le scope initial de v0.2.0-alpha.5 (filtrage de projection cursor-based AND-only) ne fait pas partie de cette release. L'architecture est gelée ; l'implémentation continue séparément sur une alpha future.

Packages publiés

PackageVersion
ausus/kernelv0.2.0-alpha.5
ausus/runtime-defaultv0.2.0-alpha.5
ausus/persistence-sqlv0.2.0-alpha.5
ausus/api-httpv0.2.0-alpha.5
ausus/standard-stackv0.2.0-alpha.5
ausus/starterv0.2.0-alpha.5
ausus/tenancy-rowv0.2.0-alpha.5 (réservé par nom)
ausus/audit-databasev0.2.0-alpha.5 (réservé par nom)
ausus/auth-bridgev0.2.0-alpha.5 (réservé par nom)
ausus/presentation-defaultv0.2.0-alpha.5 (réservé par nom)
@ausus/renderer-react0.2.0-alpha.5