docs(mosaic): close CORE-C V2 evidence and independent reviews
This commit is contained in:
parent
bf00b0b0ed
commit
9d4e7942f5
18 changed files with 1633 additions and 1 deletions
|
|
@ -4,6 +4,15 @@
|
|||
|
||||
### STEP20C experimental evidence
|
||||
|
||||
- Record the [new CORE-C V2 integration decision](docs/design/STEP20C_COREC_V2_INTEGRATION_DECISION.md):
|
||||
reconstructible source-only CORE/OOM/G2 kit, three private binary identities,
|
||||
12 consumed runs and 102 output captures. C7/C8/O1/G2 stay INCONCLUSIVE,
|
||||
O2/R1 NOT_RUN; bounded O1 survival and strict first-A G2 refusal do not close
|
||||
production gates. Disposition PRIVATE_COREC_V2_NEEDS_TARGETED_EVIDENCE,
|
||||
recommendation C_FURTHER_NATIVE_REVIEW, production availability UNDECIDED.
|
||||
Historical lost bytes remain missing; STEP20C NEXT and production
|
||||
multi-output NOT_YET_SUPPORTED, with no production authorization.
|
||||
|
||||
- Record the separate [CORE-C preallocation/native/GPU precision source gate](docs/design/STEP20C_COREC_PREALLOCATION_NATIVE_AND_GPU_PRECISION.md)
|
||||
as BLOCKED after user-confirmed deletion of required historical LABs:
|
||||
three seal receipts absent, 0/979 entries and 0/916 files reverified. Keep
|
||||
|
|
|
|||
|
|
@ -1,5 +1,16 @@
|
|||
# Architecture
|
||||
|
||||
The [new CORE-C V2 dossier](design/STEP20C_COREC_V2_INTEGRATION_DECISION.md)
|
||||
records an experimental prepublication sidecar reservation, reviewed nullable
|
||||
constructor rollback and sampled native clipping/input on its own binary SHA.
|
||||
O1 observes zero initialized/published nodes and listeners plus bounded native
|
||||
survival, but remains INCONCLUSIVE because its closure oracle rejects the
|
||||
root-only lifecycle. Applied/input and damage evidence is partial; native
|
||||
commit/present, exact presented-buffer identity, GPU completion and atomic
|
||||
generation remain NOT_PROVEN. Compositor/tree authority and Row 0 borrowing
|
||||
remain the accepted contracts. No public ABI, production OOM policy or
|
||||
dependency is adopted; STEP20C NEXT, production NOT_YET_SUPPORTED.
|
||||
|
||||
This is the canonical technical contract for SwayFX Mosaic. The current implementation is an experimental single-row compositor layout. [UX](UX.md) specifies user-visible behavior; [known limitations](KNOWN_LIMITATIONS.md) identifies unvalidated boundaries.
|
||||
|
||||
## Scope and authority
|
||||
|
|
|
|||
|
|
@ -1,5 +1,18 @@
|
|||
# Development workflow
|
||||
|
||||
For the new experimental CORE-C V2 only, use the
|
||||
[versioned source-only kit](../tooling/probes/step20c-corec-v2/README.md), its
|
||||
[private build recipe](../tooling/probes/step20c-corec-v2/BUILD_RECIPE.md) and
|
||||
[decision/evidence dossier](design/STEP20C_COREC_V2_INTEGRATION_DECISION.md).
|
||||
Fresh Git-archive reproduction checks complete bytes and modes for new CORE,
|
||||
OOM and GPU trees; it does not recover historical binaries or prove binary
|
||||
bit reproducibility. Three private couples/stages and one H1 sanitizer
|
||||
campaign were consumed; no full-compositor sanitizer H2. Keep generated data
|
||||
outside HOME, redirect temp/cache with the private wrapper, use separate
|
||||
sockets, and preserve the LAB. The documented selective purge is NOT EXECUTED.
|
||||
No new run, production build dependency, installation or live-session action
|
||||
is authorized by reproduction instructions.
|
||||
|
||||
Use separate build directories and headless compositor tests. Ordinary development does not install into `/usr`, reload Sway, or change the active desktop session. The current package is experimental; see [Packaging](PACKAGING.md) for the file-ownership contract.
|
||||
|
||||
## Repository and remotes
|
||||
|
|
|
|||
|
|
@ -1,5 +1,16 @@
|
|||
# Known limitations
|
||||
|
||||
The [CORE-C V2 decision](design/STEP20C_COREC_V2_INTEGRATION_DECISION.md)
|
||||
adds reproducible new sources and bounded private native evidence, without
|
||||
recovering the historical deleted bytes. C7 migration uses an incomplete
|
||||
camera oracle; C8 fails group comparability before captures; O1 survives the
|
||||
injection but its root-only closure is rejected; G2 stops at first A on the
|
||||
strict EGL/GLES capability guard, with no raw GPU readback. All four runs stay
|
||||
INCONCLUSIVE; fullscreen comparison is NOT_EXERCISED, O2/R1 NOT_RUN.
|
||||
Damage/lifetime/whole-field GPU gates, legal approval and release/security
|
||||
ownership remain open. STEP20C NEXT; production multi-output
|
||||
NOT_YET_SUPPORTED; PRODUCTION_AUTHORIZED FALSE.
|
||||
|
||||
This document describes the development tree at the documentation foundation pass. `EXPERIMENTAL` means implemented but incompletely validated; `PLANNED` means absent from runtime; `NOT YET SUPPORTED` means it must not be presented as ready for general use.
|
||||
|
||||
| Area | Status | Practical implication |
|
||||
|
|
|
|||
|
|
@ -1,5 +1,14 @@
|
|||
# Documentation
|
||||
|
||||
The [CORE-C V2 integration decision](design/STEP20C_COREC_V2_INTEGRATION_DECISION.md)
|
||||
records the new Git-reconstructible experimental candidate, three private
|
||||
binary identities and the reconciled 14-cell matrix (12 runs, 102 captures).
|
||||
Disposition is PRIVATE_COREC_V2_NEEDS_TARGETED_EVIDENCE; OOM recommendation
|
||||
C_FURTHER_NATIVE_REVIEW, production availability UNDECIDED. C7/C8/O1/G2 remain
|
||||
INCONCLUSIVE, O2/R1 NOT_RUN. This later evidence does not rewrite the historical
|
||||
blocked provenance ticket. STEP20C remains NEXT; production multi-output
|
||||
NOT_YET_SUPPORTED; PRODUCTION_AUTHORIZED FALSE.
|
||||
|
||||
Documentation is a first-class project artifact. Architecture and UX contracts are updated before implementation when behavior changes.
|
||||
|
||||
The [root README](../README.md) is the public summary. For a specific topic, use the canonical document below. Within its own subject, a canonical document takes precedence over a historical STEP report. If two canonical documents disagree, resolve the conflict before implementation; do not silently choose one.
|
||||
|
|
|
|||
|
|
@ -1,5 +1,16 @@
|
|||
# Roadmap
|
||||
|
||||
The [CORE-C V2 handoff](design/STEP20C_COREC_V2_INTEGRATION_DECISION.md)
|
||||
is PARTIALLY_ADVANCED, with a Git-reconstructible experimental kit and 12
|
||||
consumed runs / 102 captures. Disposition remains
|
||||
PRIVATE_COREC_V2_NEEDS_TARGETED_EVIDENCE, recommendation C_FURTHER_NATIVE_REVIEW,
|
||||
production availability UNDECIDED. The next smallest justified tranche is
|
||||
prospective offline repair/review of the C7 migration, C8 group and O1 closure
|
||||
fixtures plus targeted native C review; any later run requires separate
|
||||
admission and budget. No consumed run may be retried under this ticket.
|
||||
STEP20A DONE; STEP20B EXPERIMENTAL; STEP20C NEXT; STEP20D–G PLANNED;
|
||||
PRODUCTION_MULTI_OUTPUT NOT_YET_SUPPORTED; PRODUCTION_AUTHORIZED FALSE.
|
||||
|
||||
This is the canonical order of work, not proof that a feature exists. **A step is not ready for implementation until its user-visible and architectural behavior is documented in the canonical docs.** Update [UX](UX.md), [architecture](ARCHITECTURE.md), and the relevant packaging/upstream documents before changing behavior. Record validation and limitations when the step closes.
|
||||
|
||||
| Step | State | Goal |
|
||||
|
|
|
|||
|
|
@ -1,5 +1,17 @@
|
|||
# Upstream maintenance
|
||||
|
||||
The [CORE-C V2 dossier](design/STEP20C_COREC_V2_INTEGRATION_DECISION.md)
|
||||
records exact new pinned parents, private patch SHA256, three binary Build IDs
|
||||
and static-SceneFX/shared-wlroots provider checks. This is experimental
|
||||
source-only persistence, not a permanent library fork or production merge.
|
||||
Each changed source/dependency pair requires fresh impact review, rebuild,
|
||||
ABI/stage and relevant native qualification. Notices remain
|
||||
LEGAL_NOT_APPROVED; maintenance, release and security owners are unassigned.
|
||||
Rollback/coexistence is prepared around the distinct Mosaic binary and ordinary
|
||||
independently updatable SwayFX fallback, with no live rollback executed.
|
||||
Production availability remains UNDECIDED; STEP20C NEXT, production
|
||||
multi-output NOT_YET_SUPPORTED and authority FALSE.
|
||||
|
||||
SwayFX Mosaic is an independent derivative of [SwayFX](https://github.com/WillPower3309/swayfx), which is based on [Sway](https://github.com/swaywm/sway). It is not endorsed by either project's maintainers. Preserve their license and attribution; see [LICENSE](../LICENSE) and [NOTICE](../NOTICE.md).
|
||||
|
||||
## Pinned source base
|
||||
|
|
|
|||
559
docs/design/STEP20C_COREC_V2_INTEGRATION_DECISION.md
Normal file
559
docs/design/STEP20C_COREC_V2_INTEGRATION_DECISION.md
Normal file
|
|
@ -0,0 +1,559 @@
|
|||
# SWAYFX_MOSAIC_STEP20C_REBUILD_FROM_GIT_COREC_OOM_GPU_NIGHT_SHIFT_V1
|
||||
|
||||
2026-10-15. Dossier expérimental de décision, distinct du
|
||||
[ticket historique bloqué](STEP20C_COREC_PREALLOCATION_NATIVE_AND_GPU_PRECISION.md)
|
||||
et du [plan de provenance V2](STEP20C_COREC_V2_PROVENANCE_AND_PLAN.md).
|
||||
Les contrats canoniques gardent leur autorité. Aucun résultat de ce dossier
|
||||
n'adopte une politique de production.
|
||||
|
||||
Disposition : **PRIVATE_COREC_V2_NEEDS_TARGETED_EVIDENCE**.
|
||||
Recommandation OOM : **C_FURTHER_NATIVE_REVIEW**.
|
||||
Availability production : **UNDECIDED**.
|
||||
Résultat global : **PARTIALLY_ADVANCED**.
|
||||
|
||||
```text
|
||||
STEP20A = DONE
|
||||
STEP20B = EXPERIMENTAL
|
||||
STEP20C = NEXT
|
||||
STEP20D–G = PLANNED
|
||||
PRODUCTION_MULTI_OUTPUT = NOT_YET_SUPPORTED
|
||||
PRODUCTION_AUTHORIZED = FALSE
|
||||
```
|
||||
|
||||
## 1. Provenance nouvelle et persistance Git
|
||||
|
||||
Le début du ticket était `339dda45bc81b953e2f0afadf28765149e3a1ba1`,
|
||||
sur `main` propre. Le nouveau candidat s'appelle **COREC_V2_REDERIVED**.
|
||||
Il reconstruit des sources natives complètes depuis les objets Git survivants
|
||||
et les sources publiques épinglées. Les anciens arbres privés, binaires CORE/
|
||||
CORE-C/G1, hooks et captures supprimés restent **MISSING_NOT_RECOVERABLE** ;
|
||||
aucune égalité avec leurs anciens SHA n'est affirmée. Leurs résultats restent
|
||||
**HISTORICAL_REPORTED_ONLY**. Les échecs et budgets du ticket précédent restent
|
||||
inchangés.
|
||||
|
||||
| Élément | Identité exacte | Rôle |
|
||||
| --- | --- | --- |
|
||||
| Mosaic parent | `cd550382b311efdbfe3ed892f4e1d281d852e754` | Parent Git de reconstruction |
|
||||
| Arbre parent Mosaic | `6be2d6cada19bd84673c30dfc4fb900a48b87e86` | Vérification des modes et octets |
|
||||
| SceneFX | `37ccd723bef49e6891156ffafce8f549f01446cc` | Source publique épinglée |
|
||||
| Arbre parent SceneFX | `685a78b94f9e44ee683e5fea93874557a9fed457` | Vérification des modes et octets |
|
||||
| SwayFX pristine | `fd71a6bdc061bd633b488ae7b83e8a6981d22f86` | Contrôle indépendant, pas le checkout modifié |
|
||||
| wlroots source | `d783533489e1f75d6886c2ab5c5960090ef268f8` | Audit source, non modifié |
|
||||
| wlroots partagé SHA256 | `7edca9a7d65855addda68e29ba5db94d57c803eb5fa7d0f86db3136b90ca9837` | Fournisseur exact qualifié localement |
|
||||
| Patch CORE SceneFX SHA256 | `6039799046d052bb4cf2b15fbeb132983d6e3c1a45ad63752a6a63e83b585627` | Delta cumulatif privé |
|
||||
| Patch CORE Mosaic SHA256 | `9eb6afac0be5c747fbf1a1ee5a33a633c193c4ebae0a36b17636abde7a64c879` | Delta cumulatif privé |
|
||||
|
||||
Le [kit source-only](../../tooling/probes/step20c-corec-v2/README.md) conserve
|
||||
patches, assemblage, vérification, clients, tests, schémas, budgets et recettes.
|
||||
Il ne contient ni copie complète d'upstream, ni bibliothèque, ni binaire,
|
||||
capture, arbre de build ou socket. Ses suppléments OOM/GPU sont séparés du CORE
|
||||
fonctionnel et portent leurs propres manifests de parents et résultats.
|
||||
|
||||
Les commits source-only suivants étaient publiés normalement sur `origin`
|
||||
(Forgejo) puis `github`, avant les runs qui en dépendaient :
|
||||
|
||||
- `1053ab2a47f8ff0ab5d52fb0cba92c5dba4ad531` : kit CORE reconstructible ;
|
||||
- `c0a822a0799ef024727b4a51a7442b8626223a69` : fixtures headless revues ;
|
||||
- `bf00b0b0ed3e20bfb7c68d2fbbe6553594f3167a` : diagnostics OOM/G2 revus.
|
||||
|
||||
Le dernier kit compte 105 fichiers, environ 1,18 Mo. La reproduction depuis
|
||||
une archive Git vierge (`results/git-next-kit-reproduction.json`) vérifie les
|
||||
octets et modes des arbres CORE SceneFX/Mosaic 85/417 fichiers, OOM 86/417,
|
||||
GPU SceneFX 87 ; une reconstruction CORE indépendante avec fetch public avait
|
||||
déjà été acceptée. Cela prouve **EXACT_FOR_NEW_TREE**, sans garantir un binaire
|
||||
reproductible bit à bit. La [recette de build](../../tooling/probes/step20c-corec-v2/BUILD_RECIPE.md)
|
||||
décrit les prérequis et les limites.
|
||||
|
||||
La publication documentaire finale reste à sceller par le closeout final ;
|
||||
aucun SHA futur n'est inventé ici. Le contrôle système pré-final confirme
|
||||
les huit hashes protégés, le PID Sway quotidien 2325, son exécutable
|
||||
`/usr/bin/sway` et son startticks 2833 inchangés par lecture seule. Tous les
|
||||
PIDs privés vérifiés sont absents ; aucun `/tmp/smx-*` ne reste. Les huit
|
||||
premières entrées du ledger sont structurellement identiques aux reçus initiaux.
|
||||
À cette édition, `bf00b0b0ed3e20bfb7c68d2fbbe6553594f3167a` est la dernière
|
||||
publication vérifiée. Ce dossier ne prétend pas déjà publié sous son propre
|
||||
futur commit.
|
||||
|
||||
## 2. Contrat technique V2 et audit C
|
||||
|
||||
SwayFX garde l'autorité sur arbre, focus, caméra, transactions, scène, input et
|
||||
IPC ; Row 0 emprunte `workspace->tiling`. Le nouveau delta privé garde les
|
||||
popups root dans leur couche native globale, dérive leur clip de l'owner tiled
|
||||
CURRENT et laisse les descendants nested hériter. Le leaf réellement caché
|
||||
reçoit un clip vide ; les ancêtres CURRENT fullscreen sont parcourus ; les
|
||||
retours standard/floating/fullscreen retirent le clip supplémentaire. Aucune
|
||||
UX hide/dismiss/reposition ni promesse de click-through universel n'en découle.
|
||||
|
||||
Option C : la factory réserve le sidecar avant `scene_tree_init` et avant toute
|
||||
publication. L'échec libère l'arbre non publié et retourne NULL. Le setter
|
||||
n'alloue pas ; NULL désactive en conservant la réservation ; une boîte vide
|
||||
reste active et masque rendu/input. Les réservations inactives sont ignorées
|
||||
par get/render/hit ; destroy retire et libère une seule fois. Un root embedded
|
||||
non réservé est explicitement rejeté par abort, même avec NDEBUG. Ce rejet de
|
||||
précondition n'est pas le traitement OOM de la factory.
|
||||
|
||||
L'audit inspecte 294 références / 16 symboles, avec ownership, premiers usages,
|
||||
NULL, rollback et listeners. Les callers du compositor et les helpers wlroots
|
||||
épinglés sont couverts ; tinywl/examples non liés restent hors qualification.
|
||||
Les réparations expérimentales sont bornées à l'admission/back-pointer IME,
|
||||
refocus/rollback, premier usage nullable de dim-rect, admission image-capture
|
||||
XDG et destruction partielle output/workspace/view/seat. Aucun layout public
|
||||
de struct ni signature publique ne change. Les translations/intersections
|
||||
utilisent des bornes larges avant narrowing ; la conversion caméra vérifie
|
||||
finite/range avant conversion.
|
||||
|
||||
Mesures natives : arbre 128 octets, sidecar 64 octets pour **chaque arbre de
|
||||
factory**, y compris inactif et non Mosaic. Lookup linéaire ; overhead de
|
||||
l'allocateur et coût global/performance **NOT MEASURED**. Trois traces passives
|
||||
restent déclarées (`SPIKE_CLIP`, `PROBE_POPUP_CLIP`,
|
||||
`PROBE_POPUP_HIDDEN_OWNER`) ; leur neutralité temporelle est **NOT_PROVEN**.
|
||||
NULL et zéro actif peuvent produire la même ligne de log. `SPIKE_DAMAGE` et
|
||||
les hooks PI/OPT sont absents du CORE fonctionnel.
|
||||
|
||||
Les corps C exacts sont liés aux SHA complets et offsets de slices ; types
|
||||
natifs, signaux Wayland et régions Pixman sont réels. Les adapters de damage/
|
||||
visibility/effects restent explicitement des adapters : ils ne prouvent pas
|
||||
le moteur natif. Normal C17, UBSan (dont float-cast/signed overflow/bounds),
|
||||
ASan+UBSan ont réussi dans le périmètre borné. Les dix mutants compilent tous
|
||||
et sont tous tués par un oracle exécuté. Les échecs de setup et la correction
|
||||
du harness root-return restent archivés ; aucun échec de compilation ne compte
|
||||
comme mutant tué. Le corpus OOM supplémentaire couvre 27 cas dans trois modes,
|
||||
six mutants causaux et neuf négatifs supplémentaires ; il étend le même
|
||||
harnais H1, sans campagne sanitizer H2 full-compositor.
|
||||
|
||||
Dix cores systemd précoces (2 261 704 octets sous gestion système hors LAB) et
|
||||
huit événements journal-only ont précédé le correctif de dumpability. Ils n'ont
|
||||
été ni supprimés ni manipulés avec sudo. RLIMIT_CORE seul était insuffisant
|
||||
avec le handler pipé. Le harnais final vérifie PR_SET_DUMPABLE=0 et
|
||||
PR_GET_DUMPABLE ; l'audit final des corpus n'observe pas de nouvelle entrée.
|
||||
Il serait faux d'affirmer zéro écriture hors LAB pour les premières exécutions.
|
||||
|
||||
## 3. Trois couples privés et staging
|
||||
|
||||
| Couple | SHA256 du compositor | Build ID |
|
||||
| --- | --- | --- |
|
||||
| CORE | `91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb` | `d5d304533f2c8db9d738365e9bd7f2c96779ef8d` |
|
||||
| OOM | `6067946bd79ad6fd8da7669ab9b0b3bacfd2638f5d3d8382002b9118db20d835` | `9bc3dc9055106b343c80a51ded111a382e98442d` |
|
||||
| GPU | `b2ba890908e385b0a8884e786b279bfb2e582eed38c7fcd0587b418326eca5bc` | `b6a52111beabe3c2122e0142a802415d3c84f9a5` |
|
||||
|
||||
Chaque couple a sa revue ELF/build et son DESTDIR privé de cinq fichiers :
|
||||
binaire distinct et quatre notices sous `/usr/share/licenses/swayfx-mosaic/`.
|
||||
SceneFX est statique ; wlroots partagé est le fournisseur exact ci-dessus.
|
||||
Les revues vérifient symboles privés, layouts, archives, relocations, absence
|
||||
de SceneFX DT_NEEDED et absence de RPATH/RUNPATH. Les traces loader sont
|
||||
distinctes des mappings `/proc` observés au runtime. L'acceptation vaut pour
|
||||
ces octets, pas pour une future paire simplement proche en version.
|
||||
|
||||
Le premier build CORE rencontre un nouvel enum libinput sous Werror ; la
|
||||
recette privée utilise `-Wno-error=switch`, garde le warning et ne modifie pas
|
||||
le C. Le premier build GPU échoue sur la déclaration de realpath ; la
|
||||
configuration privée `-Dc_args=-D_XOPEN_SOURCE=700` définit la macro
|
||||
`_XOPEN_SOURCE=700` et résout ce problème, sans edit C.
|
||||
Ces tentatives restent dans leurs réservations de couples ; elles ne sont
|
||||
pas cachées par le succès ultérieur. Trois couples / trois stages consommés ;
|
||||
aucun package installé, aucune modification du vrai PKGBUILD ou du patch
|
||||
production. Notices : **LEGAL_NOT_APPROVED** ; makepkg/distribution ne sont
|
||||
pas qualifiés par ces stages.
|
||||
|
||||
## 4. Matrice native des 14 cellules prévues
|
||||
|
||||
P0/P1 utilisent le contrôle pristine qualifié séparément (SHA256
|
||||
`b7fa32116e3c42706b9b02da7df12f27e76d82dd253deb8bdec81519eed145f6`).
|
||||
C1–C8 utilisent uniquement CORE ; O1/O2 uniquement OOM ; G2 uniquement GPU.
|
||||
Une réservation reste consommée après refus ou échec ; aucun retry.
|
||||
|
||||
| Run | Binaire | Objet | Statut scientifique | Captures / cap réservé |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| P0 | pristine | Contrôle standard horizontal | PARTIALLY_FEASIBLE | 10 / 10 |
|
||||
| C1 | CORE | Horizontal, nested grabs, retours standard | PARTIALLY_FEASIBLE | 16 / 18 |
|
||||
| C2 | CORE | Vertical | PARTIALLY_FEASIBLE | 8 / 12 |
|
||||
| C3 | CORE | Scale fractionnaire | PARTIALLY_FEASIBLE | 9 / 12 |
|
||||
| C4 | CORE | R90 | PARTIALLY_FEASIBLE | 9 / 12 |
|
||||
| C5 | CORE | Owner caché, même chaîne, retour | PARTIALLY_FEASIBLE | 12 / 12 |
|
||||
| C6 | CORE | Configure retenu, timeout naturel, retour live | PARTIALLY_FEASIBLE | 10 / 12 |
|
||||
| C7 | CORE | Resize/migration dynamique | INCONCLUSIVE | 10 / 14 |
|
||||
| P1 | pristine | Non-leaf fullscreen et débordement réel | PARTIALLY_FEASIBLE | 10 / 10 |
|
||||
| C8 | CORE | Comparaison non-leaf fullscreen | INCONCLUSIVE | 0 / 12 |
|
||||
| O1 | OOM | Première réservation root-popup ciblée | INCONCLUSIVE | 6 / 8 |
|
||||
| G2 | GPU | Première acquisition A, arrêt strict | INCONCLUSIVE | 2 / 16 |
|
||||
| O2 | OOM | Deuxième réservation ciblée | NOT_RUN — dépendance O1 fermée | 0 / non réservé |
|
||||
| R1 | aucun | Discriminant conditionnel | NOT_RUN — non admis | 0 / non réservé |
|
||||
|
||||
Total réconcilié : **12 runs lancés une seule fois / 14 maximum ; 102 captures
|
||||
output / 180 ; somme des caps réservés 148 / 180**. Les deux PNG source-marker
|
||||
générés pour C3/C4 ne sont pas des captures output. Le snapshot intermédiaire
|
||||
`phase-status.json` est désormais réconcilié à 12 runs / 102 captures. Son
|
||||
ancien état 8 runs / 84 captures est préservé dans
|
||||
`results/resume-audit/phase-status.json.before` et
|
||||
`results/phase-status-before-closeout.json`, sans modifier les anciens reçus.
|
||||
Maximum
|
||||
par run : 18 captures et 150 secondes ; build `-j8` maximum. Une seule campagne
|
||||
sanitizer H1 sur deux autorisées ; pas de H2 full-compositor. L'espace restant
|
||||
dans un budget ne constitue pas une admission à rejouer une cellule consommée.
|
||||
|
||||
## 5. Mesures graphiques et refus conservés
|
||||
|
||||
P0 fournit le contrôle standard, avec serial/grab réels, popup root/nested et
|
||||
débordement standard. Les tests du nouveau CORE ont leurs propres chaînes
|
||||
wire, points visibles/interdits, captures et retours. La première revue native
|
||||
vérifie 28 paires wire/input et 30 fermetures pour P0/C1–C7. Les retours H2
|
||||
finaux sont exacts dans les échantillons acceptés ; un H2 standard contenant
|
||||
encore des popups débordants ne doit pas être comparé à un baseline vide.
|
||||
Les contrôles pristine propres à scale et rotation sont **NOT TESTED**.
|
||||
|
||||
C2 conserve son ancien champ brut X0 `NOT_EXERCISED` ; l'annotation séparée
|
||||
confirme que l'oracle exécuté utilise l'axe Y à 600, avec A 505..675 et
|
||||
B 585..715. Aucun raw historique n'est réécrit. C3/C4 couvrent les cellules
|
||||
scale/R90 échantillonnées, sans qualification universelle de transformations.
|
||||
C5 garde les mêmes identités et grabs : origin owner -1456 entièrement cachée,
|
||||
puis retour -318 sans outside click ni dismissal provoqué.
|
||||
|
||||
C6 retient configure39 après ACK30, mesure la cible 636×513, observe le
|
||||
timeout natif 5000 ms avec une transaction waiting1, puis ACK39 tardif, retour
|
||||
live et fermeture normale. L'identité du buffer saved natif est **NOT_PROVEN** ;
|
||||
ces événements ne prouvent ni génération atomique ni lifetime GPU.
|
||||
|
||||
C7 reste INCONCLUSIVE : la fixture calcule un clamp attendu 800 après
|
||||
migration, mais le focus natif de la cellule 10 (bornes logiques 1280..1920,
|
||||
viewport 800) impose 1120. Le déplacement appelle réellement le refocus ;
|
||||
l'oracle l'omet. Les étapes resize antérieures sont mesurées ; pixels/input
|
||||
post-migration et retour arrière ne sont pas atteints. Aucun défaut CORE n'est
|
||||
établi par cette divergence. Préserver le raw et corriger prospectivement la
|
||||
fixture ne permettrait pas de requalifier ce run consommé.
|
||||
|
||||
P1 forme réellement un groupe non-leaf avec deux enfants de largeur 400,
|
||||
groupe fullscreen 800×600, A `[-448,105,900,170]` et
|
||||
B `[-348,165,900,130]`. Les captures whole-H2 mapped, A-only et baseline final
|
||||
sont vérifiées exactement. C8 laisse le peer sibling du workspace, hors du
|
||||
groupe qui ne contient que l'owner ; le guard refuse avant capture. La
|
||||
comparaison P1/C8 fullscreen est donc **NOT_EXERCISED**, même si P1 seul est
|
||||
informatif. Pas de promesse d'exemption fullscreen native qualifiée.
|
||||
|
||||
## 6. OOM : faits natifs et limite de l'oracle
|
||||
|
||||
O1 injecte le premier échec sidecar sur le root-popup ciblé par PID/nonce et
|
||||
rôle natif, sans épuiser la mémoire réelle. Les compteurs natifs mesurent
|
||||
`matched=1 failures=1 successes=0 initialized=0 listeners=0 published=0
|
||||
children=0`, puis retour NULL. Le même compositor survit : snapshots et IPC
|
||||
ultérieurs, captures pré/post, boutons du voisin serial42/43. Whole-H2 pré/post
|
||||
est exact ; le chemin ne publie pas de scène partielle dans cet échantillon.
|
||||
Le disconnect `no_memory` n'est **pas observé**.
|
||||
|
||||
L'owner ferme A puis TOPLEVEL, sans B créé. L'oracle commun attend soit
|
||||
B/A/TOPLEVEL, soit TOPLEVEL seul et rejette cette séquence root-only. Les
|
||||
processus sortent pourtant tous à 0, sans rescue ; CLOSE_RECEIVED, EXIT error0
|
||||
et SHM1/1 sont présents. Les deux captures finales prévues sont absentes.
|
||||
**Scientific cleanup=false**, runner 1, budget et statut **INCONCLUSIVE**
|
||||
restent immuables ; la fermeture mécanique correcte ne répare pas le verdict.
|
||||
Le terminal IPC rc1 pendant teardown, avec compositor rc0, décrit la fermeture
|
||||
de l'endpoint et ne prouve pas un bug de shutdown.
|
||||
|
||||
La fonction availability vérifie par code PID/exécutable/mappings après
|
||||
injection avant le snapshot ; son retour n'est pas archivé car la sauvegarde
|
||||
finale a été sautée. Les `proc-maps` conservés sont ceux du startup : ne pas
|
||||
les présenter comme archive post-injection complète. Survie native bornée
|
||||
observée ; disponibilité générale, damage complet et absence universelle de
|
||||
stale listeners **NOT_PROVEN**. O2 reste **NOT_RUN**, sa gate dépendant d'un
|
||||
O1 complet ; les injections unitaires de deuxième réservation ne remplacent
|
||||
pas O2 natif.
|
||||
|
||||
| Choix | Availability / fail-closed | Coût et callers | Preuve / décision |
|
||||
| --- | --- | --- | --- |
|
||||
| A abort | Arrêt du process ; fail-closed par sa mort | Allocation au setter ; callers inchangés | Historique source ; recovery non prouvé |
|
||||
| B bool + masque | Recovery à décider ; masque fail-closed à qualifier | Réservation par arbre clippé ; 11 setters/admission à traiter | Harnais historique, pas nouvelle qualification native |
|
||||
| C préallocation | NULL avant publication ; survie O1 bornée observée | Sidecar pour chaque factory, lookup linéaire ; audit create/rollback | V2 natif partiel ; **C_FURTHER_NATIVE_REVIEW** |
|
||||
|
||||
Cette recommandation technique ne choisit pas la politique production :
|
||||
**COREC_V2_AVAILABILITY_POLICY=UNDECIDED**.
|
||||
|
||||
## 7. G2 : observabilité partielle et arrêt conforme
|
||||
|
||||
Les nouveaux hooks et sources G2 sont revus séparément ; aucun hook G1 perdu
|
||||
n'est revendiqué. Le shader de calcul est inchangé à la revue source. La
|
||||
première acquisition A atteint point0, puis refuse strictement avec
|
||||
`GLES_STATE_NOT_SUPPORTED` : EGL `client_version=2`, tandis que GL_VERSION
|
||||
annonce `OpenGL ES 3.2 Mesa 26.2.4-arch1.1`. Le contrat figé exige les deux
|
||||
prédicats. Il n'est pas assoupli après observation. B et A-return ne sont pas
|
||||
armés, aucun retry, zéro fichier / zéro octet raw GPU ; seuls deux baselines
|
||||
H2 exacts sont capturés. Les processus sortent tous à 0 sans rescue ; cleanup
|
||||
scientifique et mécanique est observé.
|
||||
|
||||
Les métadonnées natives observées décrivent un DMA-BUF 800×600, format
|
||||
`875713112`, modifier `020000001046bb04`. Plane0 stride3584 offset0 ; plane1
|
||||
stride1024 offset2293760. Les FDs sont borrowed ; fstat réussit sur le même
|
||||
inode. Cela ne prouve pas la longueur d'allocation ; un plan auxiliaire DCC
|
||||
ne reçoit pas un prédicat de stride d'image inventé. FBO/RBO/texture et objets
|
||||
natifs sont identifiés, sans preuve du contenu présenté.
|
||||
|
||||
`g2_drain` préliminaire, `glGetString(GL_VERSION)` et drain de query ont été
|
||||
exécutés ; `pre_errors` et `query_errors` sont vides. En revanche le refus
|
||||
précède sauvegarde/bind/read/restauration : `read_errors` / `restore_errors`
|
||||
vides et champs before/after à zéro sont des valeurs initialisées, **pas**
|
||||
des observations de lecture ou restauration. Aucun `READ_SUCCESS`, bits
|
||||
d'uniformes ou halfpixel effectif natif n'est observé. L'attribution des
|
||||
erreurs de readback et la neutralité GL ne sont pas prouvées. Les drains sont
|
||||
intrusifs : ils consomment les erreurs et ne restaurent pas la queue.
|
||||
|
||||
GL observability reste **PARTIAL**. Les tests offline de modifier, framing,
|
||||
uniform/precision et négatifs valident les outils dans leur périmètre ; ils
|
||||
ne fournissent pas les valeurs natives manquantes. Pas d'epsilon ajusté, pas
|
||||
de fit CPU pour transformer le refus en succès. Whole-H1 A/A-return nouveau
|
||||
**NOT_PROVEN** ; le FAIL whole-H1 historique reste historique, non rejoué et
|
||||
non effacé par une ROI centrale. Causalité whole-field GPU **NOT_PROVEN**.
|
||||
|
||||
## 8. Input, damage, commit/present et lifetime
|
||||
|
||||
| Propriété | Preuve V2 | Limite |
|
||||
| --- | --- | --- |
|
||||
| Applied/input | Géométries CURRENT, points wire et pixels stabilisés échantillonnés | PARTIALLY_FEASIBLE ; pas d'atomicité générale |
|
||||
| Damage échantillonné | H2 et retours exacts aux états capturés | PARTIALLY_FEASIBLE ; toutes les frames non couvertes |
|
||||
| Damage complet / stale pixels | Pas de couverture exhaustive | NOT_PROVEN |
|
||||
| Commit/present natif | Pas de clé native commune instrumentée dans CORE | NOT_PROVEN |
|
||||
| Identité exacte du buffer physique présenté | Pas de lien V2 readback/commit/present | NOT_PROVEN |
|
||||
| Buffer saved natif | Configure/timeout/ACK observés, identité absente | NOT_PROVEN |
|
||||
| GPU completion / fences / lifetime | Aucun signal effectif mesuré | NOT_PROVEN |
|
||||
| Génération atomique transaction/scène/input | Aucun compteur adopté ou prouvé | NOT_PROVEN |
|
||||
|
||||
Les compteurs historiques 57/55/2, 821/789/32 et 414/400/14 sont **REPORTED**,
|
||||
sans replay depuis les LAB supprimés. Aucun appariement entre runs par
|
||||
proximité temporelle ni aucun héritage d'une instrumentation ancienne.
|
||||
Décorations, ombres, blur/cache et saved buffers complets restent des gates
|
||||
indépendantes, malgré les pixels stabilisés favorables.
|
||||
|
||||
## 9. Revues, sévérité et décisions restantes
|
||||
|
||||
Les revues indépendantes source/C, CORE build, fixtures/admission, OOM source/
|
||||
build, GPU source/build/portable et les deltas fullscreen/FIFO sont liées à
|
||||
leurs manifests et hashes. Le kit conserve les reçus compacts sous
|
||||
`reviews/` ; le LAB garde les preuves détaillées. Les tests négatifs directs
|
||||
rejettent notamment mauvais SHA, mauvais fournisseur wlroots, archive
|
||||
dynamique, source stale, ancienne destination LAB et bindings incorrects.
|
||||
Les révisions source invalident l'avis précédent pour les octets modifiés ;
|
||||
une acceptation source/offline ne vaut pas admission native.
|
||||
|
||||
La première revue runtime (`review-oom-runtime/runtime-receipt.json`) garde
|
||||
P0/C1–C6 partiels et C7 inconclusif. La revue
|
||||
`review-remaining-runtime/early-receipt.json` garde P1 partiel, C8/O1
|
||||
inconclusifs et O2 fermé. La décision G2 dépendante autorise seulement le
|
||||
diagnostic indépendant après examen de l'absence de défaut commun critique
|
||||
démontré ; elle n'upgrade pas O1. La
|
||||
[revue finale runtime](../../tooling/probes/step20c-corec-v2/reviews/remaining-runtime-final-review.json)
|
||||
accepte la vérification bornée du protocole d'arrêt G2 et de la comptabilité
|
||||
(SHA256 `3372e0ba9f7b33da4fbc041dc4eea97ccc000fb1a9cf809b189c29c90b510569`).
|
||||
Elle maintient G2 INCONCLUSIVE et toutes les limites de phase I. La revue
|
||||
globale indépendante est désormais ACCEPTED, sans finding BLOCKING ; elle
|
||||
confirme la disposition NEEDS_TARGETED_EVIDENCE et la recommandation C, sans
|
||||
production. Son reçu est conservé dans le kit sous reviews/final-global-review.json.
|
||||
|
||||
| Priorité | Constat | Correction ou preuve de clôture | Responsable |
|
||||
| --- | --- | --- | --- |
|
||||
| P0 | Aucun nouveau défaut critique commun démontré dans les revues bornées | Ne signifie pas sûreté globale | Non assigné |
|
||||
| P1 | Availability OOM production, damage complet, lifetime/présentation, GPU whole-field ouverts | Décision de politique et preuves natives ciblées | Non assigné |
|
||||
| P2 | C7 omet refocus migration ; C8 ne forme pas le groupe comparable ; O1 oracle root-only incompatible | Correctifs prospectifs source-only et tests directs ; nouveau budget séparé pour run futur | Non assigné |
|
||||
| P3 | Coût mémoire/performance, overhead allocator, neutralité des traces et portabilité future | Mesures/requalification dédiées | Non assigné |
|
||||
|
||||
Il n'y a pas d'autorisation de nouveaux runs dans cette clôture. Le plus petit
|
||||
pas ultérieur justifié est une revue native C ciblée et des corrections
|
||||
offline des trois fixtures P2, suivies seulement si autorisées d'une nouvelle
|
||||
tranche de preuves ; pas STEP20D ni intégration production.
|
||||
|
||||
## 10. ABI, licences, maintenance et rollback
|
||||
|
||||
Les règles de [maintenance upstream](../UPSTREAM.md) et de
|
||||
[packaging](../PACKAGING.md) restent applicables. Toute nouvelle révision
|
||||
SceneFX/wlroots, shaders, dépendances, layout/symboles, clip/damage ou lifetime
|
||||
exige impact review, rebuild, relocation/stage et nouvelles qualifications
|
||||
pertinentes. Aucun autre couple n'est qualifié par proximité de version.
|
||||
Le projet doit assurer veille de sécurité et rebuild du SceneFX embarqué si
|
||||
une future décision l'adopte ; les responsables maintenance, sécurité et
|
||||
release sont **non assignés**, sans SLA inventé.
|
||||
|
||||
Le stage de notices n'est pas une validation juridique : **LEGAL_NOT_APPROVED**.
|
||||
Les licences/notices exactes et la décision de distribution restent à revoir
|
||||
humainement. Le paquet actuel garde uniquement son binaire distinct ; aucun
|
||||
`provides`, `conflicts` ou `replaces` avec Sway/SwayFX. SwayFX ordinaire doit
|
||||
rester indépendamment actualisable et utilisable comme fallback. Le rollback
|
||||
préparé consiste à revenir au binaire/paquet Mosaic antérieurement qualifié ou
|
||||
au SwayFX standard, en conservant les manifests ; aucun rollback live n'est
|
||||
exécuté. Il ne faut ni remplacer `/usr/bin/sway`, ni bibliothèque système,
|
||||
session, dotfiles ou configuration QuickShell.
|
||||
|
||||
## 11. Stockage, conservation et purge sélective non exécutée
|
||||
|
||||
LAB conservé : `/var/tmp/swayfx-mosaic-corec-v2-i516p6po`, hors HOME. Le diagnostic
|
||||
initial distingue EDQUOT dans `/tmp` et écriture possible sous `/var/tmp` ;
|
||||
TMPDIR/TMP/TEMP et caches sont redirigés par `run-env`. Le cap généré est
|
||||
18 Gio, alerte 12 Gio. Le relevé pré-final mesure LAB 677 228 967 octets
|
||||
(environ 646 Mio), SSD libre 279 665 819 648 octets (environ 260 Gio),
|
||||
`/tmp` libre 1 610 719 232 octets (environ 1,50 Gio). Il ne prétend pas être
|
||||
un maximum historique mesuré. Aucun LAB sous HOME ; le header source
|
||||
transitoire a été régénéré à l'identique, préservé puis retiré. Les sockets
|
||||
privés utilisent de petits `/tmp/smx-*` retirés
|
||||
après les runs. Les premières commandes de build utilisaient le wrapper TMP
|
||||
mais l'absence de variables de session héritées n'est pas prouvée pour toutes
|
||||
ces commandes ; aucun consommateur IPC quotidien n'a été observé.
|
||||
|
||||
Une suppression future du LAB ne doit plus supprimer le code reconstructible.
|
||||
Procédure préparée, **non exécutée** : vérifier les trois commits publiés,
|
||||
reconstruire/vérifier dans un second répertoire vierge, garder manifests,
|
||||
reviews, ledger et closeout à préserver ; identifier les seuls répertoires
|
||||
générés dispensables appartenant à l'UID et vérifier leurs realpaths sous ce
|
||||
LAB ; supprimer sélectivement uniquement après demande explicite, puis
|
||||
relever espace et inventaire restant. Ne pas lancer de suppression globale,
|
||||
suivre de symlinks, supprimer les cores système ou toucher aux sources Git.
|
||||
Les anciennes preuves perdues ne sont pas récupérées par cette procédure.
|
||||
|
||||
## 12. Marqueurs du ticket
|
||||
|
||||
Les PASS suivants désignent les gates bornées réellement validées, jamais
|
||||
STEP20C production. L'audit HOME/protections pré-final et la revue globale indépendante sont
|
||||
acceptés. La publication documentaire finale doit encore être liée à ses
|
||||
observations directes de remotes dans les reçus de clôture.
|
||||
|
||||
```text
|
||||
COREC_V2_STORAGE_GATE=PASS
|
||||
COREC_V2_GIT_GATE=PASS
|
||||
COREC_V2_RECONSTRUCTION_FROM_SURVIVING_SOURCES=PASS
|
||||
COREC_V2_SOURCE_EQUIVALENCE=EXACT_FOR_NEW_TREE
|
||||
COREC_V2_PLAN_AND_PROVENANCE_REVIEW=ACCEPTED
|
||||
COREC_V2_FULL_SOURCE_REBUILD=PASS
|
||||
COREC_V2_OPTION_C_CALLSITE_AUDIT=PASS
|
||||
COREC_V2_SOURCE_FORWARD_APPLY=PASS
|
||||
COREC_V2_NATIVE_C_SANITIZERS=PASS
|
||||
COREC_V2_PRIVATE_BUILD=PASS
|
||||
COREC_V2_PRIVATE_ELF_ABI=PASS
|
||||
COREC_V2_PRIVATE_STAGE=PASS
|
||||
COREC_V2_BUILD_REVIEW=ACCEPTED
|
||||
COREC_V2_GRAPHICS_OFFLINE_PREFLIGHT=PASS
|
||||
COREC_V2_STANDARD_COMPARISON=PARTIALLY_FEASIBLE
|
||||
COREC_V2_HORIZONTAL_RETURN=PARTIALLY_FEASIBLE
|
||||
COREC_V2_VERTICAL=PARTIALLY_FEASIBLE
|
||||
COREC_V2_FRACTIONAL=PARTIALLY_FEASIBLE
|
||||
COREC_V2_R90=PARTIALLY_FEASIBLE
|
||||
COREC_V2_HIDDEN_SAME_CHAIN=PARTIALLY_FEASIBLE
|
||||
COREC_V2_SAVED_NATURAL_TIMEOUT=PARTIALLY_FEASIBLE
|
||||
COREC_V2_DYNAMIC=INCONCLUSIVE
|
||||
COREC_V2_FULLSCREEN_COMPARISON=NOT_EXERCISED
|
||||
COREC_V2_NATIVE_OOM_PREFLIGHT=ACCEPTED
|
||||
COREC_V2_OOM_FIRST_ALLOCATION=INCONCLUSIVE
|
||||
COREC_V2_OOM_SECOND_ALLOCATION=NOT_RUN
|
||||
COREC_V2_AVAILABILITY_POLICY=UNDECIDED
|
||||
COREC_V2_GPU_SOURCE_REVIEW=ACCEPTED
|
||||
COREC_V2_GPU_METADATA_OFFLINE=PASS
|
||||
COREC_V2_GPU_GL_OBSERVABILITY=PARTIAL
|
||||
COREC_V2_GPU_RUNTIME=INCONCLUSIVE
|
||||
COREC_V2_GPU_WHOLE_FIELD_CAUSALITY=NOT_PROVEN
|
||||
COREC_V2_APPLIED_INPUT_COHERENCE=PARTIALLY_FEASIBLE
|
||||
COREC_V2_NATIVE_COMMIT_PRESENT=NOT_PROVEN
|
||||
COREC_V2_SAMPLED_DAMAGE=PARTIALLY_FEASIBLE
|
||||
COREC_V2_COMPLETE_DAMAGE=NOT_PROVEN
|
||||
COREC_V2_NATIVE_BUFFER_IDENTITY=NOT_PROVEN
|
||||
COREC_V2_GPU_COMPLETION=NOT_PROVEN
|
||||
COREC_V2_ATOMIC_GENERATION=NOT_PROVEN
|
||||
COREC_V2_REPRODUCIBLE_KIT=PASS
|
||||
COREC_V2_INDEPENDENT_REVIEW=ACCEPTED
|
||||
COREC_V2_DOCUMENTARY_PUBLICATION=PARTIAL
|
||||
COREC_V2_HOME_CLEAN=PASS
|
||||
SWAYFX_MOSAIC_STEP20C_REBUILD_FROM_GIT_COREC_OOM_GPU_NIGHT_SHIFT_V1=PARTIALLY_ADVANCED
|
||||
```
|
||||
|
||||
`COREC_V2_HOME_CLEAN=PASS` désigne l'absence de LAB/caches lourds sous HOME
|
||||
et le contrôle pré-final ; il n'efface pas les cores système précoces déclarés.
|
||||
La revue globale indépendante est ACCEPTED, sans finding BLOCKING. Le reçu
|
||||
reviews/final-global-review.json est matérialisé explicitement par le parent
|
||||
depuis le retour structuré du reviewer en lecture seule.
|
||||
|
||||
## 13. Réponses aux seize questions imposées
|
||||
|
||||
**Q1. Reconstruction sans ancien LAB ?** Oui, pour cette nouvelle dérivation :
|
||||
Git et sources publiques épinglées suffisent ; vérification exacte des octets
|
||||
et modes. Les anciens octets perdus ne sont pas restaurés.
|
||||
|
||||
**Q2. Véritables create NULL traités ?** Audit source/C accepté pour les callers
|
||||
du compositor et helpers épinglés concernés, avec rollback et premiers usages.
|
||||
Les exemples non liés restent hors périmètre ; cela ne garantit pas tout OOM
|
||||
du compositor.
|
||||
|
||||
**Q3. Zéro scène/listener/exposition avant publication ?** Oui dans les tests
|
||||
exacts et le failpoint root O1 observé (`initialized/listeners/published=0`).
|
||||
Pas de généralisation à tous sites possibles.
|
||||
|
||||
**Q4. Survie privée à l'injection ?** Oui observée pour O1 : même PID, IPC,
|
||||
voisin serial42/43 et sorties 0. Le run reste INCONCLUSIVE pour l'oracle de
|
||||
fermeture ; O2 natif non exécuté.
|
||||
|
||||
**Q5. Régression damage/rendu/hit ?** Pas de régression démontrée dans les
|
||||
échantillons qualifiés ; damage complet, effets et disponibilité générale
|
||||
restent NOT_PROVEN. Une absence de défaut échantillonné n'est pas une garantie.
|
||||
|
||||
**Q6. Qualification propre au nouveau SHA ?** Oui, C1–C6 fournissent les
|
||||
échantillons horizontal/vertical/scale/R90/hidden/saved et retours ; statuts
|
||||
PARTIALLY_FEASIBLE, contrôles scale/rotation dédiés NOT TESTED.
|
||||
|
||||
**Q7. Fullscreen vraiment comparable ?** P1 pristine oui pour le non-leaf
|
||||
mesuré ; C8 échoue à construire le même groupe avant capture. Comparaison
|
||||
CORE/pristine NOT_EXERCISED.
|
||||
|
||||
**Q8. Même chaîne hidden ?** Oui, C5 conserve IDs et grabs sans outside click
|
||||
entre dissimulation et retour ; portée bornée à cette chaîne.
|
||||
|
||||
**Q9. Saved configure/timeout/live/close ?** C6 observe hold39, timeout naturel,
|
||||
ACK tardif, live et close. Identité native saved buffer NOT_PROVEN.
|
||||
|
||||
**Q10. GPU nouveau et revu ?** Oui, sources/hooks G2 nouveaux, revues propres,
|
||||
binaire GPU distinct ; premier A refusé, aucune usurpation de G1.
|
||||
|
||||
**Q11. DCC/halfpixel sans prédicat inventé ?** Métadonnées réelles par plan,
|
||||
pas de fausse borne allocation ; halfpixel natif non observé à cause du refus.
|
||||
Pas de tolérance apprise après coup.
|
||||
|
||||
**Q12. Attribution GL et interférence ?** Drains pré/version exécutés et vides ;
|
||||
lecture/restauration non atteintes, donc pas de preuve read-success/error queue
|
||||
pour ces étapes. Les drains consomment la queue, interférence explicitée.
|
||||
|
||||
**Q13. Whole-H1 A/A-return égal ?** Non mesuré en V2 : B/A-return non armés.
|
||||
Causalité whole-field NOT_PROVEN ; FAIL historique conservé sans replay.
|
||||
|
||||
**Q14. Cohérence effectivement mesurée ?** Input/applied et damage stabilisé
|
||||
partiels ; commit/present natif, buffer physique, GPU completion/lifetime et
|
||||
génération atomique NOT_PROVEN.
|
||||
|
||||
**Q15. Code survivant à la suppression de /var/tmp ?** Oui pour les patches,
|
||||
scripts et fixtures publiés et reproduits depuis Git. Les captures et logs
|
||||
volumineux privés ne sont pas garantis survivants sans conservation séparée ;
|
||||
le LAB n'est pas supprimé.
|
||||
|
||||
**Q16. Décisions humaines restantes ?** Availability OOM production ; UX popup
|
||||
offscreen hide/dismiss/reposition ; acceptation juridique des notices ;
|
||||
responsables maintenance/sécurité/release et décision de distribution ;
|
||||
admission d'une future tranche native et intégration éventuelle. Toutes restent
|
||||
ouvertes ; aucun statut production n'est adopté par ce dossier.
|
||||
## 14. Validation documentaire et état de clôture
|
||||
|
||||
Cette édition documentaire ajoute seulement le présent dossier et de courts
|
||||
renvois dans README documentaire, Architecture, Known Limitations, Roadmap,
|
||||
Development, Upstream et Changelog. UX, Packaging, AGENTS, production,
|
||||
PKGBUILD et patch cumulatif ne sont pas modifiés par cette rédaction.
|
||||
`git diff --check` réussit ; 348 liens locaux des huit documents sont résolus,
|
||||
les 43 marqueurs et les seize réponses imposées sont présents. La première
|
||||
assertion de comptage documentaire omettait R90 dans sa regex sans chiffres ;
|
||||
le contrôle corrigé compte les 43 noms exacts, sans changement de résultat.
|
||||
Cette rédaction n'a exécuté aucun build, test runtime, commit ou push.
|
||||
|
||||
La validation de clôture du parent trouve initialement 1 échec sur 48 tests
|
||||
offline : le test d'environnement utilisait le chemin O1 réel désormais muni
|
||||
d'un token consommé. Il ne s'agit pas d'un run O1 supplémentaire. Une
|
||||
correction bornée du test vers son propre répertoire OFFLINE_TEST_ONLY donne
|
||||
48/48 tests réussis ; sa revue de delta indépendante est acceptée. Le vrai
|
||||
jeton O1 et le ledger sont inchangés, le jeton factice existant est refusé.
|
||||
L'échec initial reste conservé. Les reçus reviews/offline-post-run-delta-review.json
|
||||
et reviews/final-global-review.json sont matérialisés explicitement par le
|
||||
parent depuis les retours structurés des reviewers en lecture seule. La revue
|
||||
globale est ACCEPTED sans blocage ; la publication reste à sceller.
|
||||
|
||||
Les autres validations finales transmises à cette édition réussissent : AST
|
||||
des 43 Python, C17 fullscreen/G2, cinq bindings, manifests historiques
|
||||
54/105, budget immuable et diff-check. Les nouveaux fichiers de preuves et
|
||||
la correction offline du parent sont visibles séparément dans le worktree ;
|
||||
ils ne sont pas des changements effectués par cette rédaction documentaire.
|
||||
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"core": {
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"build_id": "d5d304533f2c8db9d738365e9bd7f2c96779ef8d",
|
||||
"scene_archive_sha256": "769b56c4a11bef13f0abdcfd189b11af954eebbfa69fd06c972e01508d8d376b",
|
||||
"path": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/builds/core-mosaic/sway/swayfx-mosaic"
|
||||
},
|
||||
"oom": {
|
||||
"binary_sha256": "6067946bd79ad6fd8da7669ab9b0b3bacfd2638f5d3d8382002b9118db20d835",
|
||||
"build_id": "9bc3dc9055106b343c80a51ded111a382e98442d",
|
||||
"scene_archive_sha256": "bca4b749eadc551f78712d7e1e7bda769125d2e596524a582988ca5346f8eceb",
|
||||
"path": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/builds/oom-mosaic/sway/swayfx-mosaic"
|
||||
},
|
||||
"gpu": {
|
||||
"binary_sha256": "b2ba890908e385b0a8884e786b279bfb2e582eed38c7fcd0587b418326eca5bc",
|
||||
"build_id": "b6a52111beabe3c2122e0142a802415d3c84f9a5",
|
||||
"scene_archive_sha256": "06ccfad8c7dfe4ee425b8de44d22d8daa69e2daa14085d6e6998b201a7ad111b",
|
||||
"path": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/builds/gpu-mosaic/sway/swayfx-mosaic"
|
||||
},
|
||||
"wlroots": {
|
||||
"path": "/usr/lib/libwlroots-0.20.so",
|
||||
"sha256": "7edca9a7d65855addda68e29ba5db94d57c803eb5fa7d0f86db3136b90ca9837"
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
{
|
||||
"source_commit": "bf00b0b0ed3e20bfb7c68d2fbbe6553594f3167a",
|
||||
"archive_sha256": "c5a1a8845860931a975599a93565b2a083ff8a9594fc06c12f1d1bd4974cdd88",
|
||||
"commands": [
|
||||
{
|
||||
"argv": [
|
||||
"python3",
|
||||
"-B",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/runtime-next-git-kit/tooling/probes/step20c-corec-v2/assemble.py",
|
||||
"--project-git",
|
||||
"/home/fy59/Documents/Development/swayfx-mosaic",
|
||||
"--scene-git",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/sources/scenefx.git",
|
||||
"--destination",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/git-next-repro-core"
|
||||
],
|
||||
"exit": 0
|
||||
},
|
||||
{
|
||||
"argv": [
|
||||
"python3",
|
||||
"-B",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/runtime-next-git-kit/tooling/probes/step20c-corec-v2/verify.py",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/git-next-repro-core"
|
||||
],
|
||||
"exit": 0
|
||||
},
|
||||
{
|
||||
"argv": [
|
||||
"python3",
|
||||
"-B",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/runtime-next-git-kit/tooling/probes/step20c-corec-v2/oom/assemble-variant.py",
|
||||
"--core",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/git-next-repro-core",
|
||||
"--destination",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/git-next-repro-oom"
|
||||
],
|
||||
"exit": 0
|
||||
},
|
||||
{
|
||||
"argv": [
|
||||
"python3",
|
||||
"-B",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/runtime-next-git-kit/tooling/probes/step20c-corec-v2/gpu/reproduce.py",
|
||||
"--core",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/git-next-repro-core/scene",
|
||||
"--destination",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/git-next-repro-gpu",
|
||||
"--work",
|
||||
"/var/tmp/swayfx-mosaic-corec-v2-i516p6po/git-next-repro-work"
|
||||
],
|
||||
"exit": 0
|
||||
}
|
||||
],
|
||||
"checks": {
|
||||
"git-next-repro-core/scene": {
|
||||
"files": 85,
|
||||
"bytes_and_modes_exact": true
|
||||
},
|
||||
"git-next-repro-core/mosaic": {
|
||||
"files": 417,
|
||||
"bytes_and_modes_exact": true
|
||||
},
|
||||
"git-next-repro-oom/scene": {
|
||||
"files": 86,
|
||||
"bytes_and_modes_exact": true
|
||||
},
|
||||
"git-next-repro-oom/mosaic": {
|
||||
"files": 417,
|
||||
"bytes_and_modes_exact": true
|
||||
},
|
||||
"git-next-repro-gpu": {
|
||||
"files": 87,
|
||||
"bytes_and_modes_exact": true
|
||||
}
|
||||
},
|
||||
"status": "PASS",
|
||||
"native_builds_or_runs": 0
|
||||
}
|
||||
164
tooling/probes/step20c-corec-v2/evidence/runtime-summary.json
Normal file
164
tooling/probes/step20c-corec-v2/evidence/runtime-summary.json
Normal file
|
|
@ -0,0 +1,164 @@
|
|||
{
|
||||
"ticket": "SWAYFX_MOSAIC_STEP20C_REBUILD_FROM_GIT_COREC_OOM_GPU_NIGHT_SHIFT_V1",
|
||||
"source_commit_for_remaining_runs": "bf00b0b0ed3e20bfb7c68d2fbbe6553594f3167a",
|
||||
"identity": "COREC_V2_REDERIVED",
|
||||
"runs_consumed": 12,
|
||||
"captures_consumed": 102,
|
||||
"capture_caps_consumed": 148,
|
||||
"run_limit": 14,
|
||||
"capture_limit": 180,
|
||||
"production_authorized": false,
|
||||
"results": [
|
||||
{
|
||||
"id": "P0",
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"captures": 10,
|
||||
"binary_sha256": "b7fa32116e3c42706b9b02da7df12f27e76d82dd253deb8bdec81519eed145f6",
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "5c29de515ff94695aabc62e85d45f36f"
|
||||
},
|
||||
{
|
||||
"id": "P1",
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"captures": 10,
|
||||
"binary_sha256": "b7fa32116e3c42706b9b02da7df12f27e76d82dd253deb8bdec81519eed145f6",
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "5ac3ec24778847d3a1d1452cd6c25caa"
|
||||
},
|
||||
{
|
||||
"id": "C1",
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"captures": 16,
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "5490373d496c4d82b72a9e5f146ad66b"
|
||||
},
|
||||
{
|
||||
"id": "C2",
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"captures": 8,
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "f2933d864c6e46abbc0bbffd5d6f8a75"
|
||||
},
|
||||
{
|
||||
"id": "C3",
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"captures": 9,
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "932467dd9b70412b8cb91f375dc64302"
|
||||
},
|
||||
{
|
||||
"id": "C4",
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"captures": 9,
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "a9edaa8d77024db198ec1f2e06b4e328"
|
||||
},
|
||||
{
|
||||
"id": "C5",
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"captures": 12,
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "b28ab37dbb6e4d8da842b511be191e3b"
|
||||
},
|
||||
{
|
||||
"id": "C6",
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"captures": 10,
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "a594f94bf0a54ba39f10de1ad4fe3c21"
|
||||
},
|
||||
{
|
||||
"id": "C7",
|
||||
"status": "INCONCLUSIVE",
|
||||
"captures": 10,
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"runner_failure": "Ambiguous: reconstructed camera clamp mismatch",
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "6ea13abc103540ebb2f0874040a83c5f"
|
||||
},
|
||||
{
|
||||
"id": "C8",
|
||||
"status": "INCONCLUSIVE",
|
||||
"captures": 0,
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"runner_failure": "Ambiguous: exact two-child group preparation",
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "2d540bd387b949e2848216bf48000fbd"
|
||||
},
|
||||
{
|
||||
"id": "O1",
|
||||
"status": "INCONCLUSIVE",
|
||||
"captures": 6,
|
||||
"binary_sha256": "6067946bd79ad6fd8da7669ab9b0b3bacfd2638f5d3d8382002b9118db20d835",
|
||||
"runner_failure": "Ambiguous: popup child-first destruction order",
|
||||
"scientific_cleanup": false,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "dcb32bacb26349078f9ca4a7876980b8"
|
||||
},
|
||||
{
|
||||
"id": "O2",
|
||||
"status": "NOT_RUN",
|
||||
"captures": 0,
|
||||
"reason": "O1 INCONCLUSIVE dependent gate closed"
|
||||
},
|
||||
{
|
||||
"id": "G2",
|
||||
"status": "INCONCLUSIVE",
|
||||
"captures": 2,
|
||||
"binary_sha256": "b2ba890908e385b0a8884e786b279bfb2e582eed38c7fcd0587b418326eca5bc",
|
||||
"runner_failure": "RuntimeError: epoch 1 rejected; STOP, no next command/retry",
|
||||
"scientific_cleanup": true,
|
||||
"mechanical_rescue": false,
|
||||
"all_processes_exit0": true,
|
||||
"token": "4965cef41139433bab3c06f321829068"
|
||||
},
|
||||
{
|
||||
"id": "R1",
|
||||
"status": "NOT_RUN",
|
||||
"captures": 0,
|
||||
"reason": "optional distinct discriminant not admitted"
|
||||
}
|
||||
],
|
||||
"limitations": [
|
||||
"C7 consumed fixture migration oracle error, never rerun",
|
||||
"C8 exact group preparation absent, zero captures, no fullscreen comparison to P1",
|
||||
"O1 root-only closure rejected common oracle, no final pair, no retroactive upgrade",
|
||||
"G2 A source rejected EGL client_version2 versus GL ES3.2; zero raw bytes, no B or A-return",
|
||||
"No native commit/present/buffer lifetime/GPU completion/atomic generation proof"
|
||||
]
|
||||
}
|
||||
|
|
@ -108,7 +108,8 @@ class Next(unittest.TestCase):
|
|||
for bad,code in [(raw, None),(raw,-9),(raw,7),(raw.replace(', 1,',', 2,'),0),(raw.replace('71','32'),0),('EXIT error=0',0)]:self.rejects(oom_handler.expected_disconnect,bad,code)
|
||||
s=SimpleNamespace(comp=Mock());s.comp.poll.return_value=-9;self.rejects(oom_handler.availability,s)
|
||||
def test_compositor_only_environment_no_helpers_clients(self):
|
||||
env=oom.process_environment(LAB,'O1','a'*32)
|
||||
# Use the per-test OFFLINE_TEST_ONLY root; LAB/O1 contains the sealed real-run token.
|
||||
env=oom.process_environment(self.root,'O1','a'*32)
|
||||
with patch.dict(os.environ,env):self.assertFalse(any(k.startswith('SMX_OOM_') for k in gate.clean_environment(LAB)))
|
||||
s=engine.Session.__new__(engine.Session);s.run=self.root;s.handles=[];s.proc={};s.expired=False;s.env={};s.oom_env=env;s.compositor_environment=dict(MOSAIC_G2_DIR='offline',MOSAIC_G2_NONCE='a'*64,WLR_RENDERER='gles2');s.debit=Mock();s.record=Mock()
|
||||
with patch.object(engine.shutil,'which',return_value='/usr/bin/prlimit'),patch.object(engine.subprocess,'Popen',return_value=Mock(pid=12)) as popen:
|
||||
|
|
|
|||
|
|
@ -0,0 +1,99 @@
|
|||
{
|
||||
"schema": "corec-v2-final-global-readonly-review-v1",
|
||||
"reviewer": "/root/tranche_final_audit",
|
||||
"independent": true,
|
||||
"decision": "PASS",
|
||||
"review_status": "ACCEPTED",
|
||||
"scope": "Final global audit of experimental CORE-C V2 source kit, documentation, scientific evidence, lifecycle and persistence boundaries",
|
||||
"baseline_commit": "339dda45bc81b953e2f0afadf28765149e3a1ba1",
|
||||
"published_source_commit": "bf00b0b0ed3e20bfb7c68d2fbbe6553594f3167a",
|
||||
"blocking_findings": [],
|
||||
"findings": [
|
||||
{
|
||||
"id": "N1",
|
||||
"classification": "NON_BLOCKING",
|
||||
"subject": "C7 migration oracle omits native refocus",
|
||||
"disposition": "Retain INCONCLUSIVE; prospective correction in a future tranche only"
|
||||
},
|
||||
{
|
||||
"id": "N2",
|
||||
"classification": "NON_BLOCKING",
|
||||
"subject": "C8 owner and peer do not form the comparable two-child group",
|
||||
"disposition": "Retain INCONCLUSIVE and fullscreen comparison NOT_EXERCISED"
|
||||
},
|
||||
{
|
||||
"id": "N3",
|
||||
"classification": "NON_BLOCKING",
|
||||
"subject": "O1 root-only close rejected by the common child-first oracle",
|
||||
"disposition": "Retain scientific cleanup INCONCLUSIVE, six captures and O2 NOT_RUN"
|
||||
},
|
||||
{
|
||||
"id": "N4",
|
||||
"classification": "NON_BLOCKING",
|
||||
"subject": "Disclosed historical system cores and incomplete early environment provenance",
|
||||
"disposition": "Retain explicit historical limitations; no zero-outside-LAB claim"
|
||||
},
|
||||
{
|
||||
"id": "F1",
|
||||
"classification": "FUTURE_SCOPE",
|
||||
"subject": "Per-factory sidecar memory and linear lookup scalability",
|
||||
"disposition": "Global performance and allocator overhead NOT_MEASURED"
|
||||
},
|
||||
{
|
||||
"id": "F2",
|
||||
"classification": "FUTURE_SCOPE",
|
||||
"subject": "Remaining native qualification, production policy and maintenance decisions",
|
||||
"disposition": "No production integration or new runtime authorization"
|
||||
}
|
||||
],
|
||||
"retained_conclusions": {
|
||||
"global": "PARTIALLY_ADVANCED",
|
||||
"disposition": "PRIVATE_COREC_V2_NEEDS_TARGETED_EVIDENCE",
|
||||
"oom_recommendation": "C_FURTHER_NATIVE_REVIEW",
|
||||
"production_availability": "UNDECIDED",
|
||||
"STEP20C": "NEXT",
|
||||
"production_multi_output": "NOT_YET_SUPPORTED",
|
||||
"production_authorized": false
|
||||
},
|
||||
"independent_checks": {
|
||||
"git_diff_check": "PASS",
|
||||
"python_AST": 43,
|
||||
"local_document_links": 348,
|
||||
"unique_markers": 43,
|
||||
"required_answers": 16,
|
||||
"runtime_review_artifact_hashes": 27,
|
||||
"protected_hashes": 8,
|
||||
"CORE_scene_files_bytes_modes": 85,
|
||||
"CORE_mosaic_files_bytes_modes": 417,
|
||||
"protected_production_source_delta": "EMPTY",
|
||||
"offline_test_token_budget_bindings": "PASS",
|
||||
"runs": 12,
|
||||
"captures": 102,
|
||||
"reserved_capture_caps": 148,
|
||||
"all_recorded_run_durations_below_150s": true
|
||||
},
|
||||
"sha256": {
|
||||
"reviewed_integration_dossier": "b9eb8a0e95501f78d6d45827793ab318ba452e0bbe65ec0d8a849f674b2c1102",
|
||||
"source_c_review": "26aa862c741196fdbb8d7cdf5509301e49f763cdd22ffa7bcb1a4bbf09c66f90",
|
||||
"remaining_runtime_final_review": "3372e0ba9f7b33da4fbc041dc4eea97ccc000fb1a9cf809b189c29c90b510569",
|
||||
"offline_delta_review": "a164271eab56f561f1064880be2e38f7ed4f66005f7e18df4665bdcaf73fe749",
|
||||
"offline_test_delta": "8d4f80c9d7f5dee53f06b9538d5523525e62eda77e4fb1632491a724e2cb8df2",
|
||||
"runtime_summary": "941e73254330e324d3cbc0565e3c9ccc76dcb0f8a2f76fee2a4a6a2475eed705",
|
||||
"budget": "dfe1897e255ca5a96b7b66b0af0728acdffdf3ddf397a3fa3c6b1011b07c9db6",
|
||||
"pre_final_system_check": "7392ead2d8792d854240b867c84c735e4f74eb4868c95188b6b4826d51a1bd35",
|
||||
"closeout_receipt_audit": "3380c7067a78ed3adb797c656f94e08b28a44e31ba5d17669b0e47a7f711f373"
|
||||
},
|
||||
"final_publication": "PENDING_PARENT_CLOSEOUT_NOT_A_REVIEW_FINDING",
|
||||
"source_edits": 0,
|
||||
"artifact_writes_by_reviewer": 0,
|
||||
"new_builds": 0,
|
||||
"new_native_runs": 0,
|
||||
"new_clients": 0,
|
||||
"new_captures": 0,
|
||||
"IPC_calls": 0,
|
||||
"new_reservations": 0,
|
||||
"git_mutations": 0,
|
||||
"committed": false,
|
||||
"pushed": false,
|
||||
"materialized_by": "Parent transcription of explicit structured reviewer response; reviewer performed no file write"
|
||||
}
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
{
|
||||
"schema": "corec-v2-independent-current-eight-run-review",
|
||||
"decision": "ACCEPTED_PARTIAL_EVIDENCE_C7_INCONCLUSIVE",
|
||||
"runtime_findings": [
|
||||
{
|
||||
"severity": "P2",
|
||||
"file": "runtime-git-kit/tooling/probes/step20c-corec-v2/graphics/cases.py",
|
||||
"symbol": "dynamic_geometry(previous) lines110-112; dynamic_campaign migration",
|
||||
"requirement": "Reconstruct exact pinned native camera behavior after migration, without treating ordinary refocus as a compositor defect",
|
||||
"evidence": "move.c661 calls workspace_move_to_output; move.c668 seat_set_focus. seat.c1204-1212 adjusts focused cell camera. Migrated snapshot workspace6 IDs8,9,10 width640 each, focused10 logical bounds1280..1920 viewport800: right-width=1120; actual1120. Fixture min(previous800,max1120)=800 rejects it.",
|
||||
"smallest_correction": "Future source-only fixture correction must distinguish resize clamp from migration refocus and add direct offline negative/positive cases; preserve C7 INCONCLUSIVE, do not rerun or retroactively PASS."
|
||||
}
|
||||
],
|
||||
"core_defect_established": false,
|
||||
"run_set": [
|
||||
"P0",
|
||||
"C1",
|
||||
"C2",
|
||||
"C3",
|
||||
"C4",
|
||||
"C5",
|
||||
"C6",
|
||||
"C7"
|
||||
],
|
||||
"statuses": {
|
||||
"P0": "PARTIALLY_FEASIBLE",
|
||||
"C1": "PARTIALLY_FEASIBLE",
|
||||
"C2": "PARTIALLY_FEASIBLE",
|
||||
"C3": "PARTIALLY_FEASIBLE",
|
||||
"C4": "PARTIALLY_FEASIBLE",
|
||||
"C5": "PARTIALLY_FEASIBLE",
|
||||
"C6": "PARTIALLY_FEASIBLE",
|
||||
"C7": "INCONCLUSIVE"
|
||||
},
|
||||
"binary_sha256": "91f48aae2675331e0a2c60ec2fedf983745c521c75232c704a6516a4140801fb",
|
||||
"budget_sha256": "8ce8a4134ff841dd0a60e2b108cd8dd688ff891f0867facb377bd0013263d839",
|
||||
"admission_sha256": "0cf469b78016845e73c5c483150c1964e350ba312fa0dfc0c2e1b91d145be0f1",
|
||||
"delta_review_sha256": "363080a9bae08a85f00213450b65529538487b4b699152f449539bf860cae21b",
|
||||
"evidence_manifest_sha256": "324b4f27c4978b7c8abb721df9183beb79febe2caed1c6b8e80dd555db1d0eca",
|
||||
"offline_checks_sha256": "0b29fddc1d39da4011e18d06603ea0f769fa317226439b93a29ca32433d74695",
|
||||
"input_checks_sha256": "05cbc1225739c24cc29becc8e0120cc728e854a9ae42074edf60b911150dbafa",
|
||||
"captures_total": 84,
|
||||
"input_wire_pairs_checked": 28,
|
||||
"closures_checked": 30,
|
||||
"all_exit0_no_rescue": true,
|
||||
"terminal_IPC_exit": 1,
|
||||
"C2_axis_annotation_sha256": "95aab3fea44bead98bde84f1dd5aba62106f3fa5c48ccd3d1ceef99d2c44f63d",
|
||||
"C2": "Legacy raw crossing field X0 NOT_EXERCISED retained; executed validator axis1 Y600 independently corroborated A505..675 and B585..715",
|
||||
"C6": "Held configure39 follows ACK30; native timeout transaction waiting1; client remains alive and ACK39 later; saved native identity NOT_OBSERVABLE",
|
||||
"limitations": [
|
||||
"P0 single standard control only; pristine fractional/rotation specific controls not run",
|
||||
"No native presentation, atomic generation, complete damage, saved node/buffer identity or GPU lifetime proof from pixels",
|
||||
"C7 resize stages camera800 legal nonsaturating; migration pixels/input and return-back stages not reached",
|
||||
"Standard-layout C1 H2 differences expected while popups continue; final H2 exact",
|
||||
"No universal click-through; outside grab dismissal retained separately"
|
||||
],
|
||||
"reviewer_native_runs": 0,
|
||||
"new_reservations": 0,
|
||||
"source_edits": false,
|
||||
"commit_push": false,
|
||||
"output_captures_total": 84,
|
||||
"generated_marker_source_pngs": 2,
|
||||
"png_files_total": 86,
|
||||
"capture_count_correction": {
|
||||
"superseded_receipt": "runtime-receipt-superseded-marker-count.json",
|
||||
"superseded_sha256": "9b8466b35ce2562d73db0bf9d99b38dcf8aea0238384cd377354ec2dc09523e3",
|
||||
"output_captures_per_run": {
|
||||
"P0": 10,
|
||||
"C1": 16,
|
||||
"C2": 8,
|
||||
"C3": 9,
|
||||
"C4": 9,
|
||||
"C5": 12,
|
||||
"C6": 10,
|
||||
"C7": 10
|
||||
},
|
||||
"explanation": "86 PNG files comprise 84 output captures and two generated marker-source.png files in C3/C4, counts_as_capture=False. Source OOM review unchanged; no new audit/run/reservation."
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
{
|
||||
"decision": "PASS",
|
||||
"scope": "Only test_compositor_only_environment_no_helpers_clients self.root instead of LAB and explanatory comment",
|
||||
"reviewer": "offline_isolation_delta_review",
|
||||
"independent": true,
|
||||
"materialized_by": "parent from explicit reviewer final response, no reviewer file write",
|
||||
"findings": [],
|
||||
"tests": {
|
||||
"offline_suite": "48/48 PASS",
|
||||
"actual_function_namespace_ignores_real_O1_collision": "PASS",
|
||||
"actual_function_fake_existing_token_refused": "PASS",
|
||||
"fake_existing_token_unchanged": "PASS",
|
||||
"real_token_and_budget_hashes_unchanged": "PASS",
|
||||
"git_diff_check_bounded_file": "PASS"
|
||||
},
|
||||
"sha256": {
|
||||
"source_test": "8d4f80c9d7f5dee53f06b9538d5523525e62eda77e4fb1632491a724e2cb8df2",
|
||||
"real_O1_token": "e4416c9a2967e65bebb0c49667400538904503b8a5e5d185ee9318547d304d0d",
|
||||
"real_budget": "dfe1897e255ca5a96b7b66b0af0728acdffdf3ddf397a3fa3c6b1011b07c9db6",
|
||||
"preserved_failure": "fe2141fcdbd575f70be427added2d1f676a23dfd31a188c921571f2846ad6a49",
|
||||
"gpu_manifest": "38b1daba551758e0969312a1ed5fc459af877ee7d443f2135d6aa62e4831af0e"
|
||||
},
|
||||
"native_runtime": "NOT_RUN",
|
||||
"new_native_captures": 0,
|
||||
"new_reservations": 0,
|
||||
"source_edits_by_reviewer": false,
|
||||
"committed": false,
|
||||
"pushed": false
|
||||
}
|
||||
|
|
@ -0,0 +1,86 @@
|
|||
{
|
||||
"authorized_runs": [
|
||||
"P1",
|
||||
"C8",
|
||||
"O1",
|
||||
"O2",
|
||||
"G2"
|
||||
],
|
||||
"conditions": {
|
||||
"C8": "Only via reviewed parent transport after P1 PARTIALLY_FEASIBLE; compare actual P1/C8 configured crossing, roles and geometry before result acceptance",
|
||||
"G2": "Exactly one A/B/A-return acquisition; strict GLES3 RBO capability only; reject unsupported attachment/context/error/state and STOP without B or retry after rejected A; native_gl_status remains NOT_RUN until actual execution",
|
||||
"O2": "Only after O1 COMPLETED PARTIALLY_FEASIBLE and no critical or unresolved survival/invariant failure; Ledger.admit enforces"
|
||||
},
|
||||
"decision": "ACCEPTED",
|
||||
"full_kit_manifest_sha256": "19ad4085ced4a2d9f77f665adff430ca2cf56d0cb41af930356f82d5a28d1370",
|
||||
"independent": true,
|
||||
"manifest_sha256": "414e57983d5218fcbea8235c53c09bc8377137d413b5aacf5b0890494db7d121",
|
||||
"not_admitted": [
|
||||
"R1"
|
||||
],
|
||||
"parent_transport_sha256": "ba2a43e70cbdef9a4ef9aab4529efb8bb4558208f148062a47b3bb07eed9a34b",
|
||||
"prospective": {
|
||||
"C8": {
|
||||
"client_binary": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/graphics-next-work/client-build/fullscreen-client",
|
||||
"client_binary_sha256": "82fc218f15f2405cca0f2290cc41bbbc6dfead18c641f796f8fcd4012a16af70",
|
||||
"client_build_receipt": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/graphics-next-work/client-compile.json",
|
||||
"client_build_receipt_sha256": "00c97bec3f87077f7edb6fd5e0d0e7ced7ed6c4c1ac76c9d8456647eb59ee793",
|
||||
"client_build_review": "ACCEPTED",
|
||||
"decision": "ACCEPTED",
|
||||
"source_manifest_sha256": "414e57983d5218fcbea8235c53c09bc8377137d413b5aacf5b0890494db7d121"
|
||||
},
|
||||
"G2": {
|
||||
"binding": {
|
||||
"binary": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/builds/gpu-mosaic/sway/swayfx-mosaic",
|
||||
"client": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/gpu-work/client-build/g2-client",
|
||||
"client_sha256": "45b98828e84b94954b4382a3ec1a72d92624667e74534463c133eb3118a689f8",
|
||||
"gate_file": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/gpu-work/native-runtime-gate.json",
|
||||
"source_manifest_sha256": "414e57983d5218fcbea8235c53c09bc8377137d413b5aacf5b0890494db7d121"
|
||||
},
|
||||
"build_review": "ACCEPTED",
|
||||
"build_review_receipt": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/ownreview-gpu-built/receipt.json",
|
||||
"build_review_receipt_sha256": "00e78a136ea39a873adbee07653969f7265607c91d5dec5226f9708a14cc0aec",
|
||||
"client_build_review": "ACCEPTED",
|
||||
"decision": "ACCEPTED",
|
||||
"gate_file": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/gpu-work/native-runtime-gate.json",
|
||||
"gate_file_sha256": "75c0c663552eff71bde989e586a8fea5cf97714d3a26400ffdf8ed71566f2e1a",
|
||||
"gl_observability_preflight": "ACCEPTED",
|
||||
"gl_observability_preflight_receipt": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/review-gpu-fifo-delta/receipt.json",
|
||||
"gl_observability_preflight_receipt_sha256": "247fa681a20433a36eb8ba6a6545c6c784f6e8d1cf168345fcabb867a86737c4",
|
||||
"gpu_source_manifest": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/results/gpu-source-freeze-corrected.json",
|
||||
"gpu_source_manifest_sha256": "38b1daba551758e0969312a1ed5fc459af877ee7d443f2135d6aa62e4831af0e",
|
||||
"gpu_source_review": "ACCEPTED",
|
||||
"gpu_source_review_receipt": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/review-gpu-fifo-delta/receipt.json",
|
||||
"gpu_source_review_receipt_sha256": "247fa681a20433a36eb8ba6a6545c6c784f6e8d1cf168345fcabb867a86737c4",
|
||||
"native_gl_status": "NOT_RUN",
|
||||
"pair": 3,
|
||||
"source_manifest_sha256": "414e57983d5218fcbea8235c53c09bc8377137d413b5aacf5b0890494db7d121"
|
||||
},
|
||||
"O1": {
|
||||
"client_build_review": "ACCEPTED",
|
||||
"decision": "ACCEPTED",
|
||||
"oom_source_review_sha256": "a953a38b49bea11e9c19e84ed2d8218a16b2e5d980e0ba57677eeee0ddf62c6c",
|
||||
"source_manifest_sha256": "414e57983d5218fcbea8235c53c09bc8377137d413b5aacf5b0890494db7d121",
|
||||
"variant_identity": "COREC_V2_NATIVE_OOM_DIAGNOSTIC"
|
||||
},
|
||||
"O2": {
|
||||
"client_build_review": "ACCEPTED",
|
||||
"decision": "ACCEPTED",
|
||||
"oom_source_review_sha256": "a953a38b49bea11e9c19e84ed2d8218a16b2e5d980e0ba57677eeee0ddf62c6c",
|
||||
"source_manifest_sha256": "414e57983d5218fcbea8235c53c09bc8377137d413b5aacf5b0890494db7d121",
|
||||
"variant_identity": "COREC_V2_NATIVE_OOM_DIAGNOSTIC"
|
||||
},
|
||||
"P1": {
|
||||
"client_binary": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/graphics-next-work/client-build/fullscreen-client",
|
||||
"client_binary_sha256": "82fc218f15f2405cca0f2290cc41bbbc6dfead18c641f796f8fcd4012a16af70",
|
||||
"client_build_receipt": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/graphics-next-work/client-compile.json",
|
||||
"client_build_receipt_sha256": "00c97bec3f87077f7edb6fd5e0d0e7ced7ed6c4c1ac76c9d8456647eb59ee793",
|
||||
"client_build_review": "ACCEPTED",
|
||||
"decision": "ACCEPTED",
|
||||
"source_manifest_sha256": "414e57983d5218fcbea8235c53c09bc8377137d413b5aacf5b0890494db7d121"
|
||||
}
|
||||
},
|
||||
"publication_sha256": "ca17909631b03826605ca1ee3d4f4287c9e1328c9e8992487ece0d997e2a2759",
|
||||
"reviewer": "/root/remaining_run_admission",
|
||||
"scope": "Exact remaining source/publication/binary/client/caps bindings only; conditional private ticket runs, no runtime observation inherited"
|
||||
}
|
||||
|
|
@ -0,0 +1,204 @@
|
|||
{
|
||||
"IPC_calls": 0,
|
||||
"O1_native_failure": {
|
||||
"children": "0",
|
||||
"failures": "1",
|
||||
"initialized": "0",
|
||||
"listeners": "0",
|
||||
"matched": "1",
|
||||
"nonce": "dcb32bacb26349078f9ca4a7876980b8",
|
||||
"parent": "0x55dca3a1ec80",
|
||||
"pid": "3324847",
|
||||
"published": "0",
|
||||
"role": "root_popup",
|
||||
"successes": "0",
|
||||
"tree": "0x55dca46ebf50",
|
||||
"xdg": "0x55dca4750200",
|
||||
"xdg_parent": "0x55dca4770910"
|
||||
},
|
||||
"O1_scientific_cleanup": "FALSE, retained oracle failure; do not promote to PF",
|
||||
"O1_survival": "Post-injection snapshots/captures and later IPC rc0; neighbor serial42/43 before close_owner; same PID in native lines; all processes rc0 no rescue",
|
||||
"O1_wire_root": {
|
||||
"parent": "TOPLEVEL",
|
||||
"parent_xdg": 9,
|
||||
"popup": "POPUP_A",
|
||||
"role": 14,
|
||||
"serial": 31,
|
||||
"wl": 12,
|
||||
"xdg": 11
|
||||
},
|
||||
"O2": "NOT_RUN_BLOCKED_BY_O1_INCONCLUSIVE",
|
||||
"P1_independent_pixels": "PASS exact complete mapped H2, A-only H2 and final baseline replayed from raw captures",
|
||||
"budget": {
|
||||
"captures": 100,
|
||||
"runs": 11,
|
||||
"sha256": "84e19df60a786b2c346ac58b7179ab1a355142246a06b30d2a98e7d8a4b01873",
|
||||
"unchanged": true
|
||||
},
|
||||
"committed": false,
|
||||
"critical_common_failure_for_G2_demonstrated": false,
|
||||
"critical_leak_demonstrated": false,
|
||||
"decision": "PASS_BOUNDED_EVIDENCE_REVIEW",
|
||||
"evidence_sha256": {
|
||||
"graphics-runs/C8/run/compositor.log": "7a8d4c1963cbbf9edf80f0edc61cfa20fbc150b4d8d25d28eb8bc4229a618971",
|
||||
"graphics-runs/C8/run/config": "caf7cdff074714cb5b2ba35827558ce5a7defda125de034a7d42296f03b0528b",
|
||||
"graphics-runs/C8/run/events.jsonl": "186f6c15ae2d3cd1dc8d32879a5e35e277e5577b0be141a79c2692fdf76ddf4d",
|
||||
"graphics-runs/C8/run/filler0-closed-3324744.log": "5c38d9f9c4098626b02621acf0767b8568252cb616219da26e190b7a99d0a6bc",
|
||||
"graphics-runs/C8/run/filler0.log": "5c38d9f9c4098626b02621acf0767b8568252cb616219da26e190b7a99d0a6bc",
|
||||
"graphics-runs/C8/run/fullscreen-before-snapshot.json": "4940bcf318256d9ac86fff32b6d3104b3f6808922cae296dc48500e7886cdd99",
|
||||
"graphics-runs/C8/run/fullscreen-peer-closed-3324753.log": "0cc01b5502b258adfe98eba1c69fbe28915dac9503cca20ff45bd81f5c322f41",
|
||||
"graphics-runs/C8/run/fullscreen-peer.log": "0cc01b5502b258adfe98eba1c69fbe28915dac9503cca20ff45bd81f5c322f41",
|
||||
"graphics-runs/C8/run/outcome.json": "552ed76022f8675c63d75e9b41406ec0754b2e5826b342020c559c4458724bd1",
|
||||
"graphics-runs/C8/run/owner-closed-3324748.log": "f7c75750e4f2e5536d89eb4f9180ec68f68e885b4e1e0b109ec3bd9f0fcdc517",
|
||||
"graphics-runs/C8/run/owner.log": "f7c75750e4f2e5536d89eb4f9180ec68f68e885b4e1e0b109ec3bd9f0fcdc517",
|
||||
"graphics-runs/C8/run/pointer.log": "fbf1d66c7352dee486b0d01ae2d4e258a14c003a534fb592498727ff17ca402f",
|
||||
"graphics-runs/C8/run/proc-maps.txt": "1b098ca0e65add33840d46e2be6639f42fac6e5d87aebcc74ab5aaa3a256e199",
|
||||
"graphics-runs/C8/run/reference-closed-3324736.log": "8998c5cec8c36d81d8907248913dab7a1b93ee999e2b27f139e57526dfc68bc4",
|
||||
"graphics-runs/C8/run/reference.log": "8998c5cec8c36d81d8907248913dab7a1b93ee999e2b27f139e57526dfc68bc4",
|
||||
"graphics-runs/C8/run/runtime-identity.json": "f91f0bcf1659c348cb4970d87e505510d71d1e66d789393d71a2146e6fc78b85",
|
||||
"graphics-runs/C8/run/startup-snapshot.json": "ac7adbd8ae0e4b928f80749ee831ebd2f2318d0aa8456547549838ff7e33298b",
|
||||
"graphics-runs/C8/run/terminal-ipc.json": "c4d44ea275c98e70966926571f95b83a96776fdf06ebf987bc2b2fa9f9a85630",
|
||||
"graphics-runs/O1/run/H2-reference1.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/O1/run/H2-reference2.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/O1/run/compositor.log": "329ad681d7fbaae086365b21c57f077e0f0e1dec61aac158233ff54ceb7daf40",
|
||||
"graphics-runs/O1/run/config": "caf7cdff074714cb5b2ba35827558ce5a7defda125de034a7d42296f03b0528b",
|
||||
"graphics-runs/O1/run/events.jsonl": "9ca550feba31bfdfc5afbe8c855e83348b560e238e2d76858051302d9c88df82",
|
||||
"graphics-runs/O1/run/filler0-closed-3324882.log": "fa784f8ca1d816ca009d25d4540704d14889c2453149b744cf4b2b140f5f3dd7",
|
||||
"graphics-runs/O1/run/filler0.log": "fa784f8ca1d816ca009d25d4540704d14889c2453149b744cf4b2b140f5f3dd7",
|
||||
"graphics-runs/O1/run/oom-after-snapshot.json": "fef07f9f67ad6f28ba9bf4e1f9329c4b9fec9f4451f62cd98a0f9d054404f338",
|
||||
"graphics-runs/O1/run/oom-before-snapshot.json": "686834730d06fbb4bc8e28d858ba863dbae1a516774e4da7d5b3d44d1b099b8a",
|
||||
"graphics-runs/O1/run/oom-partial-failure.json": "58ec2f56a18a742a9f992d25229a784f81624dcdb4dcf38075c1699c3ca98203",
|
||||
"graphics-runs/O1/run/oom-post-H1.png": "c8d50e1a0e52074bf595a82a56d5db9f1790cf0cfd7e510c32ceceeba4295802",
|
||||
"graphics-runs/O1/run/oom-post-H2.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/O1/run/oom-pre-H1.png": "c8d50e1a0e52074bf595a82a56d5db9f1790cf0cfd7e510c32ceceeba4295802",
|
||||
"graphics-runs/O1/run/oom-pre-H2.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/O1/run/oom-token": "e4416c9a2967e65bebb0c49667400538904503b8a5e5d185ee9318547d304d0d",
|
||||
"graphics-runs/O1/run/outcome.json": "ff778e31269c9d3494a38cd07e70a2d1b60a42b3d25c9336b3be431594d8d776",
|
||||
"graphics-runs/O1/run/owner-closed-3324886.log": "3f8e81302a78ab16a1796f6dafc8e5d4cb9051abd79b981caa3bd0fa60a425fe",
|
||||
"graphics-runs/O1/run/owner-geometry.json": "82cb362257a10a14326b664a0b7dc39dbb447d8e19b0af652a5460f7ec3ed294",
|
||||
"graphics-runs/O1/run/owner-owner-snapshot.json": "ae35734e8209c1c5b8baba886f4324a133690df0172e87cfa4be864d844f91b6",
|
||||
"graphics-runs/O1/run/owner.log": "3f8e81302a78ab16a1796f6dafc8e5d4cb9051abd79b981caa3bd0fa60a425fe",
|
||||
"graphics-runs/O1/run/pointer.log": "3e000d65bad98a385f2320e3c0f14c9dfdecded8d0a117fcda4f3f0fdaf8b0aa",
|
||||
"graphics-runs/O1/run/proc-maps.txt": "9787ff1cd58ee7de606167531afa27cc7c6270a8d9125e7f81a83580a47ec7ca",
|
||||
"graphics-runs/O1/run/reference-closed-3324875.log": "5fe3c64d386206db19d8e886cb555f296eb5fc8ff9ea3dd2462f6a483ec4136c",
|
||||
"graphics-runs/O1/run/reference-stability.json": "f6557d7b4e29b35adcaeafbd4391ebd72faf26d4d8a870c4f668a0d3236e1c78",
|
||||
"graphics-runs/O1/run/reference.log": "5fe3c64d386206db19d8e886cb555f296eb5fc8ff9ea3dd2462f6a483ec4136c",
|
||||
"graphics-runs/O1/run/runtime-identity.json": "9053ccfc5e2c4848b15a345aad62e739766fd0c1d32921695f53e9e0d5d59531",
|
||||
"graphics-runs/O1/run/startup-snapshot.json": "070cad8377aa884463b1dc86cb7d35efd700a23ab967165bed6439bb2a991b55",
|
||||
"graphics-runs/O1/run/terminal-ipc.json": "c4d44ea275c98e70966926571f95b83a96776fdf06ebf987bc2b2fa9f9a85630",
|
||||
"graphics-runs/P1/run/H2-reference1.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/P1/run/H2-reference2.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/P1/run/compositor.log": "169c700f1fb87c362817b85ef8a559ba3daa54f1492d99905f9cb8ca6ff734b3",
|
||||
"graphics-runs/P1/run/config": "caf7cdff074714cb5b2ba35827558ce5a7defda125de034a7d42296f03b0528b",
|
||||
"graphics-runs/P1/run/events.jsonl": "339e34ff32aa4950dfe4bff88663f92182443835eb2c5bd49c2b2c8cb221a9ee",
|
||||
"graphics-runs/P1/run/filler0-closed-3324617.log": "0ead301c465e67e0cfbeee98eb5a3565a1918f7816b317f2b342c3b7a2dd3572",
|
||||
"graphics-runs/P1/run/filler0.log": "0ead301c465e67e0cfbeee98eb5a3565a1918f7816b317f2b342c3b7a2dd3572",
|
||||
"graphics-runs/P1/run/fullscreen-B-closed-H1.png": "57d05417142dec4c40d97240ce1a19c74c943f18e12d641fe14c8b82f931f3ac",
|
||||
"graphics-runs/P1/run/fullscreen-B-closed-H2.png": "cb3ae85599512bb4cd321ca6e1e6d6098d58e0722b6417c78771e985f5ef6586",
|
||||
"graphics-runs/P1/run/fullscreen-after-owner-snapshot.json": "f4b15db051c8e8c01af7aeb39a00e371203827b4fdd3398b5b2572a6387ab9a6",
|
||||
"graphics-runs/P1/run/fullscreen-before-snapshot.json": "490ca9c0126eba35d213c86ad9cf752cbafd297f8cefe2bc453c98546e8a47ad",
|
||||
"graphics-runs/P1/run/fullscreen-comparability.json": "104f3dd9b66b6ad8463651474403904fbc49a73a9c25c12a1c18333a15f42a80",
|
||||
"graphics-runs/P1/run/fullscreen-final-H1.png": "af3ac8ce331306347f6bd66831c4eae9bca1f2e42ecb25bb639cbfd16b5e622f",
|
||||
"graphics-runs/P1/run/fullscreen-final-H2.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/P1/run/fullscreen-mapped-H1.png": "41043f2d03433de3c0a1f396d320a1241bb36e18afd02d13863912c2117b054f",
|
||||
"graphics-runs/P1/run/fullscreen-mapped-H2.png": "55157d11ee8dfe0e56e0a1def7b0efb13659e5eef75bae9561789408d836b90a",
|
||||
"graphics-runs/P1/run/fullscreen-owner.png": "195648a5928a4c3f963afbb610645a4b4d83bbdecf6a45b43abaa52ea122fc83",
|
||||
"graphics-runs/P1/run/fullscreen-peer-closed-3324628.log": "8081fa8b3dcab33c21e222305f770233d9815a433d32d4749b652aa5e25bb9f4",
|
||||
"graphics-runs/P1/run/fullscreen-peer.log": "8081fa8b3dcab33c21e222305f770233d9815a433d32d4749b652aa5e25bb9f4",
|
||||
"graphics-runs/P1/run/fullscreen-rootA.png": "57d05417142dec4c40d97240ce1a19c74c943f18e12d641fe14c8b82f931f3ac",
|
||||
"graphics-runs/P1/run/outcome.json": "2d6f603a9b8d304b1af0931463abeeeaee4e0cf9e6bc140810fe4eb76b931e04",
|
||||
"graphics-runs/P1/run/owner-closed-3324623.log": "0de4bca13044d88fa8ae1704741da137f2ba4c623069b18003fc25fd725d9114",
|
||||
"graphics-runs/P1/run/owner-geometry.json": "8b59c66a34d6613579dc2fccabe9826b77283f810a97ee1cf71e9cfa3ab20a34",
|
||||
"graphics-runs/P1/run/owner-owner-snapshot.json": "7cfb55fff4ad43ecd022eddf12266739a6bf9056a42294f9b8a8805bb7df70f5",
|
||||
"graphics-runs/P1/run/owner.log": "0de4bca13044d88fa8ae1704741da137f2ba4c623069b18003fc25fd725d9114",
|
||||
"graphics-runs/P1/run/pointer.log": "f082f3a4978914b3709aa7a928c961d434c38a27ae34a07bad1e6f4e95254588",
|
||||
"graphics-runs/P1/run/proc-maps.txt": "c11c8be4a17a8d9e18bd69ce1fa9b23a7e1dd661960bcb480e36c5cc5729bbb0",
|
||||
"graphics-runs/P1/run/reference-closed-3324611.log": "01030c793f57a2f65e4580e394967f4f13ac5621d6a5cd653ad732bd35550965",
|
||||
"graphics-runs/P1/run/reference-stability.json": "f6557d7b4e29b35adcaeafbd4391ebd72faf26d4d8a870c4f668a0d3236e1c78",
|
||||
"graphics-runs/P1/run/reference.log": "01030c793f57a2f65e4580e394967f4f13ac5621d6a5cd653ad732bd35550965",
|
||||
"graphics-runs/P1/run/runtime-identity.json": "8a31adf0682d86251ed6903e00b01d305e544f7acb0f4bcb9665c03040dee301",
|
||||
"graphics-runs/P1/run/startup-snapshot.json": "fc6cc0d684bf0a6ce9378ce317eb0ea4d983f170dc0aa5c39cebf7cfa15f1751",
|
||||
"graphics-runs/P1/run/terminal-ipc.json": "e6674bddc8ac2b06fb5c2373cf7bc54f0906e7f252559f46928ce70fd0e70cd4"
|
||||
},
|
||||
"findings": [
|
||||
{
|
||||
"evidence": "C8 snapshot workspace6 Mosaic: filler8, group10 with owner9 only, peer11 as workspace sibling; guard fails before captures. P1 actual group10 has owner9+peer11.",
|
||||
"file": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/runtime-next-git-kit/tooling/probes/step20c-corec-v2/graphics/fullscreen.py",
|
||||
"severity": "P2",
|
||||
"smallest_correction_direction": "Future separately authorized fixture must prepare and verify actual group under Mosaic; preserve exact invariant, no replay of consumed C8.",
|
||||
"symbol": "run: group preparation",
|
||||
"violated_requirement": "C8 actual equal-child nonleaf fullscreen group comparable to P1"
|
||||
},
|
||||
{
|
||||
"evidence": "O1 actual destruction order A,TOPLEVEL after failed root allocation; no B CREATE. Common client_exit accepts B,A,TOPLEVEL or TOPLEVEL only, rejects root-only order despite CLOSE_RECEIVED, rc0, EXIT error0 and SHM1/1. Final 2 captures absent.",
|
||||
"file": "/var/tmp/swayfx-mosaic-corec-v2-i516p6po/runtime-next-git-kit/tooling/probes/step20c-corec-v2/graphics/oom_handler.py",
|
||||
"severity": "P2",
|
||||
"smallest_correction_direction": "Future bounded OOM-specific closure oracle verifies exact root-failure lifecycle; preserve current INCONCLUSIVE and no retry.",
|
||||
"symbol": "run -> Session.close_client -> validators.client_exit",
|
||||
"violated_requirement": "Prospective O1 validates actual root-failure popup lifecycle and owner closure without nonexistent B"
|
||||
}
|
||||
],
|
||||
"git_operations": 0,
|
||||
"independent": true,
|
||||
"limitations": [
|
||||
"C8 fullscreen/nonleaf comparison NOT_EXERCISED",
|
||||
"O1 INCONCLUSIVE final captures absent",
|
||||
"Full damage/stale-listener/availability qualification NOT_PROVEN",
|
||||
"Native GL remains NOT_RUN before G2"
|
||||
],
|
||||
"new_builds": 0,
|
||||
"new_captures": 0,
|
||||
"new_runs": 0,
|
||||
"post_injection_maps_limit": "availability() validates current PID/executable/wlroots maps before oom-after snapshot; its return was not archived because final oom-measurements save was skipped. proc-maps/runtime-identity are startup evidence; do not claim separate full post-injection maps archive.",
|
||||
"pushed": false,
|
||||
"results": {
|
||||
"C8": {
|
||||
"all_process_exits": 0,
|
||||
"captures": 0,
|
||||
"mechanical_rescue": false,
|
||||
"outer_runner_exit": 1,
|
||||
"runner_failure": "Ambiguous: exact two-child group preparation",
|
||||
"scientific_cleanup": true,
|
||||
"status": "INCONCLUSIVE",
|
||||
"terminal_ipc": {
|
||||
"ipc_exit": 1,
|
||||
"stderr": "00:00:00.002 [ERROR] [common/ipc-client.c:86] Unable to receive IPC response\n",
|
||||
"stdout": ""
|
||||
}
|
||||
},
|
||||
"O1": {
|
||||
"all_process_exits": 0,
|
||||
"captures": 6,
|
||||
"mechanical_rescue": false,
|
||||
"outer_runner_exit": 1,
|
||||
"runner_failure": "Ambiguous: popup child-first destruction order",
|
||||
"scientific_cleanup": false,
|
||||
"status": "INCONCLUSIVE",
|
||||
"terminal_ipc": {
|
||||
"ipc_exit": 1,
|
||||
"stderr": "00:00:00.002 [ERROR] [common/ipc-client.c:86] Unable to receive IPC response\n",
|
||||
"stdout": ""
|
||||
}
|
||||
},
|
||||
"P1": {
|
||||
"all_process_exits": 0,
|
||||
"captures": 10,
|
||||
"mechanical_rescue": false,
|
||||
"outer_runner_exit": 0,
|
||||
"runner_failure": null,
|
||||
"scientific_cleanup": true,
|
||||
"status": "PARTIALLY_FEASIBLE",
|
||||
"terminal_ipc": {
|
||||
"ipc_exit": 1,
|
||||
"stderr": "00:00:00.001 [ERROR] [common/ipc-client.c:86] Unable to receive IPC response\n",
|
||||
"stdout": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"reviewer": "/root/remaining_run_admission",
|
||||
"schema": "remaining-runtime-early-independent-review-v1",
|
||||
"scope": "Only P1/C8/O1 actual evidence and G2 dependency-stop gate; no repair/run/retry",
|
||||
"source_edits": false,
|
||||
"terminal_endpoint": "terminal swaymsg exit rc1 Unable to receive IPC response together with compositor rc0 and shutdown teardown is endpoint unavailability; does not establish compositor shutdown bug",
|
||||
"verification_note": "First read-only evidence check compared richer outcome.json to compact ledger outcome and failed assertion; corrected comparison verifies shared status/process facts. No runtime action occurred."
|
||||
}
|
||||
|
|
@ -0,0 +1,232 @@
|
|||
{
|
||||
"G2": {
|
||||
"EGL_client_version": 2,
|
||||
"GL_VERSION": "OpenGL ES 3.2 Mesa 26.2.4-arch1.1",
|
||||
"allocation_length": "NOT_PROVEN",
|
||||
"baseline_H2": "PASS exact complete RGB 800x600; 2 captures only, no H1 A/A-return comparison",
|
||||
"cleanup": {
|
||||
"all_process_exit0": true,
|
||||
"mechanical": "PASS",
|
||||
"private_runtime_removed": true,
|
||||
"reaped": true,
|
||||
"rescue": false,
|
||||
"scientific": "PASS",
|
||||
"terminal_IPC_exit": 1,
|
||||
"watchdog": false
|
||||
},
|
||||
"consumed": true,
|
||||
"epochs_2_3": "NOT_RUN",
|
||||
"error_observation": "pre_errors and version query_errors empty after executed pre/version drains; read_errors/restore_errors remain zero-initialized because early refusal precedes state save/bind/read/restore. Empty arrays are not read success or observed restoration.",
|
||||
"first_A": "REJECTED",
|
||||
"metadata_bytes": 1776,
|
||||
"metadata_rows": [
|
||||
"begin",
|
||||
"sample",
|
||||
"rejected"
|
||||
],
|
||||
"native_READ_SUCCESS": "NOT_PROVEN",
|
||||
"no_retry": "PASS no raw files, no epoch2/3 tokens/data and exactly one client source-A command",
|
||||
"observed_dmabuf": {
|
||||
"allocation_length": "NOT_PROVEN",
|
||||
"borrowed": true,
|
||||
"dimensions": [
|
||||
800,
|
||||
600
|
||||
],
|
||||
"format": 875713112,
|
||||
"modifier": "020000001046bb04",
|
||||
"planes": [
|
||||
{
|
||||
"dev": 12,
|
||||
"fd": 32,
|
||||
"fstat_ok": true,
|
||||
"ino": 32909,
|
||||
"offset": 0,
|
||||
"stride": 3584
|
||||
},
|
||||
{
|
||||
"dev": 12,
|
||||
"fd": 33,
|
||||
"fstat_ok": true,
|
||||
"ino": 32909,
|
||||
"offset": 2293760,
|
||||
"stride": 1024
|
||||
}
|
||||
]
|
||||
},
|
||||
"observed_native_object_metadata": {
|
||||
"dimensions": [
|
||||
800,
|
||||
600
|
||||
],
|
||||
"fbo_rbo_tex": [
|
||||
7,
|
||||
13,
|
||||
4
|
||||
],
|
||||
"fx": "5572d9a735d0",
|
||||
"image": "5572d9ad6270",
|
||||
"wlr": "5572d99d5900"
|
||||
},
|
||||
"point": 0,
|
||||
"raw_GPU_bytes": 0,
|
||||
"raw_GPU_files": 0,
|
||||
"reason": "GLES_STATE_NOT_SUPPORTED",
|
||||
"reason_interpretation": "Frozen g2_read requires both EGL client_version>=3 and GL_VERSION prefix OpenGL ES 3.; observed EGL value fails. Refusal conforms to accepted strict capability contract. No relaxation/retry authorized.",
|
||||
"source_client_command": [
|
||||
"G2_SOURCE_BYTES command=G2-A bytes=1920000 crc32=c03ad22d exact_original=not-return"
|
||||
],
|
||||
"state_zero_fields": "before/after and attachment/channel zeros unmeasured initialized values on this early return",
|
||||
"status": "INCONCLUSIVE",
|
||||
"uniforms_and_halfpixel": "NOT_OBSERVED"
|
||||
},
|
||||
"IPC_calls": 0,
|
||||
"committed": false,
|
||||
"decision": "PASS_BOUNDED_RECORDING_AND_STOP_PROTOCOL",
|
||||
"evidence_sha256": {
|
||||
"gpu-kit/g2_gl.h": "cd175030be6a2e5d0af036c714c03455ef417f78f20360e00f7e6d1d7be7ab13",
|
||||
"gpu-kit/g2_native.h": "0dfa9e089853a078094736da7f4e133d7fd648500d380dd7f536a7a6f80fdd8e",
|
||||
"gpu-kit/scenario.py": "a894a74d5b1a9c0378485f0291a8ae788a56bb33ab26665dc6cd033a9271c738",
|
||||
"gpu-work/acquisition/epoch-1.consumed": "92728523a6a90f41ad63b37bcb08901ed0dedbb1e3743f93dea3ff4aa535e30c",
|
||||
"gpu-work/acquisition/epoch-1.jsonl": "a8ac7f57be576a793f373fb5363fd4b05351ed5cd60bb5cbefd8ec905566f6ce",
|
||||
"graphics-runs/G2/run/G2-H2-baseline.json": "1cfa58941ac41b07ea7206add5d1722fa2749eb5be5274b9006b4cbcba8f31b3",
|
||||
"graphics-runs/G2/run/G2-H2-baseline1.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/G2/run/G2-H2-baseline2.png": "4471e93ccb6cf3ff4970f61fce405431a228af598d2f1f030a3b7586962ecd7a",
|
||||
"graphics-runs/G2/run/compositor.log": "4a220e8610b627e74775a1866f1cbc6cc926dfda9cf276c873c632fb26ea73e9",
|
||||
"graphics-runs/G2/run/config": "caf7cdff074714cb5b2ba35827558ce5a7defda125de034a7d42296f03b0528b",
|
||||
"graphics-runs/G2/run/events.jsonl": "6da260a376155fbe4d170651943113d5d4927ed6e94d3f7fe57806e36de169af",
|
||||
"graphics-runs/G2/run/g2-background-closed-3347683.log": "64e75816dbb8a6013fa0614637f8176d9ad922e8c630c46b8d92317e36a170d3",
|
||||
"graphics-runs/G2/run/g2-background.log": "64e75816dbb8a6013fa0614637f8176d9ad922e8c630c46b8d92317e36a170d3",
|
||||
"graphics-runs/G2/run/g2-glass-closed-3347685.log": "b9c79aee77e15c9b99e43d786009d5b79f279368a3c4da94f3e9be19ea7daf63",
|
||||
"graphics-runs/G2/run/g2-glass.log": "b9c79aee77e15c9b99e43d786009d5b79f279368a3c4da94f3e9be19ea7daf63",
|
||||
"graphics-runs/G2/run/g2-reference-closed-3347672.log": "68ab7f0f14e6bfcb09dff2176c8e493de6f84287d1d1fedb9d4904d195c37bd2",
|
||||
"graphics-runs/G2/run/g2-reference.log": "68ab7f0f14e6bfcb09dff2176c8e493de6f84287d1d1fedb9d4904d195c37bd2",
|
||||
"graphics-runs/G2/run/outcome.json": "61a6735ad0c700978a2f58c85ba0d59487cb863a81b7c933da63fbc1ccea10d3",
|
||||
"graphics-runs/G2/run/pointer.log": "fbf1d66c7352dee486b0d01ae2d4e258a14c003a534fb592498727ff17ca402f",
|
||||
"graphics-runs/G2/run/proc-maps.txt": "fe4ed2ab19539069e1adf7cc047a29af0e9f3bd91a1fdc4d17f274c8ce04c89d",
|
||||
"graphics-runs/G2/run/runtime-identity.json": "49f38e896a3670ec9bb69d3d1c5809b4a017024693800a6738eaadf9eacea5e8",
|
||||
"graphics-runs/G2/run/startup-snapshot.json": "01923c0cfc26c32f2675b0386f845b0bc6ffcf262fd5ab6f182ef6ba40f1871b",
|
||||
"graphics-runs/G2/run/terminal-ipc.json": "e6674bddc8ac2b06fb5c2373cf7bc54f0906e7f252559f46928ce70fd0e70cd4",
|
||||
"results/native-G2-outer.json": "61c72e5203c2b32143774249bdb595f802b591e2168fa371cf1a8da973d20fd2",
|
||||
"review-oom-runtime/runtime-receipt.json": "ce5b5bf1d673f18b1eed77c8b3993caa3ea55fa171369cce7737dc5788fe4982",
|
||||
"review-remaining-runtime/G2-dependency-decision.json": "346cf42b038e3f6f17d07ef363f47edec63ccdf8addecb65de4e22cd65e026d2",
|
||||
"review-remaining-runtime/early-receipt.json": "fc9fc09efb117282089575503c8716aee4846d931378ce6cd8f378a1c7cb8906"
|
||||
},
|
||||
"git_operations": 0,
|
||||
"independent": true,
|
||||
"ledger": {
|
||||
"O2": "NOT_RUN_BLOCKED_BY_O1_INCONCLUSIVE",
|
||||
"R1": "NOT_RUN_NOT_ADMITTED",
|
||||
"completed_reservations": 12,
|
||||
"immutable_binding_sha256": {
|
||||
"results/pre-run-freeze.json": "f3e01cf4fdf65a27595f104d105e0b5241c40da8e0ea33b90f0fa1e981ea5767",
|
||||
"results/pre-run-publication.json": "8ef64e846f789faa75ce3c2dd04f092b1d6cf7b58a1de5e502768d7c4ee61616",
|
||||
"results/remaining-pre-run-freeze.json": "414e57983d5218fcbea8235c53c09bc8377137d413b5aacf5b0890494db7d121",
|
||||
"results/remaining-publication.json": "ca17909631b03826605ca1ee3d4f4287c9e1328c9e8992487ece0d997e2a2759",
|
||||
"review-graphics/run-admission.json": "0cf469b78016845e73c5c483150c1964e350ba312fa0dfc0c2e1b91d145be0f1",
|
||||
"review-remaining-admission/run-admission.json": "0fb5664d23928444b10309467f9c0aecc228f95bb524db4024a2340594b065c0"
|
||||
},
|
||||
"immutable_prior_bindings": "PASS every recorded manifest/review/publication SHA still exact",
|
||||
"launched": 12,
|
||||
"limits": {
|
||||
"captures": 180,
|
||||
"captures_per_run": 18,
|
||||
"duration_s": 150,
|
||||
"runs": 14
|
||||
},
|
||||
"output_capture_debits": 102,
|
||||
"per_run": {
|
||||
"C1": {
|
||||
"captures": 16,
|
||||
"reserved_cap": 18,
|
||||
"status": "PARTIALLY_FEASIBLE"
|
||||
},
|
||||
"C2": {
|
||||
"captures": 8,
|
||||
"reserved_cap": 12,
|
||||
"status": "PARTIALLY_FEASIBLE"
|
||||
},
|
||||
"C3": {
|
||||
"captures": 9,
|
||||
"reserved_cap": 12,
|
||||
"status": "PARTIALLY_FEASIBLE"
|
||||
},
|
||||
"C4": {
|
||||
"captures": 9,
|
||||
"reserved_cap": 12,
|
||||
"status": "PARTIALLY_FEASIBLE"
|
||||
},
|
||||
"C5": {
|
||||
"captures": 12,
|
||||
"reserved_cap": 12,
|
||||
"status": "PARTIALLY_FEASIBLE"
|
||||
},
|
||||
"C6": {
|
||||
"captures": 10,
|
||||
"reserved_cap": 12,
|
||||
"status": "PARTIALLY_FEASIBLE"
|
||||
},
|
||||
"C7": {
|
||||
"captures": 10,
|
||||
"reserved_cap": 14,
|
||||
"status": "INCONCLUSIVE"
|
||||
},
|
||||
"C8": {
|
||||
"captures": 0,
|
||||
"reserved_cap": 12,
|
||||
"status": "INCONCLUSIVE"
|
||||
},
|
||||
"G2": {
|
||||
"captures": 2,
|
||||
"reserved_cap": 16,
|
||||
"status": "INCONCLUSIVE"
|
||||
},
|
||||
"O1": {
|
||||
"captures": 6,
|
||||
"reserved_cap": 8,
|
||||
"status": "INCONCLUSIVE"
|
||||
},
|
||||
"P0": {
|
||||
"captures": 10,
|
||||
"reserved_cap": 10,
|
||||
"status": "PARTIALLY_FEASIBLE"
|
||||
},
|
||||
"P1": {
|
||||
"captures": 10,
|
||||
"reserved_cap": 10,
|
||||
"status": "PARTIALLY_FEASIBLE"
|
||||
}
|
||||
},
|
||||
"reservations": 12,
|
||||
"reserved_capture_caps": 148,
|
||||
"sha256": "dfe1897e255ca5a96b7b66b0af0728acdffdf3ddf397a3fa3c6b1011b07c9db6"
|
||||
},
|
||||
"new_blocking_findings": [],
|
||||
"new_builds": 0,
|
||||
"new_captures": 0,
|
||||
"new_clients": 0,
|
||||
"new_runs_by_reviewer": 0,
|
||||
"next_smallest_step": "Complete evidence/documentation handoff with immutable refusals and consumed statuses; no further graphics or retry under this review",
|
||||
"out_of_scope_observation": "results/phase-status.json is a historical intermediate snapshot of 8 runs84 captures; final report must use this reconciled ledger and avoid treating that intermediate file as final",
|
||||
"own_review_artifacts_only": true,
|
||||
"phase_I": {
|
||||
"GPU_completion": "NOT_PROVEN",
|
||||
"GPU_object_lifetime": "NOT_PROVEN",
|
||||
"GPU_render_input_equivalence": "NOT_PROVEN",
|
||||
"atomic_transaction_generation": "NOT_PROVEN",
|
||||
"complete_damage_stale_pixels": "NOT_PROVEN",
|
||||
"native_commit_present": "NOT_PROVEN",
|
||||
"presented_physical_buffer_identity": "NOT_PROVEN",
|
||||
"retained_scope": "Prior eight-run review retained; C6 held configure/timeout/ACK evidence does not identify native saved buffer or atomic generation. P1 sampled control remains PF; C7/C8/O1/G2 remain INCONCLUSIVE.",
|
||||
"shader_uniforms_halfpixel": "NOT_OBSERVED_DUE_EARLY_REJECTION",
|
||||
"status": "PARTIAL_EVIDENCE_ONLY",
|
||||
"whole_field_GPU_causality": "NOT_PROVEN"
|
||||
},
|
||||
"prior_fixture_findings": "C7/P2 retained first-eight review; C8 and O1/P2 retained early-receipt; no repairs/retries performed",
|
||||
"production": "NOT_AUTHORIZED; STEP20C gates remain open, partial evidence only",
|
||||
"pushed": false,
|
||||
"reviewer": "/root/remaining_run_admission",
|
||||
"schema": "remaining-runtime-final-independent-review-v1",
|
||||
"scope": "Exact G2 epoch1 refusal, cleanup, final ledger accounting and phase-I evidence boundaries; reuse prior first-eight-run and early remaining-run reviews",
|
||||
"source_edits": false
|
||||
}
|
||||
Loading…
Reference in a new issue