merge: reconcile retained-root metadata and unmount coverage
Integrate127aa7awith the newer property-specific Host contract from805323a. Preserve owned role and ARIA checks, callback and Behavior composition, and caller overrides for ordinary metadata. Carry the historical live-buffer unmount assertions into the current render-port revision test. Regression execution was waived; syntax and diff checks passed.
This commit is contained in:
commit
04a16eeb18
29
postmortem/2026-09-08-worktree-integration.md
Normal file
29
postmortem/2026-09-08-worktree-integration.md
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# Historical worktree integration
|
||||||
|
|
||||||
|
The September 5 benchmark worktrees contain competing repair attempts against
|
||||||
|
an earlier ETAF contract. Their changes were reconciled against current main
|
||||||
|
on September 8, rather than replacing the newer implementation.
|
||||||
|
|
||||||
|
- `127aa7a` preserves every existing root metadata value. Current main's
|
||||||
|
`805323a` already protects owned role and ARIA semantics, composes callbacks
|
||||||
|
and Behaviors, and allows caller values for ordinary metadata. Retain that
|
||||||
|
more precise implementation when reconciling the old attempt.
|
||||||
|
- `a206cfd` changes only the old metadata docstring to describe unrestricted
|
||||||
|
caller overrides. Retain the current docstring because owned semantic
|
||||||
|
conflicts are now rejected explicitly.
|
||||||
|
- The retained-root fixture's instance-scoping test is already present in
|
||||||
|
`tests/etaf-component-frontends-tests.el`. Its old role-override expectation
|
||||||
|
conflicts with the current owned-role contract and is superseded by the
|
||||||
|
existing rejection assertion.
|
||||||
|
- The three v1 unmount test attempts exercise the same lifecycle outcome.
|
||||||
|
Production no longer exposes the v1 fallback. Their live-buffer, unmounted,
|
||||||
|
zero-revision assertions are carried into the current render-port revision
|
||||||
|
contract test.
|
||||||
|
- The metadata baseline deliberately rejects every duplicate metadata key;
|
||||||
|
that blanket rule is superseded by the current property-specific policy.
|
||||||
|
- The missing-revision baseline deletes an old v1 test. Both that test and the
|
||||||
|
v1 production route have already been removed by the current SPI boundary.
|
||||||
|
|
||||||
|
The historical worktrees remain as evidence. They are not runtime dependencies.
|
||||||
|
Regression execution was explicitly waived for this integration; static checks
|
||||||
|
do not establish fresh behavioral or performance acceptance.
|
||||||
@ -497,7 +497,11 @@
|
|||||||
(should-error (etaf-render-port-revision buffer) :type 'error))
|
(should-error (etaf-render-port-revision buffer) :type 'error))
|
||||||
(cl-letf (((symbol-function 'ebox-surface-buffer-revision)
|
(cl-letf (((symbol-function 'ebox-surface-buffer-revision)
|
||||||
(lambda (_buffer) 0)))
|
(lambda (_buffer) 0)))
|
||||||
(should-error (etaf-render-port-revision buffer) :type 'error)))
|
(should-error (etaf-render-port-revision buffer) :type 'error))
|
||||||
|
(etaf-render-port-unmount buffer)
|
||||||
|
(should (buffer-live-p buffer))
|
||||||
|
(should-not (etaf-render-port-mounted-p buffer))
|
||||||
|
(should (zerop (etaf-render-port-revision buffer))))
|
||||||
(when (and (buffer-live-p buffer)
|
(when (and (buffer-live-p buffer)
|
||||||
(ebox-surface-buffer-mounted-p buffer))
|
(ebox-surface-buffer-mounted-p buffer))
|
||||||
(ebox-unmount-buffer buffer))
|
(ebox-unmount-buffer buffer))
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user