Skip to content

What happens when the Target page changes #18

Description

@stueydubs

Question

What happens when the Target page changes, and what is the Target when none was named?

Split out of #5, which defined a Project as holding many pages with exactly one Target page at a time, and then never said how that one is chosen or what changing it costs.

CONTEXT.md says a Target page has an Overlay, an Edits file beside it, a pending Batch that reconcile flips, an SSE connection, and a watcher over the served tree. All of that is written for a process that opens one page and exits.

Resolve:

  • What opens for webtweak or webtweak site/, where no page was named. "No detection" was settled on What a Project is #5, which rules out silently preferring index.html, yet the relationship claims exactly one Target page always exists.
  • Whether a Project may legitimately have no Target page, which is what a picker with nothing selected implies.
  • What happens to unsaved edits when the Target page changes. The reload rules already guard on dirty, and rule 3 forbids a reload while this session's Batch is still pending, because reconcile writes source before marking the Batch. A page switch is a new way into that same window.
  • Whether the watcher and the SSE connection are torn down and rebuilt per page, or span the Project.
  • Whether the viewport stamp and Batch identity still mean anything across a switch. One edits file per page, or one per project #9 owns the file layout; this ticket owns the session semantics.
  • Whether a page excluded from membership can still be opened directly, and what that implies for "a Target page is a page in the Project".

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    wayfinder:grillingDecision ticket resolved by conversation (HITL)

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions