diff --git a/crates/oa-desktop/src/guide.rs b/crates/oa-desktop/src/guide.rs index 91f25a14..de7f6759 100644 --- a/crates/oa-desktop/src/guide.rs +++ b/crates/oa-desktop/src/guide.rs @@ -320,9 +320,9 @@ fn article(topic: Topic) -> Article { walkthrough( "Move work between performers", &[ - "Finish or cancel property and source edits, then drag an Activity or Function body in Architecture · allocated work. Aim at exposed performer space. Read the highlighted destination and status before releasing; release outside the canvas or press Escape to cancel.", + "Finish or cancel property and source edits, then drag an Activity or Function body in Architecture · allocated work. Aim at exposed performer space, including a collapsed performer's header. Read Destination above the canvas and the outlined target before releasing; release outside the canvas or press Escape to cancel.", "The move preserves work ownership and identities. A uniformly assigned work group moves its leaves together; a group distributed across performers asks you to choose a leaf. Role responsibilities remain explicit: an outward drag that would leave a role-derived performer explains why it cannot remove that responsibility.", - "Make room when headers, labels or other cards would overlap. Move the view or zoom in if the work and destination are not readable. A refused drop keeps the model and history unchanged. One Undo reverses an accepted assignment and placement together; Save all writes the corresponding source changes.", + "Make room when work cards would overlap, and move the view or zoom in if the moving work is not readable. The destination name stays above the canvas while the target outline stays fixed during the drag. A refused drop keeps the model and history unchanged. One Undo reverses an accepted assignment and placement together; Save all writes the corresponding source changes.", ], ), walkthrough( diff --git a/docs/language.rst b/docs/language.rst index e1f62110..59ffcb18 100644 --- a/docs/language.rst +++ b/docs/language.rst @@ -2039,13 +2039,17 @@ operation hides presentation detail without deleting the children. In an Allocation view, dragging an Activity or Function body MAY combine a performer change with diagram placement. The preview MUST identify the -destination and preserve readable work and performer labels. A clean click -selects without applying unrelated drafts. A refused work press with an unapplied -property draft MUST preserve its text, caret and focused editor. An accepted drag is one atomic -model/source/history transaction: semantic ownership and work identities are +destination and preserve readable work and destination identity. Destination +identity is shown outside the canvas, independently of explanatory or refusal +text. The outlined target's hit region remains fixed throughout the gesture; +feedback MUST NOT obscure the work or change its pointer-relative placement. +A clean click selects without applying unrelated drafts. A refused work press +with an unapplied property draft MUST preserve its text, caret and focused +editor. An accepted drag is one atomic model/source/history transaction: +semantic ownership and work identities are preserved; only leaf direct Allocation relations, their own retired routes and -the affected view geometry change. Existing Allocation identities are retained on reassignment. Role -realizations and assignments MUST NOT be silently changed. Uniform work groups +the affected view geometry change. Existing Allocation identities are retained +on reassignment. Role realizations and assignments MUST NOT be silently changed. Uniform work groups may move their leaf responsibilities together; ambiguous or distributed groups and changes requiring collateral record edits MUST be refused with an explanation. Moving outside performer regions removes direct assignment only when the