The plug's :live half (spec-0025 §4): inert for visitors, on only for an
editor who arrived with a launch link.
Per request, after Plug.Session:
- Start. A
GETwith?dialecto_edit=<token>is verified (DialectoInContext.LaunchToken: signature,start_by, origin). A good token becomes thedialecto_editcookie (HttpOnly; Secure; SameSite=Lax; Path=/,Max-Agetoexp) and a copy in the session, so LiveView can see it. Either way the answer is303to the request's own path and query without the parameter. - Each request. A valid cookie marks the response: a document
GETorHEADgets the codec's markers, the overlay loader,Cache-Control: private, no-store,Vary: Cookie,X-Robots-Tag: noindexand, when the app sends a CSP,frame-srcwidened to Dialecto. An invalid cookie is cleared along with the session copy; a missing one changes nothing. - Stop.
POST /__dialecto/stopclears both.
A visitor's request is passed on untouched. /__dialecto/context,
/overrides and /marking do not exist here: they answer 404.
Summary
Functions
@spec call(Plug.Conn.t(), DialectoInContext.Config.t()) :: Plug.Conn.t()