Implements issue #377 (journey dossier F2, ADAPT verdict): phase 9 closeout
now records lesson capture per stages.md Stage 6 "Deliver and learn" — either
the reusable lesson(s) and their durable destination (skill, memory, or
project docs), or an explicit "no reusable lesson identified" determination.
Mirrors skip transparency: silent omission is prohibited. Terminal-state
semantics stay intact — lessons are recorded IN the terminal record; a fired
trigger or follow-up starts a new change request via phase 1 intake.
- references/journey.md: phase 9 Output row gains the lesson-capture field;
phase-continuity row updated ("terminal; triggers and lessons recorded in
the terminal record").
- references/delivery-packet.md: group (i) row gains lesson capture; terminal
semantics cover lessons alongside triggers; skip-transparency doctrine
cross-referenced for closeout lessons.
- templates/delivery-packet.md: section (i) fillable "Lessons captured" field
with durable-destination note + example line.
- references/lifecycle.md: intro, terminal-states closeout note, and closeout
row aligned with the extended group-(i) field set.
- evals/evals.json: expected_output + assertions extended in bug-fix-
reproduction-regression and refactor-characterization-architecture-review
(13 IDs stable).
stages.md untouched: Stage 6 already mandates lesson capture; journey/packet
now consume it. README table unchanged (still accurate).
Closes#377
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Implements issue #376 (journey dossier F1, ADAPT-minimal verdict): phase 9
closeout now records rollback/follow-up triggers alongside terminal state +
release evidence, stating what would cause re-entry; operational discoveries
route to a NEW change request via phase 1 intake instead of resurrecting the
terminal packet. Terminal-state semantics stay intact.
- references/journey.md: phase 9 Output row gains trigger fields + new-CR
routing; phase-continuity row updated ("terminal; triggers recorded in the
terminal record").
- references/delivery-packet.md: group (i) row gains trigger fields; terminal
semantics clarify triggers are recorded in, not re-opening, the packet.
- templates/delivery-packet.md: section (i) fillable field + example.
- references/lifecycle.md: intro, terminal-states note, closeout row aligned.
- evals/evals.json: assertions extended in bug-fix-reproduction-regression,
schema-migration-rollback-release-readiness, release-authority-blocked-
terminal-state (13 IDs stable).
- research brief: F1 citation of "SKILL.md step 6" corrected to step 5.
No phase added; stages.md untouched (lesson capture is issue #377).
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Add NVIDIA SkillEvaluator as an advisory (non-blocking) Tier 1 gate on
PRs and pushes touching skill-relevant paths. Runs the documented
keyless check set (schema,pii,license,quality,unicode,lint) pinned to
skillevaluator v0.1.0 per changed skill, uploads JSON reports as an
artifact, and posts one advisory summary line per skill to the job log.
SkillSpector is deliberately not installed: upstream still ships it
"separately installed and unpinned", so the security scan is excluded
by design until a documented compatible pair exists.
Closes#383
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Convert the prose Scripts list into the formal table with copy-pasteable
invocations verified against each script --help, and add factual
Prerequisites and Limitations.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:55 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
This resource-based skill ships no scripts, so instead of an Available
Scripts table, document the resources it loads (sub-skill protocols,
references, generation templates), the agent capabilities it needs, and
its real limitations (Hermes-runtime targeting, observation-mode turn
threshold, inference-only discovery).
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:55 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Consolidate the two generation/post-processing scripts into the formal
Available Scripts table and add factual Prerequisites and Limitations,
slotting cleanly into the post-#382 references structure.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:43 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document both previously undocumented pytest suites alongside the profiler
and reconciler in the formal table, and add factual Prerequisites and
Limitations.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:43 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Add factual Prerequisites and Limitations. Lead the description with an
imperative verb and add an explicit negative boundary to satisfy the
quality validator; keep trigger keywords intact.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:43 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Add schema-v1 evals/evals.json with six cases covering growth check-ins,
series trending with time-to-target, decision framing, projections, a
should-not-trigger case, and benchmark honesty. Fix documented flags that
do not exist in the script (--project-weeks/--target-revenue/--add-to-
weekly) to the real ones (--project-periods/--target-value/--dry-run).
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:43 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Formalize the woodpecker-doctor.py entry into an Available Scripts table,
add factual Prerequisites and Limitations, and normalize the negative-
boundary heading so the quality gate recognizes it.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:29 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Convert the prose Root Scripts list into the formal Available Scripts table
with copy-pasteable invocations, and add factual Prerequisites and
Limitations from compatibility frontmatter and bundle behavior.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:29 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Convert the implicit CLI documentation into the formal table (including the
previously undocumented test-lastfm.sh), add factual Prerequisites and
Limitations from compatibility frontmatter and known gotchas, and add the
missing negative-boundary section required by the quality gate.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:38:18 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document the previously undocumented test-flaresolverr.sh alongside the CLI
in a formal Available Scripts table, and add factual Prerequisites and
Limitations derived from the skill real behavior.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Six schema-v1 eval cases grounded in real skill behavior: council
invocation and bootstrapping, convergence-diagnostic reading,
quick-mode selection, claims-verification discipline, profile-library
fallback, plus one should-not-trigger case for simple factual lookups.
Satisfies the eval-coverage ratchet for this modified skill.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:15:23 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Add an Available Scripts table for scripts/bootstrap.py with invocation
and run-when guidance; add Prerequisites and Limitations covering the
single-model debate design and claims-verification guardrail. Lead the
frontmatter description with the imperative verb Run and add an explicit
negative boundary so the changed skill passes the CI quality gate; all
trigger keywords are preserved.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:15:23 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Add an Available Scripts table covering risk_preflight.py,
temporal_split_audit.py, and the previously undocumented test_risk_scripts.py;
add Prerequisites and Limitations for the dependency-free first-pass scripts.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:15:06 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document semantic-spacetime.py subcommands (lint/map/distance/trajectory/drift)
in an Available Scripts table with invocation and run-when guidance; add
Prerequisites and Limitations grounded in the CLI's read-only model analysis.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:15:06 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document promise-contract.py (lint/render commands) in an Available
Scripts table with invocation and run-when guidance; add Prerequisites
and Limitations reflecting static validation scope and the not-contract-law boundary.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:15:06 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document validate-capabilities.py in an Available Scripts table with
invocation and onboarding-timing guidance; add Prerequisites and
Limitations reflecting the no-capability fallback and nonclinical scope.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:14:57 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document landscape_query.py in an Available Scripts table with a
copy-pasteable invocation and run-when guidance; add Prerequisites and
Limitations grounded in the tool's snapshot-based, read-only design.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:14:57 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document validate-city-pack.py in an Available Scripts table with
invocation and workflow-step timing; add Prerequisites and Limitations
covering v1 geometry bounds, CPU rendering, and offline validation scope.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:14:30 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document lookup.py in an Available Scripts table with invocation and
run-when guidance tied to the routing workflow; add Prerequisites and
Limitations reflecting the stdlib-only local-library search.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 23:14:30 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Convert the prose script list into an Available Scripts table covering
aeo_audit.py, build_prompt_matrix.py, and test_aeo_scripts.py with
copy-pasteable invocations and run-when guidance; add Prerequisites and
Limitations derived from the skill's compatibility notes.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Body was ~19.5k chars, past the new 20k token-budget gate. Collapses
Capability Discovery to a stub pointing at the existing
references/agent-capability-discovery.md, summarizes Apple Books
compatibility instead of duplicating its table, and moves the LLM
Configuration Convention plus the Knowledge Extraction Deep Dive into
references/llm-config-and-extraction.md. Keeps format essentials, the
script decision table, CLI examples, workflows, gotchas, and pitfalls,
and extends the references index with the two touched/new files; body
is now 16,261 chars.
Also adds evals/evals.json (6 output-quality cases incl. one
should-not-trigger case) to satisfy the eval-coverage ratchet.
The description previously started with "EPUB", which fails the
imperative-verb rule that CI enforces on every changed skill; it now
leads with "Read" while keeping all trigger keywords. Adds a
"When not to use" section (non-EPUB documents, DRM-locked books,
Kindle-native formats). Regenerates .claude-plugin/marketplace.json
and llms.txt accordingly.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 22:47:53 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Body was ~20.5k chars, past the new 20k token-budget gate. Moves the
five migration-type classifications into
references/migration-types.md and the structured planning field tables
into references/planning-fields.md (cross-referencing
templates/migration-plan.md). SKILL.md keeps triggers, boundaries,
the workflow skeleton with summaries pointing at existing references,
the Loading Guide (now including both new files), and specialist
routing; body is now 11,432 chars.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 22:47:16 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Body was ~24k chars, past the new 20k token-budget gate. Moves the
style-lane grammar + prompt cues + asset catalog into
references/style-lanes.md, the full visual system (palettes, mascot,
typography, textures, art style) into references/visual-system.md, and
post-processing modes/intensity calibration into
references/post-processing.md. SKILL.md keeps triggers, the negative
boundary, prompt templates, API notes, anti-patterns, compliance
checklist, and a Loading Guide table; body is now 12,042 chars.
Also adds evals/evals.json (6 output-quality cases incl. one
should-not-trigger case) to satisfy the eval-coverage ratchet, and adds
a "When not to use" section so the changed-skill quality gate passes.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-22 22:47:16 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Issue #382: the 500-line cap alone lets dense prose slip through, so
bodies are now measured in characters (~4 chars/token proxy for the
~5,000-token budget) after stripping YAML frontmatter. Bodies over
20,000 characters hard-error with split-into-references remediation,
mirroring the existing oversized-reference gate (#277).
Adds ReferenceFileScan.oversized_skill_md_errors next to
oversized_reference_errors, wired into the per-skill loop, with
Minitest coverage: under-limit passes, over-limit fails with path and
size, exactly-at-limit passes (strict >), huge-frontmatter/tiny-body
passes, missing-frontmatter stays silent (reported elsewhere), and
missing SKILL.md is ignored.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Pin copy-pasteable npx invocations to explicit versions so agents
executing them verbatim get reproducible behavior:
- playwright docs: npx playwright@1.62.1 (SKILL.md, README.md,
references 02-selectors / 05-ci-integration / 07-accessibility)
- mermaid-diagrams: @mermaid-js/mermaid-cli@11.16.0 (SKILL.md,
references/pdf-rendering-pipeline.md)
- hugo-theme seo-outputs-testing: @axe-core/cli@4.13.0
- agent-skills using-scripts.md: strengthen version-pinning bullet
into a normative rule for copy-pasteable commands
Reword the anydoc cli-reference "Version pinning" prose so the
anti-pattern is explained didactically without presenting an unpinned
command as a recipe; the @0.1.6 house pin is unchanged.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Document that a delegated research worker timeout is an interruption, not a
result: recover partial artifacts, resume from the last durable checkpoint,
and judge completion by evidence completeness rather than elapsed time.
Co-authored-by: factory-droid[bot] <138933558+factory-droid[bot]@users.noreply.github.com>