Fastlane
Purpose
Use this workflow to turn a bounded worker model into a fast implementation
lane while the parent agent stays responsible for architecture, acceptance
criteria, proof integrity, integration, and final verification.
Worker lanes are excellent for quickly producing a patch when the task is
bounded and the context is complete. Treat them as high-speed implementers, not
as the final gate.
Operating Rule
Delegate construction; centralize judgment and integration.
The parent protects its cognitive budget. A frontier parent may run on a
premium high-reasoning model, but it should spend that reasoning on translating
the human idea into mission, architecture, lane contracts, proof design,
integration, and synthesis. It should write routine code only when the edit is
smaller than delegation overhead or when it is repairing an integration gap
found during final proof.
The parent agent must:
- choose whether model control or full-history fork matters more;
- choose the smallest capable worker lane for the task;
- take a baseline snapshot before delegation;
- define the exact mission and write scope;
- include all critical context and constraints;
- provide exact verification commands, not guessed script names;
- require causal proof, not just "tests passed";
- monitor for scope drift while the worker works;
- inspect the returned patch;
- integrate the returned work into the surrounding system;
- perform wiring and hardening before reporting acceptance;
- run independent verification;
- harden gaps before accepting.
Repository-Agnostic Rule
Fastlane is universal. Never assume a specific repository, framework, artifact
name, proof format, docs layout, branch policy, or release ritual.
Before delegation, infer the current repo's conventions from local files and
commands. Use repo-native names such as its test scripts, proof artifacts,
changelog, release notes, checkpoint docs, snapshots, screenshots, or generated
outputs only after discovering them locally.
If the repo has no docs, changelog, checkpoint, scorecard, or proof artifact
convention, do not invent one as part of the fastlane task unless the user
explicitly asks. Instead, report what was verified and what artifact sync would
be useful.
Glossary
- Worker lane: a bounded sidecar model tasked with construction, audit,
research, or support work under a parent-owned contract.
- Spark: short operational name for the
gpt-5.3-codex-spark research
preview lane, used for near-instant compact iteration when available.
- Coder lane:
gpt-5.3-codex for substantial bounded code-only work when
Spark is not needed.
- xhigh / high / medium / low: reasoning effort tiers. Use the lowest tier
that can satisfy the proof contract without increasing parent rework.
- fork_context: spawn flag controlling whether the worker inherits the
parent's full conversation history.
true inherits and forces parent model
settings; false allows explicit model/effort overrides but requires the
parent to embed all needed context in the prompt.
- Proof artifact: any repo-native file that records observable runtime
behavior: log, screenshot, JSON status file, generated output snapshot.
- Artifact Sync Gate: the parent's final pass to align repo-native public
docs, changelog, or evidence files with the verified behavior, run only
when those conventions already exist or the user explicitly asks.
Living Skill Loop
Fastlane is a living skill. When the parent agent uses Fastlane several times
in a row, or sees the same failure mode more than once, it should look for
improvements to the universal workflow.
Propose a Fastlane skill update when a pattern is:
- repeated across multiple delegated tasks or likely to recur in other repos;
- about delegation quality, model/effort selection, proof integrity, runtime
preflight, artifact sync, handoff format, ownership boundaries, or
anti-false-positive checks;
- expressible without project-specific names, paths, domains, or one-off
commands.
Do not update the skill for:
- a repo-specific convention that belongs in that repo's docs;
- a one-off bug fix;
- a preference that has not improved proof or reduced rework;
- a memory that only makes sense with private conversation context.
Update protocol:
- Name the reusable lesson in one sentence.
- Explain why it belongs in Fastlane rather than the current repo.
- Propose the smallest universal wording change.
- If the lesson is already covered by existing wording, edit it. Do not
append a duplicate.
- Apply the update only if the user explicitly asks, or if the current
instruction already authorizes updating the skill.
- At most one skill update proposal per Fastlane session, to prevent drift.
- Validate frontmatter, template consistency, and absence of repo-specific
names before reporting completion.
When To Use
Use this skill when the user asks to:
- use Codex Spark, GPT-5.3-Codex, a worker, subagent, xhigh, high, medium, or
low for fast implementation;
- test a delegated implementation workflow;
- split implementation from verification;
- make a bounded code change where the parent can continue as quality gate.
Avoid this workflow when:
- the task is unclear or exploratory only;
- the next step is immediately blocked on analysis that the parent should do
locally;
- the write scope cannot be isolated;
- a false positive would be expensive and no runtime proof is possible.
Model And Effort Selection
Choose the worker by lane fit first, then reasoning effort.
- Use
gpt-5.3-codex as the default coder lane for bounded code-only
implementation, debugging, focused refactors, tests, and repo-native patches.
- Use
gpt-5.3-codex-spark when near-instant compact text/code iteration
matters and Spark is available.
- Use
gpt-5.4 low or gpt-5.4-mini medium for low-risk mechanical support
lanes where speed and cost matter.
- Use
gpt-5.4 high or gpt-5.5 high for audit lanes, proof-gap hunting, and
edge-case review.
- Keep
gpt-5.5 high/xhigh primarily as the parent or rare frontier worker for
ambiguous, long-context, high-stakes synthesis.
Use medium or low only when all of these are true:
- the task is bounded and mechanical;
- the write set is small and explicitly owned;
- the existing pattern is clear;
- acceptance criteria are observable;
- the parent can cheaply inspect and rerun verification;
- the worker is not being asked to make product, architecture, model-selection,
or proof-policy decisions.
Low and medium are cost-control lanes, not context-control lanes. Give them the
same full task context, baseline dirty state, file ownership, forbidden
surfaces, proof criteria, and final handoff requirements as high or xhigh.
Reduce task size, not instruction quality.
Escalate effort or model when:
- the worker must infer missing architecture;
- the patch crosses ownership boundaries;
- the proof path is subtle or easy to fake;
- the first attempt produces broad rewrites, guessed commands, or vague
handoff claims;
- parent review finds a causal proof gap.
Never change the parent/global model mode to test a fast lane. Model/effort
experiments happen only inside the sidecar worker.
Delegation Protocol
Before spawning the worker
- Inspect enough local context to write a precise task.
- Capture a baseline:
git status -sb, relevant focused diff/grep, and known
command names from package.json or repo scripts.
- Decide spawn mode:
- To force a specific worker model or effort, spawn with
fork_context: false and embed full task context in the prompt.
- When full conversation history matters more, use
fork_context: true
and omit model/effort overrides because forked agents inherit the parent
settings.
- State the implementation goal in one paragraph.
- Give explicit file ownership and forbidden surfaces.
- Tell the worker it is not alone in the codebase and must not revert unrelated
changes.
- Define acceptance criteria in terms of observable proof.
- Require final handoff with files changed, commands run, proof artifacts,
exact proof fields, model/effort rationale, limitations, and concerns.
Parent Integration Loop
- Read the changed files or focused diff.
- Compare the result against the baseline: distinguish files the worker actually
changed from files already dirty before delegation.
- Integrate the patch with adjacent code paths the worker did not own: CLI
wiring, imports, registry entries, docs hooks, fixtures, schemas,
adapters, generated-contract surfaces, or artifact plumbing when those
are required for the feature to be usable.
- Harden obvious gaps immediately: path safety, compatibility fallbacks,
error handling, deterministic artifacts, anti-false-positive checks, and
contract drift guards.
- Look for false positives where the test may not exercise the new path.
- Run unit tests yourself.
- Run runtime or integration proof yourself.
- Inspect generated proof artifacts, screenshots, logs, or browser output.
- Add any final hardening found by proof inspection.
- Close the worker once accepted or superseded.
The parent should not hand back a raw worker patch when local wiring or
hardening is clearly needed. A Fastlane is complete only after the parent has
converted the worker's slice into an integrated, verifiable repo state.
When To Abort vs. Iterate
Discard the patch and re-delegate with smaller scope (do not try to salvage)
when any of these appear:
- gross ownership violation (worker wrote outside declared owned files);
- fabricated proof (claimed artifacts that do not exist or use the legacy
path);
- broad unauthorized rewrite of files the patch was not supposed to touch;
- handoff claims pre-existing dirty files as newly created;
- repeated guessed command names after the parent supplied the real ones.
Iterate (ask the worker to refine) when:
- ownership was respected but proof signal is weak;
- wiring is missing but the core slice is correct;
- a single anti-false-positive check needs adding.
While the worker is still running
- Do useful non-overlapping review setup locally.
- If the worker runs longer than expected, inspect
git status, focused
diffs, or proof artifacts without redoing its assigned implementation.
- Stop or redirect only if it touches forbidden surfaces, changes ownership
boundaries, or appears to be solving the wrong problem.
Proof Contract
For every delegated feature, define two paths whenever possible:
- Legacy path still works.
- New path is exercised and leaves a different observable mark.
Examples:
- Generated smoke path: proof contains
runtime_smoke.source=generated.
- Fallback smoke path: proof contains
runtime_smoke.source=generated-fallback and fallback_generated=true.
- Cache miss path: log/proof contains
cache=miss.
- Migration path: DB schema version changes and migrated data is still
readable.
If existing behavior can mask the new path, require a force flag or
deterministic setup that makes the new path unavoidable.
When there is no runtime path
For pure refactor, docs, or typing tasks where no runtime mark exists,
substitute the runtime contract with a structural diff snapshot: a
before/after capture of a public signature, exported API surface, fixture
shape, or generated contract file. The structural snapshot replaces
"observable runtime mark" as the causal proof.
Anti-False-Positive Rules
Do not accept:
- "I removed X" if the generator recreates X before the relevant stage.
- "Unit tests cover it" when the claim is about runtime behavior.
- "Smoke passed" if the smoke used the old path.
- "Smoke failed" without checking whether the app/server/runtime prerequisite
was running.
- A guessed command name when the repo has a different script in
package.json.
- A handoff that claims already-dirty files were newly created by the worker.
- Docs claiming success before proof artifacts confirm it.
Ask the worker to explicitly answer:
- What proves the new code path ran?
- Which proof file contains it?
- Which field, log line, status, or output confirms it?
- What could still be masking a false positive?
- Which commands were copied from repo scripts, and which were inferred?
- Which files were already dirty before it started?
- Which model and effort were used, and why was that lane chosen?
- Did this run reveal a reusable Fastlane workflow improvement the parent
should consider?
Command And Runtime Preflight
Fastlane tasks often fail for boring reasons: wrong script name, no dev
server, stale port, missing env, or a worker assuming a runtime is alive.
Before delegation, the parent should give the worker:
- exact command names copied from
package.json, Makefile, task runner, or
docs;
- required services and ports, for example
npm run dev serving
http://127.0.0.1:7777;
- whether the worker may start background services or should leave runtime proof
to the parent;
- expected artifact paths for browser screenshots, logs, or proof JSON.
If a runtime command fails, the worker must classify it:
code-failure: the patch broke behavior;
environment-blocker: service, port, credential, or external runtime
missing;
command-error: command name or invocation was wrong.
The parent still reruns the final runtime proof independently.
Prompt Template
Read references/delegation-template.md when preparing a worker task. It
contains a reusable prompt with context, ownership, acceptance criteria,
verification, and handoff sections.
Use the template as a starting point, then fill in project-specific paths,
commands, proof fields, and risk notes.
Case Notes
Field-tested lessons from real Fastlane runs are kept in
references/case-notes.md. Read them when designing a new delegation,
especially for generator work, runtime/browser proof, or medium-tier worker
runs. The examples there are illustrative; adapt to the artifacts native to
the current repo.
Parent Gate Checklist
Group A: Pre-acceptance (mandatory before any sign-off)
Group B: Integration
Group C: Post-acceptance (conditional)
1---2name: fastlane3description: Use when delegating fast implementation work to a bounded Codex worker lane such as GPT-5.3-Codex, GPT-5.3-Codex-Spark, or a GPT-5.4 low/mini lane, especially when a high-reasoning parent should preserve cognitive budget for architecture, synthesis, proof, integration, and final acceptance. Treat Fastlane as a living universal workflow: after repeated use, propose skill updates when reusable delegation lessons emerge.4---56# Fastlane78## Purpose910Use this workflow to turn a bounded worker model into a fast implementation11lane while the parent agent stays responsible for architecture, acceptance12criteria, proof integrity, integration, and final verification.1314Worker lanes are excellent for quickly producing a patch when the task is15bounded and the context is complete. Treat them as high-speed implementers, not16as the final gate.1718## Operating Rule1920**Delegate construction; centralize judgment and integration.**2122The parent protects its cognitive budget. A frontier parent may run on a23premium high-reasoning model, but it should spend that reasoning on translating24the human idea into mission, architecture, lane contracts, proof design,25integration, and synthesis. It should write routine code only when the edit is26smaller than delegation overhead or when it is repairing an integration gap27found during final proof.2829The parent agent must:3031- choose whether model control or full-history fork matters more;32- choose the smallest capable worker lane for the task;33- take a baseline snapshot before delegation;34- define the exact mission and write scope;35- include all critical context and constraints;36- provide exact verification commands, not guessed script names;37- require causal proof, not just "tests passed";38- monitor for scope drift while the worker works;39- inspect the returned patch;40- integrate the returned work into the surrounding system;41- perform wiring and hardening before reporting acceptance;42- run independent verification;43- harden gaps before accepting.4445## Repository-Agnostic Rule4647Fastlane is universal. Never assume a specific repository, framework, artifact48name, proof format, docs layout, branch policy, or release ritual.4950Before delegation, infer the current repo's conventions from local files and51commands. Use repo-native names such as its test scripts, proof artifacts,52changelog, release notes, checkpoint docs, snapshots, screenshots, or generated53outputs only after discovering them locally.5455If the repo has no docs, changelog, checkpoint, scorecard, or proof artifact56convention, do not invent one as part of the fastlane task unless the user57explicitly asks. Instead, report what was verified and what artifact sync would58be useful.5960## Glossary6162- **Worker lane**: a bounded sidecar model tasked with construction, audit,63 research, or support work under a parent-owned contract.64- **Spark**: short operational name for the `gpt-5.3-codex-spark` research65 preview lane, used for near-instant compact iteration when available.66- **Coder lane**: `gpt-5.3-codex` for substantial bounded code-only work when67 Spark is not needed.68- **xhigh / high / medium / low**: reasoning effort tiers. Use the lowest tier69 that can satisfy the proof contract without increasing parent rework.70- **fork_context**: spawn flag controlling whether the worker inherits the71 parent's full conversation history. `true` inherits and forces parent model72 settings; `false` allows explicit model/effort overrides but requires the73 parent to embed all needed context in the prompt.74- **Proof artifact**: any repo-native file that records observable runtime75 behavior: log, screenshot, JSON status file, generated output snapshot.76- **Artifact Sync Gate**: the parent's final pass to align repo-native public77 docs, changelog, or evidence files with the verified behavior, run only78 when those conventions already exist or the user explicitly asks.7980## Living Skill Loop8182Fastlane is a living skill. When the parent agent uses Fastlane several times83in a row, or sees the same failure mode more than once, it should look for84improvements to the universal workflow.8586Propose a Fastlane skill update when a pattern is:8788- repeated across multiple delegated tasks or likely to recur in other repos;89- about delegation quality, model/effort selection, proof integrity, runtime90 preflight, artifact sync, handoff format, ownership boundaries, or91 anti-false-positive checks;92- expressible without project-specific names, paths, domains, or one-off93 commands.9495Do not update the skill for:9697- a repo-specific convention that belongs in that repo's docs;98- a one-off bug fix;99- a preference that has not improved proof or reduced rework;100- a memory that only makes sense with private conversation context.101102Update protocol:1031041. Name the reusable lesson in one sentence.1052. Explain why it belongs in Fastlane rather than the current repo.1063. Propose the smallest universal wording change.1074. If the lesson is already covered by existing wording, edit it. Do not108 append a duplicate.1095. Apply the update only if the user explicitly asks, or if the current110 instruction already authorizes updating the skill.1116. At most one skill update proposal per Fastlane session, to prevent drift.1127. Validate frontmatter, template consistency, and absence of repo-specific113 names before reporting completion.114115## When To Use116117Use this skill when the user asks to:118119- use Codex Spark, GPT-5.3-Codex, a worker, subagent, xhigh, high, medium, or120 low for fast implementation;121- test a delegated implementation workflow;122- split implementation from verification;123- make a bounded code change where the parent can continue as quality gate.124125Avoid this workflow when:126127- the task is unclear or exploratory only;128- the next step is immediately blocked on analysis that the parent should do129 locally;130- the write scope cannot be isolated;131- a false positive would be expensive and no runtime proof is possible.132133## Model And Effort Selection134135Choose the worker by lane fit first, then reasoning effort.136137- Use `gpt-5.3-codex` as the default coder lane for bounded code-only138 implementation, debugging, focused refactors, tests, and repo-native patches.139- Use `gpt-5.3-codex-spark` when near-instant compact text/code iteration140 matters and Spark is available.141- Use `gpt-5.4` low or `gpt-5.4-mini` medium for low-risk mechanical support142 lanes where speed and cost matter.143- Use `gpt-5.4` high or `gpt-5.5` high for audit lanes, proof-gap hunting, and144 edge-case review.145- Keep `gpt-5.5` high/xhigh primarily as the parent or rare frontier worker for146 ambiguous, long-context, high-stakes synthesis.147148Use medium or low only when all of these are true:149150- the task is bounded and mechanical;151- the write set is small and explicitly owned;152- the existing pattern is clear;153- acceptance criteria are observable;154- the parent can cheaply inspect and rerun verification;155- the worker is not being asked to make product, architecture, model-selection,156 or proof-policy decisions.157158Low and medium are cost-control lanes, not context-control lanes. Give them the159same full task context, baseline dirty state, file ownership, forbidden160surfaces, proof criteria, and final handoff requirements as high or xhigh.161**Reduce task size, not instruction quality.**162163Escalate effort or model when:164165- the worker must infer missing architecture;166- the patch crosses ownership boundaries;167- the proof path is subtle or easy to fake;168- the first attempt produces broad rewrites, guessed commands, or vague169 handoff claims;170- parent review finds a causal proof gap.171172Never change the parent/global model mode to test a fast lane. Model/effort173experiments happen only inside the sidecar worker.174175## Delegation Protocol176177### Before spawning the worker1781791. Inspect enough local context to write a precise task.1802. Capture a baseline: `git status -sb`, relevant focused diff/grep, and known181 command names from `package.json` or repo scripts.1823. Decide spawn mode:183 - To force a specific worker model or effort, spawn with184 `fork_context: false` and embed full task context in the prompt.185 - When full conversation history matters more, use `fork_context: true`186 and omit model/effort overrides because forked agents inherit the parent187 settings.1884. State the implementation goal in one paragraph.1895. Give explicit file ownership and forbidden surfaces.1906. Tell the worker it is not alone in the codebase and must not revert unrelated191 changes.1927. Define acceptance criteria in terms of observable proof.1938. Require final handoff with files changed, commands run, proof artifacts,194 exact proof fields, model/effort rationale, limitations, and concerns.195196### Parent Integration Loop1971981. Read the changed files or focused diff.1992. Compare the result against the baseline: distinguish files the worker actually200 changed from files already dirty before delegation.2013. Integrate the patch with adjacent code paths the worker did not own: CLI202 wiring, imports, registry entries, docs hooks, fixtures, schemas,203 adapters, generated-contract surfaces, or artifact plumbing when those204 are required for the feature to be usable.2054. Harden obvious gaps immediately: path safety, compatibility fallbacks,206 error handling, deterministic artifacts, anti-false-positive checks, and207 contract drift guards.2085. Look for false positives where the test may not exercise the new path.2096. Run unit tests yourself.2107. Run runtime or integration proof yourself.2118. Inspect generated proof artifacts, screenshots, logs, or browser output.2129. Add any final hardening found by proof inspection.21310. Close the worker once accepted or superseded.214215The parent should not hand back a raw worker patch when local wiring or216hardening is clearly needed. A Fastlane is complete only after the parent has217converted the worker's slice into an integrated, verifiable repo state.218219### When To Abort vs. Iterate220221Discard the patch and re-delegate with smaller scope (do not try to salvage)222when any of these appear:223224- gross ownership violation (worker wrote outside declared owned files);225- fabricated proof (claimed artifacts that do not exist or use the legacy226 path);227- broad unauthorized rewrite of files the patch was not supposed to touch;228- handoff claims pre-existing dirty files as newly created;229- repeated guessed command names after the parent supplied the real ones.230231Iterate (ask the worker to refine) when:232233- ownership was respected but proof signal is weak;234- wiring is missing but the core slice is correct;235- a single anti-false-positive check needs adding.236237### While the worker is still running238239- Do useful non-overlapping review setup locally.240- If the worker runs longer than expected, inspect `git status`, focused241 diffs, or proof artifacts without redoing its assigned implementation.242- Stop or redirect only if it touches forbidden surfaces, changes ownership243 boundaries, or appears to be solving the wrong problem.244245## Proof Contract246247For every delegated feature, define two paths whenever possible:2482491. Legacy path still works.2502. New path is exercised and leaves a different observable mark.251252Examples:253254- Generated smoke path: proof contains `runtime_smoke.source=generated`.255- Fallback smoke path: proof contains256 `runtime_smoke.source=generated-fallback` and `fallback_generated=true`.257- Cache miss path: log/proof contains `cache=miss`.258- Migration path: DB schema version changes and migrated data is still259 readable.260261If existing behavior can mask the new path, require a force flag or262deterministic setup that makes the new path unavoidable.263264### When there is no runtime path265266For pure refactor, docs, or typing tasks where no runtime mark exists,267substitute the runtime contract with a **structural diff snapshot**: a268before/after capture of a public signature, exported API surface, fixture269shape, or generated contract file. The structural snapshot replaces270"observable runtime mark" as the causal proof.271272## Anti-False-Positive Rules273274Do not accept:275276- "I removed X" if the generator recreates X before the relevant stage.277- "Unit tests cover it" when the claim is about runtime behavior.278- "Smoke passed" if the smoke used the old path.279- "Smoke failed" without checking whether the app/server/runtime prerequisite280 was running.281- A guessed command name when the repo has a different script in282 `package.json`.283- A handoff that claims already-dirty files were newly created by the worker.284- Docs claiming success before proof artifacts confirm it.285286Ask the worker to explicitly answer:287288- What proves the new code path ran?289- Which proof file contains it?290- Which field, log line, status, or output confirms it?291- What could still be masking a false positive?292- Which commands were copied from repo scripts, and which were inferred?293- Which files were already dirty before it started?294- Which model and effort were used, and why was that lane chosen?295- Did this run reveal a reusable Fastlane workflow improvement the parent296 should consider?297298## Command And Runtime Preflight299300Fastlane tasks often fail for boring reasons: wrong script name, no dev301server, stale port, missing env, or a worker assuming a runtime is alive.302303Before delegation, the parent should give the worker:304305- exact command names copied from `package.json`, Makefile, task runner, or306 docs;307- required services and ports, for example `npm run dev` serving308 `http://127.0.0.1:7777`;309- whether the worker may start background services or should leave runtime proof310 to the parent;311- expected artifact paths for browser screenshots, logs, or proof JSON.312313If a runtime command fails, the worker must classify it:314315- `code-failure`: the patch broke behavior;316- `environment-blocker`: service, port, credential, or external runtime317 missing;318- `command-error`: command name or invocation was wrong.319320The parent still reruns the final runtime proof independently.321322## Prompt Template323324Read `references/delegation-template.md` when preparing a worker task. It325contains a reusable prompt with context, ownership, acceptance criteria,326verification, and handoff sections.327328Use the template as a starting point, then fill in project-specific paths,329commands, proof fields, and risk notes.330331## Case Notes332333Field-tested lessons from real Fastlane runs are kept in334`references/case-notes.md`. Read them when designing a new delegation,335especially for generator work, runtime/browser proof, or medium-tier worker336runs. The examples there are illustrative; adapt to the artifacts native to337the current repo.338339## Parent Gate Checklist340341Group A: **Pre-acceptance (mandatory before any sign-off)**342343- [ ] Parent used the correct spawn mode for the goal: model override344 without full fork, or full fork without override.345- [ ] Baseline dirty state was captured before delegation.346- [ ] Worker changed only owned files or justified exceptions.347- [ ] Worker did not claim pre-existing dirty/new files as newly created by348 its patch.349- [ ] Verification command names match actual repo scripts.350- [ ] Unit tests pass locally.351- [ ] Integration/runtime proof passes locally.352- [ ] The new behavior has a distinct proof signal (or a structural diff353 snapshot when no runtime path exists).354- [ ] Proof artifacts are named in the final report.355- [ ] Limitations are honest and not reframed as success.356357Group B: **Integration**358359- [ ] Parent integrated the returned work with adjacent wiring required by360 the feature.361- [ ] Parent performed local hardening before declaring the lane accepted.362- [ ] The patch preserves existing CLI/API compatibility unless explicitly363 allowed.364365Group C: **Post-acceptance (conditional)**366367- [ ] Repo-specific docs, changelog, release notes, checkpoints, scorecards,368 or public artifacts match the verified behavior **when those369 conventions exist**.370- [ ] For a major checkpoint or category uplevel, the Artifact Sync Gate371 ran: update only the repo-native public/method docs and evidence files372 that exist or are explicitly requested.373- [ ] If several Fastlane runs exposed a repeated workflow pattern, the374 parent proposed a universal skill update or recorded why no update is375 warranted (max one proposal per session).