Verify first-run onboarding from a clean environment: install, configure, doctor and a first run (LAUNCH-A)
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- github, python
- Ambito
- devops, documentation, testing
Direzione di ricerca
Start with AGENTS.md, docs/usage.md, docs/configuration.md, tests/AGENTS.md and the security-boundaries page from #257. Review README.md, docs/README.md, doctor.py, config.py, the existing CI install job from #256, and tests before defining the guide and smoke procedure. Done means the guide, tested starter configurations, clean-room steps and automated install smoke meet the listed acceptance criteria; a maintainer must perform the credentialed real run and post its friction log.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Artifact: implementation-ready issue (LAUNCH-A of the Public Alpha EPIC #255). This issue body is the authoritative copy; the working copy was drafted in the maintainer's local session scratchpad and is not kept elsewhere. Baseline: main at 711ff09, read on 2026-10-21 (UTC). Planning created this issue only: no code, branch or PR.
Parent: #255 · Priority: P0 · Gates: 1 (Fresh installation), 2 (First successful run) · Blocked by: #256, #257 [native] · Blocks: #261, #262 [native]
Summary
A developer who has never seen AutoForge can install it, configure it, diagnose their environment and run a first workflow on a repository of their own, using only the public documentation. This issue writes that path, fixes the first-run obstacles it finds, and proves it with a clean-room procedure.
Verified current state (711ff09)
- Install only works inside the AutoForge clone. README "Installation" is
uv sync(editable) anduv run autoforge --help(README.md:207-213); the Quick start says to runuv run autoforge …"from a checkout of the repository the issues belong to" (README.md:219-240). No document explains how to run AutoForge against another repository; no doc mentionsuv tool,pipxor--project. (#256 fixes packaging and chooses the install channel.) doctorfails on a fresh repository. Its "default branch requires checks" row (doctor.py:141) fails unless an active ruleset or classic branch protection requires a status check on the default branch, naming those insafety.required_checks(default["ci"], the aggregate check of AutoForge's own CI); an empty list does not make the row pass. The same key feeds the merge gate's required-check and check-definition verification (safety.verify_check_definition).doctoris Quick start step 1.- Defaults need two vendors.
analyze_execute/fixrun Claude Code with modelfable; every review round,replan_reexecuteandupdate_epicrun OpenCode withopenai/gpt-5.6-*(config.py:868-904). There is no starter configuration and noinitfor REMOTE mode (local initcreates a LOCAL feature file only).autoforge.yamlis gitignored;autoforge.example.yamlis long and has stale lines (:111-112,:228). runrequires--epicand--issue(autoforge run --help), and no document says what the EPIC or the issue must contain, or that both must be in the checkout's own repository (cross-repository runs are refused).- What exists:
doctor(with remedies for many rows),run --dry-run("no subprocess, no gh call, no state file"),status,resume, a detaileddocs/usage.mdanddocs/configuration.md, and LOCAL mode (docs/local-mode.md) which needs no GitHub at all.
Scope
- A getting-started guide (for example
docs/getting-started.md), written for a stranger, in order:- prerequisites by name and minimum version, linking #256's compatibility matrix (OS, Python,
uvor the chosen installer,git,ghand its authentication with the scopes from #257, Claude Code and OpenCode logins or keys, and who pays for model calls); - installing AutoForge with the channel #256 chose, so that
autoforgeruns from any directory; - preparing a throwaway repository you control (not a public repository where strangers can comment on the issue or PR the agent reads; see #257's security page): what the EPIC and the issue are for, what they should contain, a copy-paste example of each, the branch-protection / required-check expectation, and the
.gitignoreor.git/info/excludeentries for.autoforge/andautoforge.yamlso runtime state, logs and a local configuration are never committed; - a minimal working configuration (item 2);
autoforge doctor, with what each failing row means for a first run, and how to record the CLI versions it reports (Gates 1–3 record them);run --dry-run, then a realrun, thenstatus, then whatREADY_FOR_MERGEandBLOCKEDlook like and what to do next (a human merges);- the commonest first-run failures with their exact messages and fixes (item 4).
- prerequisites by name and minimum version, linking #256's compatibility matrix (OS, Python,
- Starter configuration(s) under an
examples/directory (or equivalent), each commented and loaded by a test so it cannot rot: (a) the default two-provider routing made explicit; (b) evaluate and, if it works, add a single-provider starter (for example Claude Code for every phase), stating plainly that its review is then not cross-vendor. Do not changedefault_config(). - The first-run
doctorexperience. Decide, with the maintainer, how a fresh repository passes or knowingly skips the "default branch requires checks" row (for example: the guide shows how to add a ruleset requiring a check; or the starter configuration setssafety.required_checksto the check the user's own CI produces; or the row explains that it matters only to the merge gate). Whatever is chosen must not weaken the merge gate:READY_FOR_MERGEandMERGEkeep their checks. - Common failure messages. This issue owns setup and first-run diagnostics: everything up to a run that exists (install, configuration,
doctor, credentials, the firstrun --dry-runand the start of the firstrun). Everything once a run exists (a state directory, a phase, a stop) is #260's; link it rather than repeating it. Collect the messages a first run actually hits (missing CLI, unauthenticatedghor agent CLI, unknown model, missing required check, cross-repository URL, dirty checkout, lock held, permission request per #258 if merged) and make sure each is in the guide with its fix. If a message is itself misleading, fix it in this issue when the change is small; otherwise file it as a sub-issue of #255. - The clean-room procedure (
docs/page or a section of the guide), reusable by Gates 1 and 2 at the release candidate: the environment to start from (fresh VM, container or user account; no prior AutoForge, uv cache, config or state), the exact steps, what to capture (redacted), and the friction log format. - An automated install smoke that runs the install-and-diagnose half of the procedure in a clean container or fresh virtual environment, offline and without credentials: install by the documented method,
autoforge --version,autoforge doctor(asserting the rows that need no credential),run --dry-runon a fixture. Extend the install job #256 adds to CI rather than adding a second one; if it does not fit theciaggregate's constraints, provide it as amaketarget documented indocs/development.md. - If the EPIC decides to promote LOCAL mode as a first-run path (condition C7), the guide includes it and the clean-room run covers it.
Acceptance criteria
- The getting-started guide exists and is linked from
README.mdanddocs/README.md. Every offline command in it (install,--version,--help,doctorrows that need no credential,run --dry-runon a fixture) was executed on the branch by the implementer, transcript in the PR, redacted; every credentialed command (authenticateddoctor, a realrun) was executed by the maintainer, with the result recorded on this issue. - Every starter configuration is loaded and validated by a test.
- On a fresh repository that follows the guide,
doctoreither passes or reports only rows the guide explicitly tells the user to expect, with no change to the merge gate's checks. - The clean-room procedure is documented, and one clean-room run following only the published docs on the PR head has been performed, through install,
doctor,run --dry-runand a first realrunon a throwaway repository toREADY_FOR_MERGE(orBLOCKEDwith the guide explaining why), with the OS, Python and CLI versions recorded. Its friction log is posted on this issue; every friction point is fixed or documented. - The automated install smoke passes.
-
make checkpasses.
Out of scope
- Packaging and the install channel itself (#256); the README redesign (#262); the full troubleshooting guide (#260); the public demo (#261).
- Changing provider defaults, adding an interactive
initwizard, or Windows support.
Executor and maintainer actions
Agent-implementable: the guide, starter configurations, the procedure, the automated smoke, small message fixes. Maintainer action: the first real run of the clean-room procedure needs real agent logins and model spend; the maintainer (or a volunteer) performs it and posts the friction log. Gate 2 at the release candidate additionally requires someone other than the maintainer.
Notes for the implementer
Read AGENTS.md, docs/usage.md, docs/configuration.md, tests/AGENTS.md and #257's security-boundaries page first. Tests never call a real agent or GitHub; the clean-room real run is the maintainer's. Do not commit autoforge.yaml (it is gitignored and maintainer-local).
- Lingua principale
- Python
- Stelle
- 0
- Fork
- 0
- Merge medio
- 5h 42m
- PR unite (30g)
- 110
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di iceboundrock/AutoForge
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
iceboundrock/AutoForge#458 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 3/5 Mezza giornata Idoneità per principianti 66/100
iceboundrock/AutoForge#457 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 4/5 1-2 giorni Idoneità per principianti 22/100
iceboundrock/AutoForge#456 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
iceboundrock/AutoForge#455 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
iceboundrock/AutoForge#454 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di iceboundrock/AutoForge
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
area:docs documentation effort:M ready-for-agent
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
mczielinski/ob-analytics#423 ·
I maintainer di solito rispondono entro 1 giorno
-
infra
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 3 giorni
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
vllm-project/vllm-ascend#21033 ·
I maintainer di solito rispondono entro 1 giorno