You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(outrider two-tier): make drafter/refiner install actually run on target repos
Addresses review feedback on #47:
* Drafter `uses: ./` rewrite (blocking). The @v1 drafter references the
action locally; on a customer repo that resolves to their root (no
action.yml). _render_drafter_workflow now rewrites `uses: ./` →
`uses: remyxai/outrider@v1`, guarded like the interest-id rewrite.
* Runner declares the refiner's dispatch inputs (blocking). The refiner
dispatches outrider.yml with mode/publish/start-from-ref/lead-content/
staged-synthesis, which GitHub rejected as unknown workflow_dispatch
keys. _render_local_workflow now declares + forwards all five; defaults
match the action's own so scheduled/manual runs are unchanged.
* Document the fork schedule caveat (note). Two-tier PR body + plan output
now note that `schedule:` triggers don't self-run on forks; wires up the
previously-unused PR_TITLE_TWO_TIER.
Also fixes _fetch_outrider_template passing a stray leading "api" arg to
_gh_api_json (which already prepends `gh api`), which produced
`gh api api repos/...` and broke every two-tier fetch.
Refiner over-selection (note 4) is already resolved upstream in
remyxai/outrider (drafter-known-branch enumeration) and propagates via the
live @v1 fetch — no CLI change needed.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: remyxai/cli/outrider_local.py
+71-4Lines changed: 71 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -307,6 +307,31 @@ def _render_local_workflow(
307
307
description: 'Optional exact arxiv_id (e.g. 2402.02347v3). Bypasses selection and implements this specific paper. Use for reproducible re-runs.'
308
308
required: false
309
309
default: ''
310
+
# The five inputs below let outrider-weekly-refine.yml (the refiner)
311
+
# dispatch this runner: it pins the picked draft branch (start-from-ref),
312
+
# pipes a gap analysis in (lead-content), turns on staged synthesis, and
313
+
# selects mode/publish. Defaults match the action's own, so scheduled and
314
+
# manual runs are unchanged.
315
+
mode:
316
+
description: 'Run mode. recommend (default) runs the full scout→implement flow; the refiner dispatches recommend against a pinned paper + start-from-ref.'
317
+
required: false
318
+
default: 'recommend'
319
+
publish:
320
+
description: 'pr (default) opens a PR/Issue; branch produces a fork branch without opening one (drafter behavior).'
321
+
required: false
322
+
default: 'pr'
323
+
start-from-ref:
324
+
description: 'Optional base branch to build on top of (the refiner passes the picked drafter branch here). Empty = start from the default branch.'
325
+
required: false
326
+
default: ''
327
+
lead-content:
328
+
description: 'Optional inline markdown (e.g. a gap analysis) fed to the agent as leading context. Used by the refiner dispatch.'
329
+
required: false
330
+
default: ''
331
+
staged-synthesis:
332
+
description: 'Enable the multi-pass staged-synthesis flow (the refiner sets true). Empty/false = single-pass.'
333
+
required: false
334
+
default: 'false'
310
335
claude-timeout:
311
336
description: 'Wall-clock seconds for the Claude Code agent calls (preflight + implementation). Raise for very large monorepos; lower to cap cost.'
312
337
required: false
@@ -362,6 +387,14 @@ def _render_local_workflow(
362
387
search-method: ${{{{ inputs.search-method }}}}
363
388
pin-arxiv: ${{{{ inputs.pin-arxiv }}}}
364
389
claude-timeout: ${{{{ inputs.claude-timeout }}}}
390
+
# Forwarded so outrider-weekly-refine.yml can dispatch a refinement
391
+
# run (mode + start-from-ref + lead-content + staged-synthesis) and
392
+
# so the drafter/manual runs can pick pr vs branch publishing.
0 commit comments