Commit Graph
100 Commits
Author SHA1 Message Date
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 409826a81f fix(docs): correct depth-parity comment in example bundle manifest
The comment claimed docs/examples/ sat at "the same depth as a real
<name>/manifest.yaml". Under the flat layout a real manifest sits one
level below the repo root (resolving repo-root paths with ../), while
this example lives two levels below root (../../). Reword the comment
to describe the actual relationship without changing any path values,
field names, or schema content.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 17:05:47 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> cbe27723cf fix(evals): drop bundles/ fixture path from eval-coverage test
Rename the nested-skill fixture paths in test_nested_change_maps_to_nearest_skill_owner
from bundles/example to example so no tracked file (other than the OKF upstream
sample file) references the removed bundles/ directory, satisfying the final
repo-wide sweep (VAL-REF-017).

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 16:55:35 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> b7aa174b84 fix(evals): re-point lifecycle corpus tooling at flat layout
Update the three hardcoded bundle manifest paths in run-corpus.sh and
validate-corpus-coverage.py from bundles/<name>/evals/evals.json to
<name>/evals/evals.json, refresh the coverage-index.json via --write-index,
and update the corpus prose (README, coverage-matrix, sources,
discovery-brief) to drop the bundles/ prefix.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 16:54:34 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 3480b7ff5a fix(prose): refresh top-level skill path references for flat layout
Re-point promise-theory reference links to ../../workflow-architect/SKILL.md
(one level deeper than SKILL.md), drop the bundles/ prefix from the
pace-plan evidence-ledger path, and refresh the stale eval-coverage.py
comment to describe only the flat <root>/<skill-name>/SKILL.md shape.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 16:50:06 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 65fcae6cda docs(flatten): update repo docs for the flat layout
Rewrite README.md Installation prose and references/skill-triggers.md to
drop the bundles/ depth and --full-depth guidance, relabel the architecture
diagram bundle node, and correct bundle-manifest-design.md to place manifests
at <skill>/manifest.yaml with the 8-umbrella count. Fix the example manifest
and schema descriptions, plus the production-excellence AGENTS.md depth note.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 16:48:49 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 0096aca50b feat(evals): add eval manifests for the 10 sub-skills
Author schema-valid evals/evals.json manifests (>=5 cases each) for the
tailscale sub-skills headscale-backup, headscale-deploy, headscale-derp,
headscale-node-lifecycle, headscale-routing, tailnet-policy, tailscale-client
and the workflow-architect sub-skills bundle-builder, interviewer, observer,
raising schema-valid coverage from 96/152 (63.2%) to 106/152 (69.7%). Remove
all 14 bundles/ entries from scripts/grandfathered-skills.txt now that the
8 umbrellas and 10 sub-skills all carry valid eval manifests.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 16:23:11 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 0a7c6b9a1f fix(skills): rework moved-skill descriptions to pass quality gate
Rework the description frontmatter of 4 moved skills (tailscale, and
workflow-architect sub-skills bundle-builder, interviewer, observer) so each
starts with a recognized imperative verb, and add "## When not to use" body
sections to all 13 moved skills surfaced by the flatten move (research-and-vault,
tailscale + its 7 sub-skills, workflow-architect + its 3 sub-skills) so every
one defines a negative boundary. Trigger vocabulary is preserved and every
description stays under 1024 chars. Regenerate llms.txt and
.claude-plugin/marketplace.json, which embed the tailscale description.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 16:13:32 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> df713361c4 fix(flatten): point catalog validation and links at flat layout
Update validate-skills.rb expected_catalog_paths to the flat */SKILL.md
glob (drop the bundles/ term), repoint the 8 README catalog headings to
<name>/SKILL.md, and fix the promise-theory and semantic-spacetime
workflow-architect links to ../workflow-architect/SKILL.md.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 16:07:01 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> a315b77bd8 feat(flatten): rewrite moved-file paths for flat layout
Re-point relative references inside the six non-tailscale/workflow-architect
bundle dirs now that they live one level shallower at the repo root:
- bundle-root SKILL.md/manifest.yaml/README.md: ../../<target> -> ../<target>,
  cross-bundle ../../bundles/<x> -> ../<x>
- forward-deployed-engineering references/: ../../../<target> -> ../../<target>
- product-lifecycle references cross-bundle ../../bundles/neckbeard -> ../../neckbeard
- product-lifecycle references/discovery-brief.md prose headings drop bundles/ prefix
- neckbeard eval shell commands bundles/neckbeard/eval -> neckbeard/eval
- production-excellence AGENTS.md depth note updated
- manifest header comments point at ../schemas/bundle-manifest-v1.schema.json
- regenerate docs/lifecycle-capability-matrix.{md,json}

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 15:59:56 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 42447b23eb feat(flatten): repoint lifecycle capability matrix tooling to flat layout
Update gen-lifecycle-matrix.rb and validate-lifecycle-matrix.rb to drop all
hardcoded bundles/ path references after the directory flatten:

- CANONICAL_BUNDLES now selects canonical bundles via */manifest.yaml (the
  8 bundle dirs) instead of */SKILL.md (which would match every top-level
  skill); keeps the 8-bundle invariant required by the validation contract.
- source strings, manifest paths, fallback frontmatter, and base dirs use
  <name>/... at the repo root; the top-level JSON key stays "bundles".
