Skip to content

featurebranch#3

Merged
Neokil merged 16 commits into
mainfrom
v4
Jun 5, 2026
Merged

featurebranch#3
Neokil merged 16 commits into
mainfrom
v4

Conversation

@Neokil
Copy link
Copy Markdown
Owner

@Neokil Neokil commented May 6, 2026

No description provided.

@Neokil Neokil changed the title add new ideas v4 - wip May 6, 2026
Neokil and others added 15 commits May 8, 2026 13:34
When no base branch is configured, WorktreeAdd previously fell back to
HEAD (the currently checked-out branch). It now resolves origin/HEAD via
DefaultBranch() so worktrees are always forked from the repo default branch.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When any job was active, all ticket action buttons were disabled via a
global isRunning flag. Buttons are now disabled only for the ticket that
is currently in running state, matching the existing behaviour of the
rerun/cleanup/move buttons.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The previous fix used selectedSummary.status === "running", but the
server never broadcasts a ticket_updated event with status "running"
during execution — it only broadcasts after the job completes (when the
status is "waiting", "done", etc.). So that condition was never true.

The busy field is updated immediately via SSE job events when a job is
queued or running for a specific ticket, making it the correct per-ticket
signal. Buttons are now disabled only while the selected ticket itself
has an active job, leaving all other tickets' buttons fully interactive.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Track which ticket triggered an action (activeJobTicketKey) so the
detail panel's isRunning flag is scoped to that specific ticket only.
Also reset queued/running jobs to failed on server startup to prevent
stale job state from permanently disabling buttons after a restart.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…Id ref

The Cleanup button was permanently disabled after clicking Accept because
of a race condition: the server processes move_to_state actions nearly
instantly, so the job-done SSE event arrived before React's useEffect
had updated activeJobIdRef.current with the new job ID. The handler
check evt.job_id === trackedJobID failed silently, leaving activeJobId
set forever.

Fix by replacing isRunning (derived from activeJobId + ref) with
selectedSummary.busy for all button disabled states in TicketDetailPanel.
The busy flag is updated directly in applyTicketEvent on every job event,
with no ref indirection and no race condition.

Also updates the mock provider comment to reflect its actual purpose
(simulating realistic latency) now that the race condition is fixed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The default discovery script now fetches open GitHub Issues (via `gh issue
list`) alongside Shortcut stories. A GITHUB_REPOS array at the top of the
script makes it easy to adjust which repos are queried. Both sources are
optional: Shortcut is skipped when SHORTCUT_API_TOKEN is unset; GitHub is
skipped when gh is not installed or not authenticated. The discover command
runner is switched from /bin/sh to /bin/bash so the array syntax works.

The fetch-ticket prompt is updated to branch on the ticket-number prefix:
GH-N tickets use `gh issue view` and a gh-<n>-<title> branch name;
SC-N tickets continue to use `short story` and the existing sc-<id>-<title>
format.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add GitHub Issues to default ticket discovery
…ctories-created-in-autopr-folder

Remove empty per-ticket directories created in .auto-pr folder
@Neokil Neokil changed the title v4 - wip featurebranch Jun 5, 2026
@Neokil Neokil marked this pull request as ready for review June 5, 2026 09:28
@Neokil Neokil merged commit 2ccc241 into main Jun 5, 2026
6 checks passed
@Neokil Neokil deleted the v4 branch June 5, 2026 09:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant