Interactive walkthrough

See the complete change.

Choose a scenario
Sprint card · record the request
docs/sprints/password_visibility.md
agent + local execution main · RWT-0042/C-01
Sprint ready Task started Checks passed Result complete

Current design

You: Add a Show password button. Preserve the login API and keyboard behavior, and add the relevant tests.

  1. Record the request

    Agent: I’ll carry that request through one sprint-bound Task and land the verified result locally.

    docs/sprints/password_visibility.md
    # Password Visibility [plan-ref: login/password-visibility/root]
    - [ ] Add the accessible control and focused tests. [ref: login/password-visibility/implement]
  2. Start the Task

    Agent: The sprint item is ready. I’m starting its Task and moving into the isolated worktree.

    $ ait task start --from docs/sprints/password_visibility.md#login/password-visibility/implement --intent "Add accessible password visibility control"
    task: RWT-0042
    change: RWT-0042/C-01
    next: cd .ait-worktree-links/rwt-0042
    
    $ cd .ait-worktree-links/rwt-0042
    working tree: RWT-0042/C-01
  3. Change and verify

    Agent: I’m changing only the login form and its focused tests inside the Task worktree.

    src/LoginForm.tsx
    + <button type="button" aria-pressed={visible}>
    +   {visible ? "Hide password" : "Show password"}
    + </button>
    
    tests/LoginForm.test.tsx
    + toggles password visibility with keyboard and pointer input
    
    $ npm test -- LoginForm
    3 tests passed

    Agent: The focused checks passed. I’m recording this exact revision before land.

    $ ait snapshot create --message "Add accessible password visibility control"
    Snapshot: SNP-7E21A4C8
  4. Complete the Task

    Agent: The verified Snapshot is ready. I’m landing the Task onto the local target line.

    $ ait task land RWT-0042/C-01 --local
    Status: landed
    Target: main (local)
    Task: completed
    Sprint item: completed
    Worktree: cleaned

    Agent: Done. The password control and focused tests landed locally; the Task and exact sprint item are complete.

Result: Change complete → Task closed → sprint item closed → worktree cleaned

Confirm regression

You: Password visibility stopped working from the keyboard after the last login-form change. Confirm the regression and fix it without changing login submission.

  1. Reproduce the failure

    Agent: I’ll reproduce the reported behavior and trace the responsible Snapshot before choosing the repair.

    $ npm test -- LoginForm
    1 failed: activates password visibility with Space
  2. Trace the responsible Snapshot

    Agent: The focused test fails on the keyboard path. I’m checking the changed source line now.

    $ ait blame src/LoginForm.tsx --line 84
    resolved snapshot: SNP-5C91D2B4
    path: src/LoginForm.tsx
    84 SNP-5C91D2B4 · Refactor login form actions
  3. Bind and repair

    Agent: Regression confirmed at SNP-5C91D2B4. I’ll bind the repair and its regression test to one exact sprint item.

    docs/sprints/password_keyboard_regression.md
    # Password Keyboard Regression [plan-ref: login/password-keyboard-regression/root]
    - [ ] Restore native keyboard activation and lock it with a regression test. [ref: login/password-keyboard-regression/repair]
    
    $ ait task start --from docs/sprints/password_keyboard_regression.md#login/password-keyboard-regression/repair --intent "Restore password-control keyboard activation"
    task: RWT-0043
    change: RWT-0043/C-01
    next: cd .ait-worktree-links/rwt-0043
    
    $ cd .ait-worktree-links/rwt-0043
    working tree: RWT-0043/C-01

    Agent: I’m restoring native button semantics and keeping the failing keyboard case as the regression test.

    src/LoginForm.tsx
    - <span role="button" onClick={toggleVisibility}>
    + <button type="button" onClick={toggleVisibility}>
    
    tests/LoginForm.test.tsx
    + activates password visibility with Space
    
    $ npm test -- LoginForm
    4 tests passed

    Agent: The original failure now passes with the existing login behavior intact. I’m recording the repaired revision.

    $ ait snapshot create --message "Restore password-control keyboard activation"
    Snapshot: SNP-9B42C1E6
  4. Complete the repair

    Agent: The regression repair is verified. I’m landing the Task onto the local target line.

    $ ait task land RWT-0043/C-01 --local
    Status: landed
    Target: main (local)
    Task: completed
    Sprint item: completed
    Worktree: cleaned

    Agent: Confirmed and fixed. Keyboard activation is covered by the regression test, and the repair landed locally.

Result: Regression repair complete → Task closed → sprint item closed → worktree cleaned