- validate-lifecycle-matrix.rb re-anchors NESTED_HELPER_PATTERN to
  %r{(?:^|/)skills/} so nested helpers (tailscale/skills/*,
  workflow-architect/skills/*) are still detected in the catalogs, and
  canonical_bundles matches the generator's */manifest.yaml glob.
- align the two matrix tests in test-validate-bundles.rb: canonical bundles
  are manifest-having dirs (a manifest-less top-level skill is not a row),
  and the missing-row rejection targets the demo manifest bundle.
- regenerate docs/lifecycle-capability-matrix.{md,json}.

gen check mode: "is current (8 bundles)"; validate:
"Validated lifecycle capability matrix (8 bundle(s)): complete, traceable, and current."
test-validate-bundles.rb: 14 runs, 307 assertions, 0 failures.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 15:53:43 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 7b6f26f077 feat(flatten): repoint catalog generators to flat skill glob
Drop the Dir.glob("#{ROOT}/bundles/*/SKILL.md") term from gen-llms-txt.rb,
gen-claude-marketplace.rb, and gen-codex-plugin.rb (the first glob */SKILL.md
now covers the 8 former bundle umbrellas) and refresh the header comments.
Regenerate llms.txt and .codex-plugin/plugin.json (./bundles/<name> ->
./<name>); .claude-plugin/marketplace.json is byte-identical. Update
test-gen-llms-txt.rb fixtures from bundles/zulu etc. to top-level zulu/ with
assertions [zulu](zulu/SKILL.md), and make the duplicate-guard test robust to
case-insensitive filesystems where case-variant dir names collapse.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 15:47:05 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> b623635f54 feat(flatten): repoint validate-bundles glob and rebuild manifest test fixtures
Change bundle-manifest discovery from bundles/*/manifest.yaml to */manifest.yaml
and rebuild the tmpdir fixtures in test-validate-bundles.rb at the tmpdir root
so manifests live at <skill>/manifest.yaml and path fields use the flattened
relative depth. Refresh the validator's header comment.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 15:29:59 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> c0c7690724 feat(flatten): move bundle dirs to repo root
Move the 8 directories under bundles/ to the repo root via git mv and
remove the now-empty bundles/ directory. Replace the "bundles" entry in
pyproject.toml [tool.deptry] extend_exclude with the 8 moved dir names so
the moved trees stay excluded from Python dependency analysis.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 15:26:27 -04:00
Magnus HedemarkandGitHub da17e50a16 Merge pull request #314 from magnus919/feat/semantic-spacetime-skill
feat(semantic-spacetime): add research-grounded semantic spacetime skill
2026-08-13 00:55:14 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 61b3890726 feat(semantic-spacetime): add M4 cross-links and final validation fixes
Add the M4 integration cross-links: a single reverse link in
promise-theory/references/foundations.md section 3.12 pointing to the
semantic-spacetime skill (the only promise-theory change), and one
FAILURE-MODE-INDEX.md row for semantic drift / meaning disagreement
following the file's concrete-trigger + real-skill-path rule. Refresh
stale milestone forward-references in semantic-spacetime/references/
foundations.md now that the M2 references and M3 tooling exist. Full
validate.yml-equivalent suite passes locally: 152 canonical skills, 96
eval manifests schema-valid, eval-coverage ratchet green (63.2%),
check-artifacts + jscpd + ruff/mypy/radon/deptry/bandit green, and the
fake-adapter eval smoke runs 6 trials with 0 failures.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-13 00:34:13 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 3fc2f87011 fix(semantic-spacetime): enforce strict sst-model-v1 schema in model lint
model lint now rejects anything outside the sst-model-v1 schema with exit 1
and a named violation: unknown top-level sections (e.g. 'regions:') and
unknown fields inside agents/promises/nodes/edges/acceptances/trajectories/
observations (e.g. 'bogus-field: 42' in a node). Violations name the unknown
key and its location, flow through the --json errors list, and never produce
a traceback. The template's RULES block documents the strictness, the
restricted-YAML subset boundary (anchors/aliases, block scalars, and
multi-document streams rejected exit 1; JSON accepted as an equivalent
representation), and the trajectory node-id reference rule (no edge-
connectivity check in v1). Adds a git-tracked malformed fixture
(tests/fixtures/invalid-model.yaml) and unit tests pinning both rejection
directions, plus unknown-field coverage in agent and edge entries.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-13 00:20:07 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 2656704e06 feat(semantic-spacetime): add stdlib-only CLI and black-box test suite
Add scripts/semantic-spacetime.py, a stdlib-only Python 3.10+ CLI for
sst-model-v1 models: model lint (schema validation with coverage summary),
model map (gamma(3,4) text/mermaid/json rendering), model distance (weighted
hop distance, weight |link| + 1 per hop), model trajectory (simple-path
enumeration with cycle notes), and model drift (snapshot diff). Pins the
promise-contract.py conventions: exit codes 0/1/2, --json single-object
purity on dispatched paths, --dry-run no-op guard, never a traceback, module
import with no side effects.

Add the stdlib unittest suite (50 black-box subprocess cases), trigger
probes with the committed Load By Need routing and anti-trigger refusal
tables, and the tracked sample-model fixture materialized from the template's
delimited example. Update SKILL.md and README Quick Start to the real
--help command surface.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-12 23:49:54 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 0430e665ba feat(semantic-spacetime): add M2 application references
Add the four application references completing the knowledge bundle:
applications-infrastructure.md (CFEngine mechanism set, convergence
semantics, descendant ecosystem, promise-keeping-as-data gap, SLOs,
record-of-time machinery, citable lessons), agent-coordination.md
(Burgess agent papers, SSTorytime/MCP-SST, drift and temporal-blindness
literature, MCP/A2A substrate, five [EXTRAPOLATION] synthesis patterns),
patterns.md (ten named patterns with when-to-use and anti-patterns), and
diagnosis-and-debugging.md (bounded three-pass procedure). Every claim is
provenance-marked; promise-theory content is linked, not restated.
SKILL.md Load By Need grows to 7 rows; gotchas 4/5 are grounded in
applications-infrastructure.md per VAL-ROUTE-019; README What You Get
lists the new references.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-12 23:09:26 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 2c78dfcca3 feat(semantic-spacetime): add format-compliant M1 skill core
Add the semantic-spacetime skill skeleton: a thin SKILL.md router with
triggers/anti-triggers, Load By Need, Quick Start, Related Skills, gotchas,
and exit conditions; a human-facing README; MIT license; deep
provenance-marked theory references (foundations, glossary, bibliography);
the versioned sst-model-v1 template pair; a 6-case schema-v1 eval manifest;
the root README catalog entry; regenerated marketplace and llms artifacts;
and the skill-triggers row.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-12 22:33:47 -04:00
Magnus HedemarkandGitHub c438315ae4 Merge pull request #313 from magnus919/docs/issue-311-skill-vetting
docs(agent-skills): add third-party skill vetting guidance and deterministic-script rule
2026-08-12 00:50:59 -04:00
Magnus Hedemark cc18d8602c Merge remote-tracking branch 'origin/main' into docs/issue-311-skill-vetting 2026-08-12 00:48:28 -04:00
Magnus Hedemark 8e5bc023a0 docs(agent-skills): add third-party skill vetting guidance and deterministic-script rule
Adds references/vetting-third-party-skills.md with a dependency-style
vetting checklist (provenance, SKILL.md body, scripts, references),
safe first-run practice, and reporting guidance, citing the Snyk
ToxicSkills audit as the primary source for ecosystem risk statistics.

SKILL.md gains the match-prescriptiveness-to-fragility decision rule,
the run-vs-reference intent rule for bundled scripts, and an
Adopting Third-Party Skills section. README and eval manifest updated.

Closes #311
2026-08-12 00:44:58 -04:00
Magnus HedemarkandGitHub 0413a05034 Merge pull request #312 from magnus919/feat/promise-theory-skill
feat(skill): promise theory — expert methodology for hybrid human+AI agent coordination
2026-08-12 00:20:31 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 31a2fd16bb feat(skill): promise-theory quick start documents --json and --dry-run
Quick Start now documents the --json and --dry-run flags with their
exact semantics (single JSON object on stdout; read-only no-write
guard) and points to `python3 scripts/promise-contract.py --help` for
the full flag list, so a no-prior-knowledge user can drive the CLI
end-to-end (VAL-USE-013). No other content changes.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-12 00:12:47 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> ffd05b2e1d feat(skill): promise-theory catalog integration
Add the promise-theory skill to the repository catalog: root README entry,
regenerated llms.txt and marketplace/plugin packaging, and a
references/skill-triggers.md row.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-11 23:41:52 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> a30274fa68 feat(skill): promise-theory evals manifest + trigger probes
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-11 23:39:26 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> a2f27c036e feat(skill): promise-theory script + unit tests
Add promise-contract.py, a stdlib-only Python 3.10+ CLI that lints
promise-manifest v1 contracts (restricted-YAML or JSON) against the pinned
schema and renders a promise-graph summary. lint exits 0 on valid + full
coverage, 1 on lint errors/coverage gaps (accumulated, no fail-fast), and 2
on usage/IO errors; --json preserves the {valid, errors, warnings, coverage,
bindings} shape even on parse errors; --dry-run is a no-op guard. Robustness
handles empty/whitespace files, non-UTF-8 bytes, CRLF/BOM, JSON type errors,
and deep nesting without Python tracebacks.

Add tests/test_promise_contract.py covering valid contracts (YAML + JSON),
coverage gaps, schema violations, malformed input, --json, --dry-run, render,
and the robustness cases (empty, dup ids, bindings, enums, expires, encoding,
usage errors). 36 tests pass via unittest discover.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-11 23:32:21 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 4a780c4757 feat(skill): promise-theory templates + human README
Add the three fillable templates (promise manifest YAML, agent contract,
promise review) and the human-facing README with the five required
sections. The manifest template is a lint-clean, fully covered example of
the pinned v1 schema with per-field comments; all intra-template id
references (accepts, expectations.about) resolve cross-agent. The contract
template carries the seven mandated sections with schema-aligned severity
and type vocabulary; the review template carries the five retrospective
sections with the three diagnosis categories.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-11 23:22:38 -04:00
Magnus Hedemark e856ddb52f feat(skill): promise-theory references — diagnosis & debugging + glossary
Complete the seven-reference set for promise-theory. diagnosis-and-debugging.md
maps the Cemri et al. multi-agent failure taxonomy onto promise-theory breach
categories (specification issues ↔ broken promise bodies; inter-agent conflicts
↔ failed acceptance/incompatible co-languages; task verification problems ↔
missing assessment), adds withdrawal failure as a fourth promise-theoretic
class, documents a four-step diagnostic procedure (walk the promise graph →
check bindings → check evaluation loop → check withdrawal semantics) with a
worked example, and states the theory's limitations and open problems (no
coordination-quality benchmark, guarantees don't compose across handoffs, LLM
promises lack causal teeth, stochasticity, ambiguity. glossary.md defines all
27 architecture §4.2 terms as heading-/bold-led entries with citations plus a
related-terms section. Both files stay under 60k chars, resolve all backtick
*.md references and markdown links, and carry consistent EXTRAPOLATION /
[UNVERIFIED] provenance markers.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
EOF
)
2026-08-11 23:19:09 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 93e0d965ca feat(skill): promise-theory references — coordination, patterns, trust & verification
Adds the three coordination references per architecture 4.2/6/7:
- agent-coordination.md: the core thesis with the fixed 11-concept mapping
  table (concept -> concrete agent-coordination practice), the hybrid
  human+agent boundary (humans as acceptors/evaluators, calibrated
  subordination, causal vs moral responsibility, HITL escalation,
  three-languages problem, swarms vs teams), the multi-agent lineage, and
  the agent-council routing statement; cites Burgess arXiv:2604.10505 and
  states the scarcity of direct literature.
- patterns.md: all seven canonical patterns with worked examples, the M12
  ladder, the Ye & Tan contract tuple and lifecycle with degradation
  semantics, the named ESCALATE-2 trigger, and the workflow-architect
  routing via the bundles path.
- trust-and-verification.md: the two-component trust model, belief/evidence,
  P_succ, verification rates as attention budgets incl. Dunbar budgets,
  gameable assessment, semantic-promise measurement guidance, "confine,
  don't convince", the versioned promise ledger, and routing to
  agent-evals-and-observability and artifact-pyramids.
