Skip to content

Skip an ambush when the manuscript is already active #8

Description

@yo4e

Context

Found during real use of v1.1.0.

A drafting session completed after reaching the 300-keystroke quota, but writing continued naturally. While the manuscript was still being actively worked on, the next scheduled ambush fired and opened/started DRAFTED again.

This is consistent with the current scheduler: discharge ends only the current session; later scheduled ambushes for the same day remain pending.

Problem

DRAFTED's goal is to make the writer touch the manuscript. If the writer is already on the configured manuscript when an ambush time arrives, interrupting them with a new draft is counterproductive.

Proposed behavior

At an ambush time, before starting a new drafting session:

  • check whether the configured target manuscript is already open and active in Chrome
  • if it is already the active tab, treat that ambush as satisfied / consumed
  • do not open a duplicate target tab
  • do not show the DRAFTED intro overlay or HUD
  • leave the writer alone and preserve their flow

Possible copy/internal state name: MISSION ALREADY IN PROGRESS (no UI required for the first implementation).

Scope for a future update

Keep the first version simple: "target tab is currently active" is enough. A later enhancement could consider recent typing/activity on the manuscript, but that is not required for the initial fix.

Acceptance criteria

  • An ambush fires while the target manuscript tab is already active → no visible interruption occurs.
  • That ambush counts as one of the day's scheduled ambushes rather than being rescheduled immediately.
  • If the target tab is open but not active, existing DRAFTED behavior remains unchanged unless we deliberately decide otherwise in a later design pass.
  • Manual TEST DRAFT NOW behavior is unchanged.

Implementation can wait until several real-use improvements have accumulated for the next update.

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions