Fix fork-skip guards for local test runs (#524 rebased, ssh:// origin form folded in) (#563)

* Fix fork-skip guards for local test runs

The fork skip read GITHUB_REPOSITORY with an upstream fallback, so local runs on a fork always ran the upstream-only guards. Share one helper that checks the origin remote when the variable is unset. Fixes #496.

* test: accept the ssh:// origin form in the upstream-checkout helper

An upstream clone whose origin is ssh://git@github.com/MadsLorentzen/ai-job-search(.git)
must keep running the placeholder guards; the helper only knew the https and
scp-style forms. Folded in at maintainer rebase per the #524 review.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

---------

Co-authored-by: Omarinho12345 <omarottelli720@gmail.com>
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
authored and GitHub committed 2026-10-15 11:59:57 +02:00
1 parent c922b0c757
commit 52f0b2719b
5 files changed
+189 -7

No files matched your search

+10
View File
@@ -29,6 +29,16 @@ per-file diff commands.
### Fixed
- **Fork-skip guards no longer run on a fork during a local test run** (`tests/_upstream.py`,
`tests/test_placeholder_integrity.py`, `tests/test_setup_command.py`,
`tests/test_upstream_checkout.py`) - the fork skip read
`os.environ.get("GITHUB_REPOSITORY", UPSTREAM)`, so with the variable unset a local
run fell back to upstream and the placeholder guards fired on every personalized fork,
leaving its suite permanently red after `/setup`. The three skips now share one helper:
`GITHUB_REPOSITORY` decides when set, otherwise the checkout's `origin` remote is matched
against the upstream repo (https and ssh forms, optional `.git` suffix), and an
undeterminable checkout assumes upstream. Tests only, no `framework_version` bump.
- **`linkedin-search` and `freehire-search` reject invalid `--format` flags with `BAD_ARG`** (#555,
`.agents/skills/linkedin-search/cli/src/cli.ts`, `.agents/skills/freehire-search/cli/src/cli.ts`) -
unrecognized `--format` flags previously fell back silently to `"json"` with exit code 0, masking