All files under the 60k-char reference cap with [UNVERIFIED]/EXTRAPOLATION
provenance markers per architecture 4.2.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-11 23:12:37 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> d01d7a1578 feat(skill): promise-theory references foundations + applications-infrastructure
Adds references/foundations.md (academic core with Burgess/Bergstra
citations: promise definition and notation S ─b→ R, proposals, scope,
impositions, obligation-as-derived, polarity/bindings, assessment/belief/
evidence, trust as discounting, exact/empty promises, deception, matrices/
graphs, valence/bundles, roles, discovery, Downstream Principle, evaluation
loops, history, adjacent frameworks, critiques; honest formal-status section)
and references/applications-infrastructure.md (CFEngine case study incl. the
promise-keeping-was-never-stored-as-data lesson, IaC comparison table,
distributed-systems connection, adoption history, LLM-reasoning-layer
argument). Both files < 60k chars with provenance markers per architecture
§4.2.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-11 23:06:23 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 236d678a9d feat(skill): promise-theory scaffold — SKILL.md router + MIT LICENSE
Add the promise-theory skill's thin router (SKILL.md) and LICENSE per
architecture §4.1: frontmatter (name, trigger-oriented description with a
negative boundary, license MIT), a 8-line core-model summary with all six
mandated elements, all six use triggers, all five anti-triggers, a
Load-By-Need routing table covering the seven planned references, a Quick
Start (draft from template, lint with scripts/promise-contract.py),
cross-references to the six sibling skills, and all five gotchas. Grounded
in the mission research reports; sibling links resolve; references/*.md
links land with later reference features.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-11 22:56:28 -04:00
Magnus HedemarkandGitHub 4b9d347662 Merge pull request #310 from magnus919/feat/travel-guide-section-footers
feat(skill): travel-guide section-end footers — field notes, next-up, ghost mark
2026-08-10 20:09:05 -04:00
Magnus Hedemark 3cd705f7e6 feat(skill): travel-guide section-end footers — field notes, next-up, ghost mark
Fills the white space between sections with a bottom-of-page footer per
section: a content-derived field note (first anchor failure mode, first day
alternative, practical recheck item, or first skip reason) when one exists, a
next-section line with the following section's number, and a faint ghost
route mark. Footers hug the page bottom via flex column + margin-top auto;
multi-page sections carry the footer at the end of the section. Sheets fill
the print page so the footer lands at the bottom instead of floating.

Field notes repeat model content in one line and never invent new plans;
sections with nothing worth saying render the next-up line only. QA gate,
editorial reference, SKILL.md, and README updated; test suite extended to
cover footer presence, next-section wiring, and field-note content.

AI assistance: implementation and tests drafted by Jasper (Hermes Agent),
design reviewed and approved by Magnus Hedemark.
2026-08-10 20:01:17 -04:00
Magnus HedemarkandGitHub b87d18e15f feat(skills): expose audio/video recording URLs in fireflies transcripts get (#308) (#309) 2026-08-10 17:37:13 -04:00
Magnus HedemarkandGitHub 15b517906a Merge pull request #307 from magnus919/docs/supabase-evals-attribution
docs(skill): attribute supabase/evals harness reference (Apache-2.0)
2026-08-09 18:17:22 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 2114147c21 docs(skill): attribute supabase/evals harness reference (Apache-2.0)
The reference's concepts, runtime descriptions, and commands are derived
from the supabase/evals README, which is Apache-2.0. Add an attribution
section to references/agent-evals.md with the license link and list the
harness repository in references/source-index.md, per the repository's
attribution convention.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-09 18:14:15 -04:00
Magnus HedemarkandGitHub 7b5845d52d Merge pull request #306 from magnus919/feat/supabase-evals-harness
feat(skill): incorporate supabase/evals harness into supabase skill
2026-08-09 18:09:16 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 4a5f18e435 feat(skill): incorporate supabase/evals harness into supabase skill
Add references/agent-evals.md documenting the official supabase/evals
harness: eval/experiment concepts, the tools and local-stack runtimes,
run and result-viewing commands, and a mapping of harness scenarios to
the skill's operating references. Route to it from the supabase
"Choose the path" table and from postgres, agent-evals-and-observability,
backend-engineering, and data-engineering. Add two eval cases covering
the new reference and keep the generated catalog artifacts current.

Closes #271

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-09 18:05:33 -04:00
Magnus HedemarkandGitHub 6cdc1b1c32 Merge pull request #305 from magnus919/fix/meshcore-packet-capture-v2.2.0
docs(meshcore-packet-capture): refresh skill for upstream v2.2.0
2026-08-09 13:55:21 -04:00
Magnus Hedemark 9f68c2aef3 test(meshcore-packet-capture): add eval manifest for v2.2.0 surface
The repo's eval-coverage ratchet fails modified skills without a schema-valid
eval manifest (coverage 62% >= 50% fail-on-modify threshold). Add five cases
covering the v2.2.0 additions: --neighbors-now/--neighbors-exit CLI, per-broker
neighbors opt-in + IATA requirement, payload-decoding scope limits, the
--user-service install/uninstall flow, and config precedence.

Part of #304
2026-08-09 13:51:21 -04:00
Magnus HedemarkandMagnus Hedemark b4e7c582a6 docs(meshcore-packet-capture): refresh skill for upstream v2.2.0
Bring SKILL.md and references up to date with agessaman/meshcore-packet-capture
v2.2.0 (26 commits past the v2.0.0 source index):

- CLI boundary: document --neighbors-now / --neighbors-exit
- Config: payload decoding (decode_payloads, include_decoded, hashtag
  channels, channel keys), neighbors publishing (interval, discover window,
  scope timeouts, max), log rotation, ble_pin, per-broker owner/email
- MQTT: neighbors and decoded topics, per-broker include_decoded/neighbors
- Deployment: --user-service install/uninstall flow, meshcore ==2.3.8 pin
- Source index: refresh commit/version, cover payload_decode.py and
  neighbors.py

Closes #304

Co-authored-by: Magnus Hedemark <magnus@users.noreply.github.com>
2026-08-09 13:39:39 -04:00
Magnus HedemarkandGitHub 2823d82585 Merge pull request #303 from magnus919/feat/travel-guide-visual-system
feat(skill): travel-guide visual system — journey line, day strip, meters, photo grade
2026-08-08 15:27:42 -04:00
Magnus Hedemark 3f7c46e368 feat(skill): travel-guide visual system — journey line, day strip, meters, photo grade
Adds the visual deltas verified against the mock: a route journey line on the
cover for multi-stop trips, a color-coded trip-at-a-glance day strip after the
brief, pace and budget meters, ghost section numbers, a unified warm photo
grade on anchor images, and a lede drop cap. Day cards gain an optional kind
field (arrive, city, excursion, coast) that drives the strip colors; anchor
cards and the validator accept optional image fields. Photo-sourcing guidance
for free-license images added to the research reference, QA gate updated, and
the test suite extended to cover the new renderer and validator behavior.

AI assistance: implementation and tests drafted by Jasper (Hermes Agent),
design reviewed and approved by Magnus Hedemark.
2026-08-08 15:20:11 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
6fe5aed86e feat(skill): rename writing skill to writers-helper (#302)
Rename the skill directory to writers-helper and update the name field,
eval manifest skill_name, skill README title and example paths, root
README catalog entry, and the skill-triggers index. Regenerate llms.txt,
.claude-plugin/marketplace.json, .codex-plugin/plugin.json, and
.agents/plugins/marketplace.json from their generators. Content is
unchanged.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-08 13:06:46 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
ecdfc658c1 feat(skill): add writing skill for the full writing lifecycle (#301)
Add writing/, a comprehensive writer's personal skill distilled from a
44-book writing-craft and publishing library. Ships 10 expert references
(planning and research, craft and structure, prose and style, drafting,
editing and revision, blocks and prompts, habits and lifestyle,
publishing and career, genres and formats, pitfalls and solutions),
13 fill-in templates (premise canvas through book proposal, query
letter, and submission log), and 5 Python helper scripts (position-aware
prompt generator, session planner, manuscript stats analyzer, habit
journal, submission tracker). All content is original paraphrase and
synthesis; no copyrighted source material is reproduced.

Add the catalog entry at its sorted position and regenerate llms.txt,
.claude-plugin/marketplace.json, .codex-plugin/plugin.json, and
.agents/plugins/marketplace.json from their generators.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-08 12:53:55 -04:00
Magnus HedemarkandGitHub 29a367e90b fix: SkillOpt optimization of travel-guide skill (3 epochs)
SkillOpt optimization of the travel-guide skill (3 autonomous greenfield epochs, 9/9 proposals accepted): page breaks ahead of all section headers, filesystem hygiene with dedicated working folders, sanitizer defaults redacting profile preferences/constraints, audience and private-by-default in the trip contract, process scaling for narrow questions, renderer-hang guidance, private-artifact image sourcing, shareable edition-phrasing review, and a narrow-question eval case.

Authored by Jasper (AI agent on behalf of Magnus Hedemark).
2026-08-08 03:01:24 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
9a42be585e feat(skill): add genius-life creativity practice skill (#299)
* feat(skill): add genius-life core skill files

Add genius-life/SKILL.md and the six references/ files (creative-process,
practice-mode, development-mode, practices-catalog, evidence-basis,
scope-and-safety) as original synthesis from the mission research library,
with copyright-compliant paraphrase, named-fellow attribution, and honest
framing. Templates, README, evals, and catalog integration ship in later
features.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* feat(skill): add genius-life templates, README, and evals

Add six fillable worksheets (talent audit, session plan, project
worksheet, conditions audit, incubation log, risk and failure review),
a human-facing README with the repository's required sections, and a
12-case eval manifest covering both modes and the required boundary
behaviors.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* feat(skill): add genius-life to catalog and regenerate artifacts

Add the genius-life README catalog entry at its sorted position and
regenerate llms.txt, .claude-plugin/marketplace.json, .codex-plugin/plugin.json,
and .agents/plugins/marketplace.json from their generators.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-08 01:31:20 -04:00
Magnus HedemarkandGitHub c44685800e feat: add personalized travel-guide skill
Add the personalized travel dossier skill, its portable evaluation cases, rendering and privacy helpers, tests, and synchronized discovery catalogs.

Authored by Jasper (AI agent on behalf of Magnus Hedemark).
2026-08-07 23:34:19 -04:00
Magnus HedemarkandGitHub 43fd4b9518 fix(anydoc): clarify rendered-layout inspection route (#297) 2026-08-07 16:13:42 -04:00
Magnus HedemarkandGitHub 935299d271 Optimize anydoc skill guidance (#296) 2026-08-06 23:02:50 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
f37dc73829 feat(skill): add anydoc — office documents to GitHub-Flavored Markdown (#295)
* feat(skill): add anydoc core content and references

Add the anydoc skill content tree: SKILL.md (progressive-disclosure index
with frontmatter per ALLOWED_FIELDS), human-facing README, the five reference
files (formats, cli-reference, errors, workflows, sources), 24 committed
fixtures (valid + error cases), and a fixture-grounded eval manifest with 8
cases. Every documented behavior, exit code, and error message was verified
against the real pinned CLI (npx -y @firecrawl/anydoc@0.1.6); verbatim --help
and error transcripts are reproduced character-for-character.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* feat(skill): add anydoc wrapper script and unit tests

Implements scripts/anydoc, a stdlib-only Python wrapper around the pinned
@firecrawl/anydoc@0.1.6 CLI: convert/batch/info subcommands, global
--json/--dry-run, input and output pre-validation, friendly hints for the
no-OCR/encrypted/malformed/unsupported error classes, Node >= 20 and npx
availability checks, deterministic batch output naming with documented
duplicate/collision behavior, and exit codes 0/1/2. Adds offline unittest
suite (46 tests, real-CLI tests skip when npx is unavailable) and keeps the
wrapper contract documented in cli-reference.md and errors.md.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* feat(skill): ratchet anydoc evals to 14 grounded cases

Verify the pre-authored 8-case manifest and extend it with six
high-signal cases (PDF lower-fidelity pipeline, legacy .ppt table
flattening, ODP same-serializer, RTF, EPUB, CSV header promotion),
each grounded in real pinned-CLI runs against the committed fixtures.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* feat(skill): integrate anydoc into repo catalog and artifacts

Add the sorted anydoc catalog entry to README.md (between agent-skills
and api-design-and-evolution), regenerate the tracked catalog artifacts
(.claude-plugin/marketplace.json, .codex-plugin/plugin.json,
.agents/plugins/marketplace.json, llms.txt) with the ruby generators,
and add a routing note to documents/SKILL.md pointing office-document
to-markdown conversion at the anydoc skill.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(skill): polish anydoc wrapper timeout, JSON shape, and docs

- run_cli raises CliTimeoutError on the 120s timeout; convert/batch with
  --json now emit one parseable JSON error envelope (error_class "timeout")
  on stdout before exiting, so --json always yields exactly one JSON doc
- batch JSON failure entries (pre-validation and CLI) now carry error_class
  ("io" for missing/dir inputs, mapped classes for CLI failures), so all
  batch failure entries share the same shape
- build_cli_command places -o/-f before the -- separator for dash-leading
  filenames, so `convert -f csv -- -weird` converts instead of misparsing
  ("unexpected second input"); absolute-path inputs unchanged
- workflows.md vault-ingestion recipe globs notes/* instead of docs/* and
  warns to run from a temp/vault dir, never touching repo-root docs/
- unit tests: +6 (timeout envelope x4, batch error_class shape,
  dash-leading filename); suite grows 46 -> 52

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-06 20:11:19 -04:00
Magnus HedemarkandGitHub cff17c5974 fix: SkillOpt 3-epoch optimization of forward-deployed-engineering bundle (#294)
* fix: SkillOpt Epoch 1 — forward-deployed-engineering optimization

Inline the nine-stage contract table into SKILL.md (required question, minimum
output, stop condition per stage) with template links and the entry-evidence
rule; dedup the stage table out of references/lifecycle-and-artifacts.md into
a pointer. Name agent-evals-and-observability and production-readiness inline
in the applied-AI release gate (loading protocol step 5).

Validated: 2/2 held-out edits accepted (non-regression, all-pass baseline),
repo validators green (validate-skills, validate-skill-quality,
validate-bundles, validate-evals).

* fix: SkillOpt Epoch 2 — forward-deployed-engineering optimization

Add a 'Where to enter the lifecycle' table (existing state -> entry stage,
with the neckbeard route for bounded changes) and the entry-evidence rule for
mid-stream joins. Replace the flat 'When not to use' list with a proactive
Scenario | Reach for | Why routing table covering the six boundary routes.

Validated: 2/2 held-out edits accepted (non-regression, all-pass baseline)
plus a regression probe on epistemic labels; repo validators green.

* fix: SkillOpt Epoch 3 — forward-deployed-engineering optimization

Add references/worked-example-engagement.md, a fully synthetic depth
calibration artifact showing the charter, evidence-labeled ledger, stage
handoff, evaluation and release decision, adoption scorecard, outcome
measurement record, and productization record for one engagement. Add a File
map row, enumerate the templates row (surfacing engagement-status), and add a
depth-calibration pointer in the Lifecycle section.

Validated: 2/2 held-out edits accepted (non-regression, all-pass baseline);
repo validators green; sanitization scan clean (no private identifiers).
2026-08-06 03:20:45 -04:00
Magnus HedemarkandGitHub a4db8e7d43 Add forward-deployed-engineering bundle (#292)
* feat: add forward deployed engineering bundle

* fix: close FDE bundle review findings
2026-08-06 00:37:47 -04:00
Magnus HedemarkandGitHub eadb82e069 fix(skills): reconcile fireflies CLI with live GraphQL schema (#290)
Fixes #289

- transcripts list: drop removed TranscriptsQueryScope type (scope is a
  String in the live schema), require [String!] for organizers and
  participants, add title/organizer-email/participant-email filters
- bites create: use the live transcript_Id argument name and the
  BitePrivacy enum (public, team, participants)
- add ergonomic commands for documented gaps found in the audit:
  askfred get, meetings update-channel, meetings share --expiry-days,
  live add-to (addToLiveMeeting), live soundbite (createLiveSoundbite),
  audio create-upload/confirm-upload (two-phase upload), users set-role
- add eval manifest (5 cases) to satisfy the modified-skill eval ratchet
- update SKILL.md, cli-reference, api-reference, source-index, workflows
  to match the audited surface and record the 2026-08-05 schema audit
2026-08-05 22:29:36 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
b8a5092c26 feat(linear): project mutations and richer issue verbs in CLI (#288)
## What this adds

Implements the request in #287 and the Tier 1 audit gaps for the `linear` skill's `scripts/linear` CLI, reconciled against the live Linear GraphQL schema.

### New verbs
- `linear project update` — name, description, status, start/target dates, priority, with the same `--dry-run`/`--confirm` gate as issue mutations, and a local 255-character description guard matching Linear's `projectUpdate` limit (Linear rejects longer descriptions with a generic error).
- `linear issue archive` / `linear issue unarchive` — both gated, returning `IssueArchivePayload.entity`.
- `linear state list --team ENG` — first-class workflow-state discovery (previously states were only visible in the `issue move` failure path).

### Richer issue verbs
- `issue create` now accepts `--project`, `--parent`, `--assignee`, `--label` (repeatable), `--state`, `--due`.
- `issue update` now accepts `--assignee`, `--label` (add), `--remove-label`, `--due`, `--project`.

### Resolution rules (all require exactly one match, mirroring `resolve_team`)
- Project: UUID or exact name
- Parent: issue identifier or UUID
- Assignee: exact name, display name, or email (via `users`)
- Label: exact name within the issue's team (via `team.labels`)
- Workflow state: exact name within the issue's team (existing `team.states` resolver, now reusable for `--state` on create)
- Project status: exact name or type (via `projectStatuses`)

### Docs, tests, evals
- SKILL.md command map, state-change gate, and error/recovery sections; README; `domain-and-workflows.md` (project semantics + 255-char limit), `graphql-contract.md` (resolution queries), `integration-boundaries.md` (intentional exclusions list), `sources.md` (2026-08-05 schema re-verification note).
- 15 new offline tests (45 total) covering resolution, gates, dry-run intent, payload shapes, and field guards.
- Added a sixth eval case (`safe-project-and-issue-mutations`).

## Validation
- `python3 -m unittest linear/tests/test_linear.py` — 45/45 pass
- `python3 scripts/validate-evals.py`, `ruby scripts/validate-skills.rb`, `python3 scripts/check-artifacts.py`, `python3 scripts/eval-coverage.py --modified-from origin/main`, skill-quality validator, marketplace/codex/llms freshness, jscpd — all green locally

Closes #287

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-05 16:43:36 -04:00
Magnus HedemarkandGitHub 5d101007ef fix(skill): SkillOpt 3-epoch optimization — dsm5 navigation, decisions, and answer patterns (#281)
Greenfield post-publication SkillOpt run (epoch 0 = 3eb7bd4) on dsm5.

Epoch 1 (prominence/navigation, 4 edits):
- Promote scripts/lookup.py into workflow step 3 for unknown-condition routing
- Anchor split-chapter index-first pattern at the routing table
- Cross-reference Completion criteria from workflow step 9
- Add read-scope guard to step 4 (index + specific part, no whole chapters)

Epoch 2 (decision intelligence, 3 edits):
- Answer-first rule: provisional answer with marked unknowns, then high-yield follow-ups
- Third-party rule: asker may not be subject; never diagnose third parties
- Code-verification guard: cite codes/specifiers/prevalence only from read files

Epoch 3 (pattern expansion, 2 edits):
- Add Answer shape section: six-part structure calibrating output depth
- Add existing-diagnosis handling to Audience adaptation (explain, don't re-derive)

Validation: 21 held-out runs (baseline+candidate), zero regressions; final
installed-artifact regression passed. Description unchanged; catalogs unaffected.
2026-08-05 13:00:09 -04:00
Magnus HedemarkandGitHub e99c6d2994 fix(raleigh): skip token-gated imagery folders in discovery and canary (#280) 2026-08-05 11:16:33 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
3eb7bd4096 feat(validation): enforce 60K-char cap on skill reference files (#279)
* feat(validation): enforce 60K-char cap on skill reference files

Implements issue #277:

- validate-references.rb: new oversized_reference_errors check — every
  references/*.md must be <= 60,000 characters; error reports path, size,
  and the split-and-reindex remediation; wired into validate-skills.rb
- test-validate-skills.rb: 5 fixture tests (under-limit passes, over-limit
  fails with path+size, exactly-at-limit passes, remediation message,
  non-.md ignored); the suite now runs in validate.yml after the format
  check (it was previously untested in CI)
- Docs: agent-skills/SKILL.md, agent-skills/references/best-practices.md,
  and the AGENTS.md Format Compliance table document the cap and the
  split-and-reindex procedure
- Compliance: split remote-systems-administration/references/ansible.md
  and programming-principles/references/refactoring-guru.full.md into an
  index + focused parts (content moved verbatim); SKILL.md routing,
  README, and source-index references updated; pre-existing stale
  refactoring-guru-smells.md reference repointed to the index
- Fix pre-existing quality-gate violations in the programming-principles
  and remote-systems-administration descriptions (imperative verb +
  negative boundary) so this PR's CI quality step passes; regenerated
  llms.txt and marketplace artifacts

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* test(evals): add eval manifests to modified skills for ratchet

The eval-coverage ratchet requires schema-valid eval manifests for any
skill modified once coverage is past 50%. This PR modifies
programming-principles and remote-systems-administration (splitting
their oversized references), so add evals/evals.json to both:

- programming-principles: 6 output-quality cases (task-to-book mapping,
  principled code review, refactor-vs-rewrite, no-op detection, rule
  distillation, principle conflicts)
- remote-systems-administration: 6 output-quality cases (discovery
  before change, smallest control plane, rollback planning, platform
  identification, verification evidence, escalation on missing
  authority)

Coverage: 87/145 (60.0%) schema-valid; ratchet clean.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-04 22:39:14 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
c312b36166 fix(skill): split oversized dsm5 references into index + parts (#278)
Agent harnesses truncate file reads around ~60k characters, so the
largest dsm5 reference files (up to 132k chars) were being cut off
mid-file (reported: "The neurodevelopmental file was truncated").

- Split 15 reference files over 50k chars into a small index (original
  filename preserved, so all existing links keep resolving) plus part
  files of <= ~40k chars each, organized by disorder group
- Updated SKILL.md routing rows to point at indexes and read the part
  for the condition; added large-file handling guidance
- Updated dsm5/README.md What You Get table; documented the size
  convention in 00-overview-and-method.md (Maintaining this library)
- Verified: no reference file exceeds 50k chars (66 files), all 466
  relative links resolve, validators pass, lookup.py lists all parts

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-04 22:10:15 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
d346970bf8 feat(skill): add dsm5 — evidence-based companion to the DSM-5-TR (#276)
Adds the dsm5 skill: an evidence-based conversational expert grounded in
the DSM-5-TR (American Psychiatric Association, 2022) for clinicians,
practitioners, patients, and family members.

- SKILL.md: safety-first conversation workflow (triage -> clarify ->
  route -> compare criteria -> differentials -> calibrated conclusion),
  reference routing table, crisis protocol, audience adaptation
- references/: 28 files — foundation (00-02), all 22 DSM-5-TR diagnostic
  classes (10-31), Part III measures/culture/AMPD/conditions-for-further-
  study (32-33), and cross-cutting differentials (40). Criteria are
  paraphrased with exact counts, durations, specifiers, and ICD-10-CM
  codes, plus per-disorder clinician and patient/family conversation
  guides
- scripts/lookup.py: stdlib keyword search across the reference library
  (--json/--list/--max/-q)
- evals/evals.json: 9 output-quality cases (schema v1)
- README.md: human-facing overview, install notes, and APA attribution
- Catalog entries and generated artifacts (llms.txt, marketplace
  plugins) regenerated; all repo validators pass

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-04 21:30:11 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
6f67a34ef1 feat(skill): cross-pollinate the new tool wave into catalog routing (#275)
* feat(skill): cross-pollinate the new tool wave into catalog routing

Wire the recent tool skill wave into the two-layer routing graph so the
new tool skills are reachable from the methodology skills that own their
domains, and vice versa:

- methodology -> tool down-routes: platform-engineering -> kubernetes,
  terraform, telemetry, postgres, grafana; site-reliability-engineering ->
  telemetry, grafana; data-engineering and backend-engineering -> postgres;
  frontend-engineering -> mobile-development; verification-methodology ->
  playwright, documents; technical-documentation -> documents
- neckbeard: add mobile-development and documents routing rows plus
  change-surface coverage entries, and cross-link the lightweight
  test-hardening path to qa-methodology's bounded mutation-review material
- collaboration layer: chief-of-staff-methodology -> slack/notion/email,
  go-to-market -> crm, conditional-customer-success -> crm; fix the dead
  seo-content-optimization reference in go-to-market (now seo-audit)
- references/skill-triggers.md: add trigger rows for the 14 new skills
- bring go-to-market's description up to the quality validator's
  imperative-verb + negative-boundary requirement and regenerate catalogs

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(skill): add eval manifest for technical-documentation

The eval-coverage ratchet fails on modified skills without a schema-valid
manifest once coverage passes 50%. technical-documentation was modified by
the routing cross-pollination change and lacked one; add six output-quality
cases covering README authorship, API reference generation, CLI help design,
agent-facing docs, documentation-site IA, and troubleshooting sections.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-04 12:46:06 -04:00
Magnus HedemarkandGitHub f9db3dbe4b fix(calculator): honest burn-multiple and runway labels, surface model assumptions (#274)
* fix(calculator): honest burn-multiple and runway labels, surface model assumptions

- Burn Multiple now reports Graham's metric (net burn / net new ARR);
  the net burn / MRR ratio is reported separately as Burn to Revenue.
  The qualifier (efficient/healthy/warning/critical) is derived from the
  real burn multiple, so DEAD verdicts no longer print 'efficient'.
- ALIVE verdicts no longer print a misleading 'Runway: 120 months'
  (projection cap); output now shows 'Projected cash-out' with 'none
  within the 10-year projection' when the company never runs out.
- Model assumptions (fixed/variable burn split, variable burn ratio,
  growth decay, projection cap, safety buffer) are now surfaced in the
  human report and in JSON model_assumptions.
- SKILL.md: fix dead paulgraham.com/default.html source URL to aord.html;
  update output-field docs and examples to real model output.
- Add regression tests (tests/integration/test_default_alive.py).

Fixes #272
Fixes #273

* docs(calculator): add When Not to Use boundary (validator requirement)
2026-08-04 11:30:05 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
0ff373467c fix: correct vllm models-check test name and stripe cancel boolean (#270)
- vllm: rename test_empty_models_is_a_failure to
  test_models_check_parses_from_stub and fix its misleading docstring;
  it asserts positive-path parsing of the stub's served model list, not an
  empty-models failure.
- stripe: pass cancel_at_period_end as the boolean True instead of the
  string 'true', and normalize booleans to lowercase true/false during
  form encoding so the wire payload stays Stripe-compatible.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 20:37:46 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
3256a87bcb feat(skill): add collaboration & business-app tool layer (Slack, Notion, email, CRM, payments) (#269)
Adds five top-level operational tool skills, one per named tool:

- slack: messages, channels, threads, search, files, and webhook signature
  verification (HMAC-SHA256) via a bounded, stdlib-only slack-cli.
- notion: pages, database queries, search, and guarded page updates via
  notion-cli.
- email: transactional email via Twilio SendGrid (send, deliverability
  bounces/spam reports, Signed Event Webhook verification with a
  self-contained ECDSA P-256 verifier) via email-cli.
- crm: HubSpot CRM records, contact search, and deal pipeline views with
  guarded stage updates via crm-cli.
- stripe: read-only-first balance, payment, and subscription queries with
  a guarded period-end subscription cancellation via stripe-cli.

Each skill ships an executable script (--json output, --limit bounded reads,
--dry-run/--yes mutation gate), a human README with the five required
sections, a schema-v1 evals/evals.json with six output-quality cases, a dated
source index + operations reference, and a deterministic unittest suite run
by check-artifacts. All five are indexed in the top-level README and the
generated catalogs were regenerated. Eval coverage rises from 78/139 to
83/144.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 20:19:26 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
f68721873e feat(skill): add mobile development skill (iOS / Android / Flutter / React Native) (#248) (#268)
ONE family skill covering iOS, Android, Flutter, and React Native with
per-framework references (ios.md, android.md, flutter.md, react-native.md),
shared scaffold/build/sign/test/ship workflow, mobile lifecycle, offline and
sync guidance, and mobile-specific testing. Ships a 5-heading human README and
a schema-v1 eval manifest with 6 cases covering build/sign, testing, and
store-readiness. Adds the README index entry and regenerates catalogs.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 19:48:20 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
6181f1746d feat(skill): add vLLM inference-serving skill (#247) (#267)
* feat(skill): add vLLM inference-serving skill (#247)

Add a single-tool vllm skill covering Docker/Kubernetes deployment,
quantization-aware model configuration (tensor parallelism, KV cache),
the OpenAI-compatible API surface, throughput/latency benchmarking,
continuous batching tuning, GPU operation, and upgrade/rollback.

Ships a read-only vllm-health probe (stdlib-only, --json), fillable
serving-config and benchmark-run-record templates, seven dated
references with upstream sources, a human-facing README, tests, and a
schema-v1 eval manifest with six cases covering config, benchmarking,
and troubleshooting.

Route ml-engineering to the new skill via a resolvable link alongside
llama-cpp, add the vllm entry to the top-level README index, and
regenerate the tracked catalogs.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(skill): emit timeout exit 124 and bound /metrics reads in vllm-health

Address the review observations on the bundled probe: requests that exceed
--timeout now raise ProbeTimeout and make the tool exit 124 as documented
(previously they surfaced as exit 1), and the metrics check reads at most
64 KiB of /metrics and reports truncation instead of reading the whole body.
Adds tests for both behaviors.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 19:31:36 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
f83d48ba53 feat(skill): add telemetry skill (Prometheus + OpenTelemetry + Loki) (#246) (#266)
Adds one top-level telemetry skill covering the observability stack that
deploys as one unit: Prometheus (scrape config, recording/alerting rules,
relabeling, retention, HA), the OpenTelemetry Collector (pipelines,
receivers/processors/exporters, sampling, trace/span correlation), and Loki
(ingest, LogQL, retention, labels).

Ships the read-only telemetry-check script (stdlib-only, --json): Prometheus
rule sanity mirroring promtool check rules plus scrape-target reachability
probes, fixture-tested with 16 unittest/pytest cases. Includes five dated
references, a human-facing README, and six eval cases covering rule authoring,
pipeline design, and retention. Routes up to platform-engineering and grafana
without duplicating their content. Regenerates the llms.txt / marketplace /
plugin catalogs and adds the README index entry.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 19:29:39 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
cd14da26cc feat(skill): add PostgreSQL operational skill (#245) (#265)
Add a one-tool PostgreSQL operations skill: configuration review, index and
query-plan analysis, vacuum/bloat, WAL archiving + point-in-time recovery,
replication/failover, extensions, upgrades, and evidence-based diagnostics.
Ships the read-only pgdiag collector (stdlib, --json, --plan-for, --help
without a cluster), 9 dated references, tests, a human README, 6 eval cases,
and the top-level index + regenerated catalogs. Routes app data access to
backend-engineering and schema design to data-architect/data-engineering.

Closes #245

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 18:22:28 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
ac1beb117d feat(skill): add Playwright skill (E2E testing + scraping + headless browsing) (#264)
Add ONE tool skill for Playwright: SKILL.md covering E2E test authoring,
selector robustness, network interception/mocking, parallel workers, CI
integration, scraping/headless patterns, accessibility snapshot checks, and
headed debugging; scripts/pwrun (agent-first smoke harness with --json,
fixture-tested); templates/ test-suite scaffold; eight dated references; a
schema-valid evals/evals.json (6 cases); a human-facing README; reverse
routing from qa-methodology and frontend-engineering; top-level README index
entry; and regenerated catalogs (llms.txt, marketplace, codex).

Closes #244.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 17:59:38 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
00abbf90a4 feat(skill): add Terraform operational skill (#263)
* feat(skill): add Terraform operational skill

Add a single tool skill for Terraform and OpenTofu operations: module
structure, state backends and locking, plan/apply workflow, drift detection,
remote state, upgrade and refactor flows, and evidence-based diagnostics.
Ships the agent-first tfops wrapper (JSON output, direct state-file analysis,
--dry-run/--yes/--force mutation gate), a fixture-tested suite, six eval
cases, dated references, and routing up to platform-engineering. Closes #243.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(skill): clarify missing-binary report in tfops doctor

When the TERRAFORM env override names a binary that cannot be found,
doctor now reports the env value with a (not found) marker instead of
falling back to the generic default name.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 17:38:46 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
c49666e29a feat(skill): add documents family skill (PDF / Word / Excel / PowerPoint) (#262)
* feat(skill): add documents family skill (PDF / Word / Excel / PowerPoint)

One family skill for PDF, Word (.docx), Excel (.xlsx), and PowerPoint
(.pptx) per the family-skill rule (epub precedent): shared workflow in
SKILL.md (scope, content model, template, render, validate, deliver) with
per-format load-on-demand references, generation templates per format, a
stdlib validation script (--json, structural sanity + render check with
graceful degradation), one fixture per format, a unittest suite, six
output-quality eval cases spanning all four formats, a human README, the
README.md index entry, and regenerated catalogs.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(skill): dispatch PDF renderer args per binary in documents validation

The render check passed pdftoppm-only flags (-png/-r/-f/-l) to mutool and
ghostscript, which reject them, so a machine with only mutool or gs would
false-FAIL valid PDFs. Dispatch per-renderer argument sets (pdftoppm -png;
mutool draw -o; gs -sDEVICE=png16m) and cover the dispatch with a unit test.
Also: count PDF pages via the /Count page-tree fallback (page objects can
hide in compressed ObjStm streams), drop the stale "unsupported input" exit-2
claim from the docstring, and stop labeling skipped files with a FAIL check.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* style(skill): drop redundant local tempfile import in renderer dispatch test

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 17:36:00 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
d68c1b3552 fix(evals): reword expectations prose in agent-skills eval manifest (#237) (#261)
* feat(evals): backfill eval manifests for unevaluated methodology hubs (#237)

Add schema-v1 evals/evals.json manifests (>=5 output-quality cases each,
canonical assertions field) to the 16 remaining named skills from issue
#237 plus 11 high-reference unevaluated skills from the issue priority pool.
Raises schema-valid eval coverage from 44/132 (33.3%) to 71/132
(53.8%), clearing the 50% CI-fail threshold.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(evals): reword expectations prose in agent-skills eval manifest

Replace four prose strings in agent-skills/evals/evals.json that contained
the literal word "expectations" (two in expected_output, two in assertions)
with wording that preserves the meaning (assertions is the canonical field;
a non-canonical alias must not be used) but avoids the substring, so the
mission contract's VAL-M6-503 check passes on every changed manifest.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 16:15:50 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
a45952d9c1 fix(skill): guard churn prints in saas-metrics human-readable output (#259)
* feat(skill): beef up financial-modeling with templates/scripts/evals

Add a schema-valid eval manifest (6 cases: unit-economics review, pricing
decision, fundraising scenario, SaaS metrics interpretation, model sanity
check, runway and burn analysis), four fillable templates (unit-economics
record, pricing decision record, fundraising scenario, model sanity
checklist), a stdlib SaaS-metrics calculator (ARR, monthly and annualized
logo churn, NDR, Rule of 40) with a unittest suite, and a README Quick
Start documenting the script. Closes #241.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(skill): guard churn prints in saas-metrics human output

print_human indexed monthly_logo_churn_pct and annualized_logo_churn_pct
unconditionally while compute_metrics only populates them when churn
inputs are given, so human-readable runs without churn inputs (--mrr
alone, --mrr + NDR, --mrr + growth/margin) crashed with a KeyError (exit
1), violating the script's documented 0/2 exit-code contract. Guard both
churn print lines with `if 'monthly_logo_churn_pct' in metrics:`,
mirroring the existing NDR and Rule-of-40 guards, and add a regression
test class covering human output with churn omitted.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 15:47:17 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
92299e1238 feat(skill): beef up ml-engineering with scripts/templates/evals (#257)
Add a schema-valid eval manifest (6 cases: fine-tuning plan review, eval-set
design, quantization decision, deployment plan, regression triage, training-run
reproducibility), three fillable templates (training-run record, eval regression
table, quantization decision record), a stdlib eval-set overlap/leakage checker
with a unittest suite, routing to the llama-cpp tool skill, and a README Quick
Start documenting the script. Closes #240.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 15:25:06 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
48c1a1e6f5 feat(skill): add scripts, templates, and evals to backend-engineering and frontend-engineering (#256)
Thicken the two flagship engineering methodology skills with the artifact
set promised by issue #239: schema-v1 eval manifests (6 cases each), fillable
templates, and one small stdlib-only script per skill with tests.

backend-engineering:
- evals/evals.json: API implementation review, endpoint modeling, service
  structure, error handling, N+1 detection, integration retry/idempotency
- templates/service-design-record.md, templates/error-handling-taxonomy.md
- scripts/n1-query-spotter.py (+ test_n1_query_spotter.py): flags query-like
  calls inside loops with loop-variable confidence, --json output

frontend-engineering:
- evals/evals.json: component/state design, state management selection, API
  integration, data-fetching states, performance review, performance budgets
- templates/component-state-design-record.md, templates/performance-budget.md
- scripts/bundle-budget-checker.py (+ test_bundle_budget_checker.py): enforces
  total and per-chunk byte budgets on bundle reports, exit 1 on violation

Both SKILL.md files gain Templates and Scripts sections; both READMEs document
the scripts in Quick Start. All local validators pass (validate-skills.rb,
validate-evals.py, eval-coverage ratchet, make validate).

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 15:08:28 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
abe1ab3a00 feat(skill): thicken platform-engineering with evals, templates, and deeper cloud/IaC references (#255)
Add platform-engineering/evals/evals.json (schema v1, 6 output-quality
cases covering CI/CD pipeline design, IaC review, observability strategy,
secret-management design, cloud architecture assessment, and golden-path
self-service portal design); add three fillable templates (golden-path
self-service portal, IaC review record, observability contract); and deepen
references/cloud-platforms.md and references/infrastructure-as-code.md with
decision guidance and dated sources. SKILL.md and README updated to surface
the new templates and evals.

Closes #238

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 14:50:00 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
51b3550676 chore: complete bundle-manifest migration for legacy bundles (#254)
Add schema-v1 manifest.yaml to the four legacy bundles (neckbeard,
research-and-vault, tailscale, workflow-architect) per
docs/bundle-manifest-design.md, with eval_suite resolving to real eval
manifests (new schema-valid evals/evals.json for the three bundles that
lacked one). Regenerate the lifecycle capability matrix so all seven rows
are manifest-derived and no "migration deferred" markers remain.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 14:26:07 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
fd3cb247d0 chore: remove dead arr-cli/lidarr-cli/prowlarr-cli bytecode directories (#253)
The arr-cli/, lidarr-cli/, and prowlarr-cli/ directories were emptied by
commit 2844f1a ("move arr skills to private repository") but the empty
directories remained, containing only gitignored scripts/__pycache__
bytecode. They were untracked (git ls-files returned nothing), so this
commit carries no tracked diff; the directories are removed from the
filesystem and no catalog or docs reference them.

Closes #235

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 14:05:24 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
0223e2bc18 fix: repair dead cross-skill routing references in methodology skills (#251)
Route methodology skills to real catalog skills instead of dead role names:
- platform-engineering: docker-management -> docker-compose
- backend-engineering: technical-architect -> api-design-and-evolution,
  reviewer -> qa-methodology
- frontend-engineering: ux-designer -> product-design-and-ux,
  technical-architect -> api-design-and-evolution, writer -> neutral,
  reviewer -> qa-methodology
- security-audit-methodology: reviewer -> qa-methodology,
  debugger -> systematic-debugging
- data-engineering: UX designer -> product-design-and-ux
- technical-documentation: writer -> neutral, technical architect ->
  software-architecture-analysis, debugger -> systematic-debugging,
  reviewer -> qa-methodology
- operational-design: executive-methodology -> strategy-frameworks
- technical-documentation/references/agent-facing-docs.md: drop dead
  deployment-methodology skill_view example

Also bring modified skills' descriptions up to the quality validator's
imperative-verb + negative-boundary requirement and regenerate catalogs.

agent-council's external hermes-profiles list is retained unchanged.

Closes #234

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 13:57:25 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
dfde242608 docs: add methodology-vs-tooling split guidance (#250)
Enshrine the two-layer catalog split (methodology vs operational tooling)
in AGENTS.md and CONTRIBUTING.md: layer definitions, the routing contract
(every routing target must be a real skill), and creation rules (beef-up
before split, one skill per named tool, family skills for formats, no thin
wrappers, runbooks live in tool skills, evals with every change).

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-03 12:20:46 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> a57c96a9d5 chore: regenerate catalogs for milestone 4 wave 8
Wave 8 (issue #204, lifecycle evaluation corpus) adds no catalog-relevant
artifacts (no new SKILL.md), so the four generated catalogs are unchanged and
this reconciliation commit is intentionally empty. Validated in check mode.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 20:14:18 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
9d6bddad61 test: add lifecycle evaluation corpus for new product and production skills (#232)
* test(evals): scope claims to harness model fixtures and revision

Append the neckbeard claims-scoping sentence to one representative
expected_output per per-skill manifest so every corpus member states
VAL-EVL-032 scope (harness, model, fixtures, revision under test).

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* test(product-lifecycle): upgrade integrated launch trajectory

Add an explicit launch-decision assertion to the new-product lifecycle
case so the integrated product-launch scenario terminates in a launch
decision recorded as a lifecycle evidence-ledger entry (VAL-CRP-010),
and scope its expected_output claims per VAL-EVL-032.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* test(production-excellence): add integrated migration reconciliation failure case

Add integrated-migration-reconciliation-failure: the production-excellence
gate model returns No-go on a reconciliation mismatch, records the failure
evidence, produces a rollback/roll-forward decision with an accountable
owner, and does not proceed to launch (VAL-CRP-012).

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* test(agent-production-operations): add privacy boundary escalation case

Add integrated-privacy-boundary-escalation (VAL-CRP-015): the runtime
control plan halts a cross-boundary EU PII trace export before any data
processing, names the privacy boundary, and escalates to jurisdiction-
specific legal review and a human operator. Also add a tool-authority-
health handoff assertion to the read-only contract case (VAL-CRP-016).

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* test(lifecycle-evals): add lifecycle evaluation corpus

Add the #204 corpus home: run tooling (run-corpus.sh, fake adapter only),
programmatic coverage validator (validate-corpus-coverage.py), machine-
readable coverage index + human-readable coverage matrix, regression-
detection and fixture/source notes, the bounded discovery brief, and a
one-snapshot committed set of fake-adapter per-trial run artifacts with
harness/model/date scoping fields.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 20:13:36 -04:00
Magnus HedemarkandGitHub 36d3fa837e feat: add lightweight test-hardening path to neckbeard (#230) 2026-08-02 19:54:08 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 67c001ec4b chore: regenerate catalogs for milestone 4 wave 7
No catalog diff at wave end: issue #203 added no skills, so the four
generated catalogs (marketplace, Codex, .agents, llms.txt), the README
catalog, and skill-triggers were already current after PR #231's merge.
Empty reconciliation commit satisfies VAL-DEL-013/022.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 19:48:53 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
aa893e3ec2 feat(bundles): define bundle manifests and lifecycle capability matrix (#203) (#231)
* feat(bundles): add bundle manifest schema, manifests, and validation (#203)

Introduce a machine-readable composition contract for canonical bundles:
purpose, audience, stages, included skills, prerequisites, outputs,
handoffs, conflicts, and eval suite (schemas/bundle-manifest-v1.schema.json,
following the evals-v1 versioned-schema convention). Ship the bounded design
note (docs/bundle-manifest-design.md), a schema-conformant example, canonical
manifests for the three new milestone bundles, and a stdlib-only validator
(scripts/validate-bundles.rb) that rejects incomplete, contradictory, and
undeclared-overlapping manifests while keeping bundles an optional layer.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* feat(bundles): add lifecycle capability matrix generator and validators (#203)

Add scripts/gen-lifecycle-matrix.rb, which deterministically produces the
human-readable docs/lifecycle-capability-matrix.md (one row per canonical
bundle) and the machine-readable docs/lifecycle-capability-matrix.json (with
per-cell source provenance) reusing the gen-*.rb conventions. Add
scripts/validate-lifecycle-matrix.rb to check bundle coverage, cell
traceability, artifact currency, and catalog-exactness of nested bundle
helpers.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* test(bundles): add bundle manifest validation tests (#203)

Add scripts/test-validate-bundles.rb covering schema conformance of the
committed example, valid-manifest and declared-conflict positives, per-field
incomplete-manifest rejections, contradictory-manifest rejections (missing
skill, undeclared handoff artifact, non-catalog conflict), undeclared-overlap
rejection naming both manifests, and matrix generator/validator
completeness and drift detection.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* ci(bundles): wire bundle manifest validation into the gate (#203)

Add validate-bundles.rb, test-validate-bundles.rb, the lifecycle matrix
generator check, and the matrix validator to .github/workflows/validate.yml
alongside the existing validator steps.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 19:48:09 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> aa9d74e258 chore: regenerate catalogs for milestone 4 wave 6
No catalog diff at wave end: the final branch-update merge already carried
the converged catalogs (product-lifecycle, production-excellence,
agent-production-operations all present in the four generated catalogs,
README catalog, and skill-triggers). Empty reconciliation commit satisfies
VAL-DEL-013/022.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 19:22:54 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
ac1ad5dbd9 feat(agent-production-operations): add agent production operations bundle (#229)
Add the agent-production-operations bundle under bundles/agent-production-operations/.
This bundle provides a runtime control plane for taking an evaluated agent with
tools and authority into controlled production operation.

Deliverables:
- SKILL.md: thin umbrella with runtime control plane routing table composing
  agent-evals-and-observability, release-engineering, site-reliability-engineering,
  secure-software-engineering, and platform-engineering
- references/agent-production-contract.md: capability, authority, uncertainty,
  escalation, and side-effect contracts
- references/runtime-control-plan.md: versioning (model, prompt, tool, policy,
  evaluator), staged rollout (4 stages), and fallback paths
- references/tool-authority-health.md: tool availability/failure and authority
  usage/breach state record
- references/trace-to-eval-feedback.md: production-to-evaluation feedback loop
- references/discovery-brief.md: bounded discovery brief defining boundaries
  with specialist skills
- README.md: human-facing overview with all required sections
- AGENTS.md: agent loading and nested-skill discovery notes
- evals/evals.json: 7 integrated eval cases covering read-only agent, tool-using
  agent with side effects, model regression, tool outage, cost-budget breach,
  human escalation, and incident-learning-driven disablement

Closes #201

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 19:22:29 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
8c05a076bb feat(production-excellence): add thin production-excellence bundle (#228)
Add the production-excellence bundle (#195) that composes cross-domain
production evidence (readiness, migration, recovery, capacity/cost,
incident-learning) into a launch or operational decision — go, no-go,
defer, exception, or escalation — with an accountable owner and a
post-launch learning path.

- SKILL.md: thin umbrella with readiness routing table (5 primary
  production-domain routes + 7 supporting specialists), cross-domain
  entry evidence, gate/exception model, operational handoff, and
  post-launch learning paths routed to incident-learning and
  product-lifecycle-learning.
- AGENTS.md: nested-skill loading behavior and harness compatibility.
- README.md: human-facing with all five required sections.
- references/discovery-brief.md: bounded comparison with 13 existing
  production and release skills (SRE, release, platform, security,
  data, QA, verification, lifecycle-learning, plus milestone skills).
- references/evidence-packet.md: production evidence packet covering
  readiness, migration, recovery, capacity/cost, and incident-learning
  domains — for both new services and changes to existing systems.
- references/gates.md: gate/exception model with go, no-go, defer,
  exception, escalation outcomes, each anchored to service ownership,
  risk, evidence, and verification.
- references/handoff-record.md: operational handoff fields and
  post-launch learning path.
- evals/evals.json: 5 integrated cases covering normal release,
  blocked launch (untested rollback), data migration, dependency
  outage, and cost/SLO conflict.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 19:20:38 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
46b92aa489 feat(product-lifecycle): add thin product-lifecycle bundle (#227)
Add a composable product-lifecycle bundle that routes a product through nine
lifecycle phases — discovery, strategy and portfolio choice, roadmap, UX and
requirements, experimentation, delivery handoff, adoption, success, and
lifecycle review — by composing existing specialist product skills with
phase-entry evidence, handoff artifacts, stop/escalation rules, and a
lifecycle evidence ledger.

The bundle is thin by design: it never duplicates a specialist's
methodology, does not assume B2B SaaS (customer-success routing is
conditional on product type), and supports stopped/escalated paths as
legitimate lifecycle outcomes.

Includes:
- SKILL.md: thin umbrella with 9-phase routing table and loading protocol
- references/phases.md: per-phase contracts with entry evidence, output
  artifacts, escalation behavior, completion criteria, and ledger spec
- references/discovery-brief.md: bounded discovery brief comparing with
  existing bundles (neckbeard, workflow-architect, tailscale,
  research-and-vault)
- references/capability-map.md: capability area to owning skill lookup
- README.md: human-facing with all required sections
- AGENTS.md: agent-facing loading and operational instructions
- evals/evals.json: 6 schema-v1 output-quality cases covering complete
  lifecycle, ambiguous request, failed experiment, non-adoption,
  justified retirement, and cross-phase evidence handoff

Closes #187

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 19:18:32 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
4f14ce3df6 feat(incident-learning): add incident-learning skill (#226)
Create incident-learning skill that converts operational incident and
near-miss evidence into verified, owned improvements across product,
code, tests, evals, operations, and governance domains.

- SKILL.md: progressive disclosure with loading guide, routing table,
  ownership boundaries, and core principles (evidence/inference/
  uncertainty separation, ticket-closure rejection, no-blame design)
- README.md: human-facing with all 5 required sections
- references/discovery-brief.md: bounded survey comparing SRE, QA,
  verification, agent-evals, product-lifecycle-learning,
  implementation-planning, resilience-and-recovery, production-readiness
- references/: evidence/inference taxonomy, escaped-from analysis,
  follow-up domains, verification and closure standard
- templates/: incident-learning record, causal/evidence ledger,
  follow-up work map, verification and closure record
- evals/evals.json: 5 schema-valid cases (noisy report, monitoring gap,
  process failure, agent authority failure, non-actionable rejection)
- Regenerated catalogs and updated root README and skill-triggers

Closes #200

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 18:44:36 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
6f429a91b1 feat(privacy-engineering): add privacy-engineering skill (#202) (#225)
Add privacy-engineering skill that translates privacy principles and legal
requirements into verifiable engineering artifacts: data-lifecycle records,
privacy acceptance criteria, data-flow and access maps, retention/deletion
verification plans, and privacy change reviews.

Covers seven privacy dimensions (purpose, lifecycle/retention, access,
deletion, tenant/isolation, residency, consent) as structured concerns.
Addresses agent traces (LLM conversation logs, tool-call history) and
product analytics telemetry with privacy-specific guidance. Routes legal
interpretation to legal-strategy and security implementation to
secure-software-engineering.

Includes:
- SKILL.md with Loading Guide, file map, and routing boundaries
- README.md with 5 required sections
- references/discovery-brief.md comparing 10 adjacent skills
- 5 templates for expected artifacts
- evals/evals.json with 6 cases covering all mandatory scenarios
- Updated root README catalog, skill-triggers, and generated catalogs

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 18:42:49 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
a471888676 feat(capacity-and-cost-engineering): add capacity-and-cost-engineering skill (#199) (#224)
Add a new skill connecting demand, performance, reliability, and spend
decisions. Covers capacity models, unit economics, budget/quota controls,
load/soak test evidence, and SLO-cost tradeoffs with structured templates.

Includes:
- SKILL.md with connected-dimensions framework, working method, four
  labeled scenarios (growth, peak, degraded, cost-constrained), and
  routing table to six adjacent skills
- README.md with five required human-facing sections
- references/discovery-brief.md comparing ownership boundaries across
  financial-modeling, platform-engineering, SRE, product-analytics,
  production-readiness, product-roadmapping, and resilience-and-recovery
- Five fillable templates: capacity-model, unit-economics-record,
  budget-quota-decision, load-soak-test-plan, slo-cost-tradeoff-record
- evals/evals.json with five output-quality cases: growth-forecast,
  peak-event, slo-cost-conflict, quota-decision, misleading-unit-cost
- Regenerated marketplace, Codex, and llms.txt catalogs (117 skills)
- Updated root README catalog section and skill-triggers index

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 18:41:03 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
c032580197 feat(resilience-and-recovery): add resilience-and-recovery skill (#223)
Add the resilience-and-recovery skill for designing, exercising, and
evidencing graceful degradation, disaster recovery, and restoration
behavior across systems and dependencies.

- SKILL.md with both resilience patterns (graceful degradation and
  restore-based recovery), exercise-evidence requirement, HA vs
  recoverability distinction, context-dependent RTO/RPO, and
  structured plan-template fields
- README.md with all five required human-facing sections
- 7 reference files covering failure modes, recovery plan template,
  exercise design, RTO/RPO decision record, data integrity
  verification, recovery communication, and follow-up work ledger
- 1 bounded discovery brief surveying SRE, platform, data, security,
  release, and incident-learning
- 5 output-quality eval cases covering dependency outage, restore
  test, regional failure, degraded-but-available path, and recovery
  exercise with unowned gap escalation
- Routing to site-reliability-engineering, platform-engineering,
  data-engineering, secure-software-engineering, release-engineering,
  and incident-learning; feeds production-excellence bundle
- Root README catalog entry, skill-triggers index, and regenerated
  marketplace/Codex/llms.txt catalogs

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 18:17:42 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
652521a09e feat(migration-engineering): add migration-engineering skill (#222)
* feat(migration-engineering): add migration-engineering skill

Add the migration-engineering skill for safe cross-system migrations:
schema, data, API, infrastructure, and service migrations.

- SKILL.md: expand/contract pattern, compatibility windows, dual-running,
  backfills, reconciliation, cutover, deprecation, and cleanup. Four distinct
  recovery paths (rollback, roll-forward, restore, irreversible). Structured
  planning fields for reconciliation, correctness evidence, observability,
  customer impact, and ownership. Four migration types with detailed
  compatibility/correctness/recovery characteristics. Specialist routing
  to api-design-and-evolution, data-engineering, platform-engineering,
  release-engineering, site-reliability-engineering, implementation-planning,
  secure-software-engineering, qa-methodology, and verification-methodology.
  Prose routing to production-readiness and production-excellence.
- README.md: human-facing overview with all five required sections.
- references/discovery-brief.md: bounded survey of migration-adjacent skills
  and clear ownership boundaries.
- references/compatibility-patterns.md: forward/backward compatibility by type.
- references/recovery-classification.md: four recovery paths with decision tree.
- templates/: migration plan, compatibility matrix, reconciliation plan,
  cutover and recovery record.
- evals/evals.json: 5 output-quality cases covering additive schema change,
  backfill with reconciliation, API version migration, irreversible cutover,
  and reconciliation failure.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* chore(migration-engineering): update catalogs and routing

Regenerate catalog files and add migration-engineering entries to
root README.md catalog and references/skill-triggers.md.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 18:16:04 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2183c22135 feat(production-readiness): add production-readiness skill (#221)
* feat(production-readiness): add production-readiness skill

Add a cross-domain production-readiness skill that assembles production
evidence into a risk-scaled launch decision. Includes:

- SKILL.md: three risk classes (Low/Standard/High) with proportional
  evidence requirements, 11-category evidence checklist with named source
  or explicit gap for every category, four launch-decision outcomes
  (go/no-go/defer/exception) with accountable owners, exception routing
  to explicit human approval, and a route-to table for 12 specialist skills.
- README.md: human-facing with all five required sections.
- references/discovery-brief.md: bounded survey of existing production
  and engineering skills with concrete ownership boundaries against
  release-engineering and site-reliability-engineering.
- references/readiness-record.md: fillable readiness record template.
- evals/evals.json: five output-quality cases covering low-risk docs,
  user-facing launch, migration-dependent release, missing owner evidence
  (blocked), and exception requiring human approval.

Closes #196

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* chore(production-readiness): update catalog files for production-readiness

Update root README catalog, skill-triggers index, and three generated
marketplace catalog files to include the new production-readiness skill.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 18:14:22 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2c247a1747 feat(product-lifecycle-learning): add product lifecycle learning skill (#194) (#219)
* feat(product-lifecycle-learning): add product lifecycle learning skill (#194)

Introduce a new skill to close the launch-to-learning loop for product features
and capabilities. Covers:

- Post-launch outcome review with explicit epistemic categories
  (expected/observed/uncertain/inferred)
- Assumption ledger updates with confidence shifts
- Multi-dimensional feature health assessment
- Six lifecycle decisions: continue/improve/harvest/pivot/pause/retire
- Full retirement lifecycle: deprecation communication, migration paths,
  customer treatment during sunset, and internal cleanup
- Durable retained learning records that feed back into roadmap, analytics,
  adoption, experimentation, and specifications

Ships 4 references (discovery brief, epistemic discipline, retirement lifecycle,
feedback destinations), 6 templates (outcome review, assumption ledger update,
feature health record, retirement decision, sunset plan, retained learning
record), and 7 eval cases including adversarial coverage.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(product-lifecycle-learning): regenerate marketplace with corrected description

The Claude marketplace JSON contained the original description starting with
"Close" which was replaced with "Compare" to satisfy the imperative-verb
quality check. Regenerate to match the corrected SKILL.md frontmatter.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

* fix(product-lifecycle-learning): regenerate llms.txt with corrected description

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>

---------

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 17:33:10 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
1dd564e3d9 feat(conditional-customer-success): add conditional customer success skill (#192) (#218)
Add a conditional skill for products with recurring human relationships.
Covers success plans, health evidence, renewal/expansion signals, QBRs,
handoffs, escalation, and closed-loop Voice of Customer. The skill is
conditional: it declines and routes away when the product has no accounts,
renewals, QBRs, or customer-success team.

Includes:
- SKILL.md with conditional frontmatter, trigger sections, four product-
  model adaptations (B2B subscription, transactional, public-service,
  internal product), core artifacts, privacy and human-judgment boundaries,
  and routing to product-analytics-and-measurement, product-adoption,
  product-experimentation, go-to-market, and product-lifecycle-learning.
- README.md with all five required human-facing sections.
- references/discovery-brief.md surveying existing content and defining
  ownership boundaries and routing.
- references/privacy-and-human-judgment.md with consent framework,
  surveillance-risk guidance, decision-support rules, and data
  classification tiers.
- templates/applicability-decision.md, templates/success-plan.md,
  templates/health-risk-record.md, and templates/escalation-and-
  feedback-closure.md.
- evals/evals.json with 5 output-quality cases covering B2B subscription,
  internal-tool decline (negative trigger), public-service routing,
  renewal-risk with mixed signals, and conflicting health evidence.
- Updated root README.md catalog section, references/skill-triggers.md,
  and regenerated marketplace/Codex/llms.txt catalogs.

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 17:30:51 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
f82515e85d feat(implementation-planning): add implementation planning skill (#217)
Add a reusable implementation-planning skill for turning approved
requirements or specifications into executable, dependency-aware delivery
plans. Covers work breakdown into vertical slices, dependency mapping with
critical-path analysis, ownership assignment, sequencing and parallelism,
staged rollout strategy with rollback paths, and verification traceability
against the original requirement.

Includes:
- SKILL.md with valid frontmatter, entry gate for prerequisite approval,
  progressive-disclosure file map, and handoff table to specialist skills
- README.md with all five required human-facing sections
- references/discovery-brief.md comparing existing planning material and
  defining ownership boundaries
- templates/ for implementation plan, dependency record, and risk/decision/
  verification sections
- evals/evals.json with six output-quality cases covering ambiguous
  requirements, cross-repository dependencies, data migration, risky
  rollout, unapproved prerequisite rejection, and multi-team ownership
  conflict
- Catalog and routing updates (README, skill-triggers, generated catalogs)

Closes #186

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 17:29:00 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
77562664b8 feat(product-operations-and-governance): add product operations and governance skill (#216)
Add a new skill for product governance — recurring decision rights, intake,
portfolio cadences, evidence standards, and cross-functional operating
contracts. Covers six review cadences with named accountable owners,
minimum evidence standards per decision type, and escalation paths.

Supports lightweight (small teams, minimal ceremony) and high-assurance
(regulated/safety-critical) operating modes with four configurable
governance patterns. Distinguishes product governance from executive
governance (routes to chief-of-staff-methodology, strategy-frameworks) and
technical delivery gates (routes to release-engineering, spec-driven-development).

Includes: SKILL.md with governance boundary statement, README.md,
discovery brief, 5 fillable templates (operating model, decision-rights map,
review cadence, exception record, escalation record), 6 evals covering
lightweight mode, high-assurance, contested decisions, exceptions,
evidence-missing escalation, and an adversarial case.

Closes #193

Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 17:27:16 -04:00