The GitHub Actions job "Backport Checks" on texera.git/formview-pr15a has 
succeeded.
Run started by GitHub user yangzhang75 (triggered by yangzhang75).

Head commit for run:
c66787a732c44f19f072a4f02c8ae794bca57fb4 / Yang Zhang <[email protected]>
feat(gui): open the Form View's result picker to everyone, one saved list of 
shown results

The picker was the author's alone and never offered the final step. Now
everyone sees it: in edit mode a toggle sets the default for all readers
(saved in the config); anyone else, a writer merely viewing included,
changes only their own view of the page, so a reader without write access
can choose too. Nothing is written for that; the choice lasts for the page.

The final steps are offered as well, under their plain name like any other
step. What shows is one saved list, shownResultIds (mengw15's shape):
absent, every final step shows, as on the canvas; once the author has
chosen, exactly the listed steps show, and an empty list means none, a
choice the previous two opposite-signed lists (featured / turned off) could
not store and could contradict each other on. The first choice starts the
list from the final steps at that moment, so nothing the author saw
disappears; the accepted cost is that a step which becomes final after the
author has chosen does not appear by itself. A definition whose only
content is that list, an empty one included, is still persisted.

Only edit mode unlocks the graph from this page, and only while no run is
in flight (the canvas rule, kept so that entering edit mode mid-run cannot
undo it). The lock is a root-level flag with writers that know nothing of
this page -- the execute service unlocks it when a run ends, the
computing-unit selector when it finds no run on the chosen unit -- so the
page clamps at the stream they all report to: whenever the flag turns on
while the page must stay locked, it is turned off again. The clamp runs a
microtask after the unlocking call, never inside it: that call enables
undo/redo after it emits and the stream still has other subscribers to
reach, so a nested disable would leave them on the stale "true". The
execute service flips the lock before it emits the new state; by the time
the clamp looks, the execution-state handler has re-applied the same rule
with the final state, so in edit mode the unlock stands. The step panel
follows the same rule (panelLive), not edit mode alone: the property frame
does not consult the lock before its own writes, so a step selected while
a run is in flight stays a read-only, inert mount even in edit mode and
turns live when the run ends. Done dismisses the step panel before leaving
edit mode, while the frame is still an editor: the only state in which the
property editor clears the "currently editing" marker co-editors see. A reader 
is
offered only steps whose result exists (final, or viewed on the canvas); a
listed step whose eye has gone stays offered in edit mode only, to be
taken off.

Saves go out one at a time, in order: two persists in flight at once can
land out of order and the older content would win, so the save behind the
Canvas switch waits for an autosave already on its way, and the page hands
over only once the queue has drained -- that save and any asked for while
it was in flight, the page staying interactive until the hand-over; each
request carries the workflow
as it was when the save was asked for, so the last one enqueued is the
latest. The drain outlives the page: the final save on the way out joins
the same queue instead of racing an autosave still in flight, and the
queue is closed after it. A failed save reports itself and does not stop
the queue. A save's response feeds back the server-owned metadata (the
timestamp) but never undoes a rename made while it was in flight, and
repaints nothing once the page is gone.

What has a result, and what the picker offers, follows the graph's shape
and names as well as the eye: a step deleted, disabled, given a downstream
link, or renamed (a co-editor's edit included) refreshes both at once from
the graph's own streams, not only after the debounced compilation.

The structure-locked preview no longer grows editing buttons: no link tools
on hover (remove, breakpoint), and a selected operator unfolds its state
and port counts but not its delete, chat and add/remove-port buttons. None
of them can act there, so they only suggested the preview could be edited.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01FVvP3ttj22f9LB4p9u2anY

Report URL: https://github.com/apache/texera/actions/runs/34676131879

With regards,
GitHub Actions via GitBox

Reply via email to