alpha
Login
or
Join now
snowytrees.dev
/
project-manager
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Integrated repository, worktree, git stacker, and project manager
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
project-manager
/
src
/
project_manager
/
stacker
/
ops
/
at
master
14 files
Jordan Isaacs
style: ruff format pass over src/ and tests/
2mo ago
ffa76aaa
__init__.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
absorb.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
continue_abort.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
guard.py
Align pm stacker error-message hints with `pm` invocation User-facing error messages across ops referenced bare `stacker <verb>`, which isn't a valid command — users type `pm stacker <verb>`. Additions and fixes: - `ops/track.py::require_tracked`: dropped the non-existent `stacker track` suggestion; points at `pm stacker create` only. - Active-operation prompts in push / sync / split / reparent / rename / remove now use `pm stacker continue` / `pm stacker abort`. - `ops/guard` message rewritten: `pm stacker sync` or `pm stacker push` as the recovery path (repair dropped — it's rarely the right answer). - `cherry_pick/driver::format_progress` next-action hint mirrors the same invocation.
3 months ago
init.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
push.py
stacker: skip already-merged branches in `pm stacker push` Default-scope push from a leaf walked back through every tracked ancestor and force-pushed each one. Once an ancestor PR merged, its branch stuck around in the DB until `remove`, so subsequent pushes clobbered the merged ref on GitHub and rewrote the closed PR's body. Filter merged entries out of the resolved scope, log each skip, and short-circuit when the target itself is merged.
2 months ago
remove.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
rename.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
reparent.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
split.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
sync.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
sync_gates.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
track.py
style: ruff format pass over src/ and tests/ Mechanical run of `uv run ruff format src tests`. No behavior change — just line wrapping and trailing-comma normalization that the project hadn't been applying. Listed in `.git-blame-ignore-revs` (added next commit) so `git blame` skips this revision.
2 months ago
worktree.py
stacker: fix PR file-diff links + unify slot release lifecycle The stack-block renderer was emitting `<sha>..<sha>` Files-changed URLs (empty diffs) whenever a branch had local commits since init/sync, and generating 404s for root branches off trunk because the trunk SHA isn't in the PR's commit graph. Read the live branch ref via a new `live_heads` map populated from the canonical repo, and emit `<pr>/files` (no range) for trunk-rooted branches — same shape universe gitstack's `get_diff_link` produces. Replace the per-callsite ad-hoc release with a single `release_if_clean` predicate (worktree has no `tracked_changes` or `CHERRY_PICK_HEAD`) and an `acquired_for_op` context manager so push/sync/absorb release the slot uniformly on success, exception, and KeyboardInterrupt. `ops_slot.acquire` widens its except clause to `BaseException` so a Ctrl+C between the pool claim and the caller's try/finally no longer orphans the slot. The cherry-pick driver gets an outer try/finally + a guard around `advance_downstream` so an interrupt mid-queue still hands the in-flight slot back. `slot.resolve_slot` falls back to cwd-reuse when the pool is exhausted, so a user sitting in a slot of the same repo can still push without manually adding pool capacity. `pm check` splits stacker-owned slots into OPS_OWNED (mid-op, hold for `pm stacker continue`) and STALE_OPS (clean worktree, leaked); `--fix` releases the latter via the same `try_release_ops_slot` helper that `release_if_clean` uses, so the dirty-check policy lives in one place. The shared `git.detach_head` primitive replaces the open-coded `git checkout --detach HEAD` in `ops_slot.release` and `ops/remove`.
2 months ago