
Loom Skill Enhancement
- 32 installs
- 2 repo stars
- Updated August 5, 2026
- waynebaby/techne-loom
Helps with ai & agent building tasks.
About
loom-skill-enhancement is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted development.
- loom-skill-enhancement
- AI & Agent Building
- AI-coding skill
Loom Skill Enhancement by the numbers
- 32 all-time installs (skills.sh)
- +2 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #9,101 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/waynebaby/techne-loom --skill loom-skill-enhancementAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 32 |
|---|---|
| repo stars | ★ 2 |
| Last updated | August 5, 2026 |
| Repository | waynebaby/techne-loom ↗ |
What it does
Helps with ai & agent building tasks.
Files
/loom-skill-enhancement
Guide-first deterministic skill enhancement skill for Loom Skill Orchestrator (dotnet so.dll).
Mission
This skill upgrades or creates a target skill so its deterministic execution is governed through the Loom Skill Orchestrator package flow. Business scope is always target-skill delivery; runtime validation is supporting work only.
Every enhancement pass must first prove that the skill-bound published Loom Skill Orchestrator runtime is runnable and can emit a fresh dotnet so.dll --guide [--lang <language>] result from that runtime. Before that proof exists, do not proceed to planning, authoring, validation, compile, run, resume, or any downstream input collection. Derive runtime channel from the bound package version when needed; do not ask the user to choose released versus beta during normal SO enhancement runs.
Read First
<!-- skill-package-version-block:start -->
- Current published SO package runtime version:
0.2.126. - This block is refreshed by the publish workflows whenever SO package versions change, so the skill contract stays aligned with the latest published stable package set.
<!-- skill-package-version-block:end -->
- Released package index:
reference/packages.released.md - Beta package index:
reference/packages.beta.md - Released guide:
reference/so-guide.released.md - Beta guide:
reference/so-guide.beta.md - Workflow designer subagent:
assets/agents/loom-skill-enhancement-workflow-designer.agent.md - Reusable weave-out subagents:
assets/agents/loom-skill-enhancement-skill-markdown-gap-review.agent.mdassets/agents/loom-skill-enhancement-package-lock-gap-review.agent.mdassets/agents/loom-skill-enhancement-workflow-governance-gap-review.agent.mdassets/agents/loom-skill-enhancement-weave-out-subagent-fit-review.agent.mdassets/agents/loom-skill-enhancement-review-fix-loop.agent.mdassets/agents/loom-skill-enhancement-scope-input-output-analysis.agent.mdassets/agents/loom-skill-enhancement-route-gate-analysis.agent.mdassets/agents/loom-skill-enhancement-evidence-node-map-analysis.agent.md- Authority command:
dotnet so.dll --guide [--lang <language>]
Workflow Contract
Inputs
- target skill root path that directly contains
SKILL.mdandassets/so-workflow/ - deterministic skill goal or upgrade request
- requested target-skill changes
- runtime version authority: the checked-in
assets/so-workflow/so-package-lock.jsonplus the current CI/CD-managed skill package version block; derive channel from the bound version shape when needed instead of asking the user - optional guide language flag
- optional JSON context file
- optional audit output root
Self-Bootstrap Assets
assets/so-workflow/skill-plan.mdassets/so-workflow/so-template.jsonassets/so-workflow/so-package-lock.json
Defaults
- Keep Loom Skill Orchestrator-owned materials under
assets/so-workflow/. - For
/loom-skill-enhancementitself and any SO-enhanced target skill, official workflow operations and package downloads must use the published Loom Skill Orchestrator package artifacts bound to the current CI/CD-managed skill version block and checked-in package lock, not repository source builds, ad hoc local project outputs, or hand-assembled runtime folders, unless the user explicitly approves a last-resort blocked-state workaround. - In Windows PowerShell 5.1 package-channel mode, treat
.nupkgas ZIP content and do not useExpand-Archivedirectly on the.nupkg; use ZIP APIs or an equivalent ZIP-based extraction path. - In Windows PowerShell 5.1, add
-UseBasicParsingto package-channel HTTP probes that useInvoke-WebRequestorInvoke-RestMethodso runtime acquisition does not stall on legacy browser-engine prompts. - Treat the checked-in workflow template as immutable; every new official SO run must start from a freshly copied external runtime workflow file derived from the template or current checked-in source workflow, and any later resume in that same execution chain must continue against that same persisted runtime copy rather than mutating the checked-in file in place.
- Keep compile and audit artifacts outside the skill folder unless the user explicitly chooses otherwise.
- In SO-exclusive governance mode, only
dotnet so.dll runanddotnet so.dll resumecount as official runs. - Normal enhancement governance for this skill and any SO-enhanced target skill must stay on the
dotnet so.dll --guide,dotnet so.dll compile,dotnet so.dll run, anddotnet so.dll resumepath. Do not treat direct workflow JSON edits as a routine control path. - Direct edits to the running external workflow
.jsoncopy are allowed only when the currentdotnet so.dllpath is fully blocked, the user explicitly approves a minimal workaround, the edit is the smallest change needed to unblock the next SO command, and the very next step returns todotnet so.dll compile,dotnet so.dll run, ordotnet so.dll resume. - If runtime extraction, startup-contract checks, or guide execution fail, stop immediately and keep
runtime_preflight_resultand guide-refresh evidence in a failed state. Do not write success proof or exported guide files from failed commands.
Workflow Baseline
- Enter plan mode before editing target-skill deliverables.
- When creating or revising workflow templates, invoke the local workflow-designer subagent with relative-link context, not a freeform generic agent.
- Analyze inputs, outputs, branches, loops, seams, gates, and expected evidence.
- Generate the workflow template JSON first, then compile it.
- Keep the workflow template JSON as the authority.
- Repeat a user confirmation loop by updating the template or its source planning inputs and recompiling.
- For SO-governed target-skill templates, declare root
templateKind: so-governed-target-skilland a rootvalidationcontract withgates,routes,declaredUserOwnedFields, andreservedRuntimeOwnedFields. - If an SO-governed target-skill template is intended to become runnable execution authority, its materialized runtime workflow copy must execute on the current public
dotnet so.dll runanddotnet so.dll resumepath. Do not leave the runnable copy inDrafting, and do not depend on private or unavailable built-in tool names. - If a checked-in workflow JSON is only a draft or compile-review source template, label it explicitly as source-only and do not present it as directly runnable.
- When
MemoryReadinspects checked-in target-skill assets, it must load real file snapshots from an explicit target-skill asset root and must reject absolute paths or traversal outside that root. - Never author a node whose purpose says or implies
run a multistep plan. - For weave-out design, prefer existing capable subagents whenever they can already complete the goal instead of emitting generic agent placeholders.
- If a target-skill enhancement weave-out is clearly reusable and benefits from a dedicated subagent, recommend creating a detailed
{target-skill-name}-{task-name}.agent.mdunder{skill-folder}/assets/, route future workflow nodes to that subagent explicitly, add a relative-link reference to that file in the targetSKILL.md, and reference the same relative path in the workflow template JSON weave-out hints or equivalentskill_hintguidance.
Required Outputs
- bound runtime version confirmation plus derived channel evidence
- runtime-ready evidence for the selected published SO bundle before downstream work
- Windows package-channel runtime acquisition evidence when PowerShell 5.1 is involved: ZIP-based
.nupkgextraction path, HTTP probe mode, and fail-fast proof when extraction or guide generation fails - package index links
- guide surface references
- target
SKILL.mdgovernance wording that keeps ordinary workflow changes on the SO CLI path and limits direct workflow JSON edits to blocked-state, user-approved emergency workarounds - target
SKILL.mdruntime hardening wording that forbids pseudo-success preflight/guide records and requires ZIP-based.nupkgextraction on Windows PowerShell 5.1 package-channel restores - workflow template path
- workflow-designer subagent dispatch record and relative-link context set used for workflow generation
- weave-out suitability review that checks whether every current weave-out should become a dedicated target-skill local
{skillname}-{taskname}.agent.md - target-skill local subagent definition paths created or refreshed under
assets/ - target
SKILL.mdand target reference-doc relative-link updates for any newly required target-skill local weave-out subagents - workflow analysis report
- compiled Mermaid
- node-to-file or node-to-artifact map
- package lock metadata split into:
- checked-in lock reference target
- resolved runtime bundle version/channel evidence
- runtime-owned completion-manifest reference to the checked-in lock asset
- checked-in skill-markdown governance outcome split into:
- checked-in skill-markdown target path
- governed evidence that the checked-in skill markdown is the source deliverable for this slice
- runtime-owned completion-manifest reference to that checked-in source asset
- runtime audit artifact links
Governance
- SO-exclusive governance mode uses Loom Skill Orchestrator as the only official execution authority.
- For
/loom-skill-enhancementitself and any SO-enhanced target skill, that execution authority must come from published SO package artifacts for the chosen channel. Do not normalize repository-source builds or manually assembled binaries into the default workflow-operation path. - AskUser seams may request only declared user-owned fields or decisions.
- Runtime-owned facts and artifact paths belong to runtime-owned seams such as
WaitResume. - Route-aware terminal and blocked business-output gates are required for governed routes.
- For target-skill modifications, runtime-ready evidence and fresh-guide evidence must exist before downstream planning, authoring, validation, compile, run, or resume work starts.
- If a governed workflow is presented as runnable execution authority, its materialized runtime copy must actually execute on the current public
dotnet so.dll runanddotnet so.dll resumepath rather than being only compile-clean. - File-backed checked-in asset inspection must stay rooted under the declared target-skill asset root and must not degrade into placeholder context-copy review.
- Before completion, review every current weave-out and decide whether it should be implemented as a dedicated target-skill local subagent under
assets/{skillname}-{taskname}.agent.md; when the answer is yes, create or refresh that subagent file and add the relative-link reference in the targetSKILL.mdand target reference docs before the workflow can complete. - Before completion, run an explicit review-skill -> fix-skill loop on the target skill, then prepare commit-and-report-ready evidence for the final handoff instead of stopping immediately after template compile or first-pass edits.
- When a slice still uses checked-in source assets as the authoritative business deliverables, the governed route must name those checked-in assets explicitly as done outputs and must emit a runtime-owned completion manifest that references them instead of pretending runtime-owned temporary files replaced them.
- Completion requires requested target-skill deliverables to be created or modified.
Runtime Flow
1. Classify governance state and lock the goal to target-skill delivery. 2. Confirm the skill-bound package version and derived channel, prove the corresponding published Loom Skill Orchestrator runtime can run, and capture a fresh guide surface from that runtime. 3. Only after that guide result exists, enter plan mode and derive skill-plan.md. 4. Author or refresh the workflow template and package lock. 5. Compile the workflow template and review the analysis report. 6. Apply feedback, recompile if needed, then update the target SKILL.md. 7. Keep runtime workflow copies, event logs, and audit artifacts outside the skill folder.
SO-Exclusive Completion
- The target skill states that it has been enhanced by Loom Skill Orchestrator and is now SO-exclusive governed.
- The target skill states in its own
SKILL.mdthat ordinary workflow changes stay on the SO-governed CLI path and that direct workflow JSON edits are blocked-state-only emergency workarounds. - Direct CLI and direct MCP remain primitive paths only.
- Official run evidence comes only from Loom Skill Orchestrator workflow state, event log, and audit artifacts.
Mission
You analyze output evidence coverage, node-to-file mapping, and artifact traceability before workflow template drafting.
Context Pack
Read these relative references first:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
Then read the run-specific target SKILL.md, current guide export, node map, plan draft, and target deliverable notes passed in by the parent workflow.
Required Analysis
Return explicit findings for:
- output family coverage
- node-to-file or node-to-artifact mapping
- checked-in deliverables vs runtime-owned artifacts
- completion-manifest referencing requirements
- review evidence sufficiency
What To Avoid
- Do not redesign route gates here.
- Do not redesign channel-selection policy here.
- Do not hide missing evidence families behind generic “looks good” language.
Mission
You review a checked-in so-package-lock.json against the guide captured from the skill-bound SO runtime and the current enhancement pass requirements.
You are a reusable SO weave-out subagent. Run independently from repository-global docs once this file is loaded.
Context Pack
Read these relative references before reviewing:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
- ../../reference/packages.released.md
- ../../reference/packages.beta.md
Then read the run-specific package lock file and guide export passed in by the parent workflow.
Required Review Focus
Review these exact areas:
- bound version and derived channel match the checked-in enhancement path
- resolved package version and runtime bundle members are complete
- published package artifacts are treated as the normal execution surface
- NuGet-first restore behavior is preserved
- startup-contract and launch-mode assumptions remain aligned
- lock wording does not imply repo-source builds are a normal workflow-operation path
Output Requirements
Return:
- exact lock-policy drift list
- suggested replacement fields or wording
- file-local evidence with quoted snippets
- whether the lock is sufficient for future published-package workflow operations
What To Avoid
- Do not generalize package policy into vague prose.
- Do not rely on repo-global docs beyond the context pack.
- Do not hide multiple lock problems inside one summary sentence.
Mission
You run the explicit review-skill -> fix-skill loop for the current target-skill slice and prepare commit-and-report-ready evidence for the parent workflow.
Context Pack
Read these relative references first:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
Then read the run-specific workflow template, Mermaid review artifact, weave-out review result, target-skill delta, and review evidence passed in by the parent workflow.
Required Loop Focus
Review these exact areas:
- concrete target-skill issues that still block commit readiness
- strengths and governance constraints that must be preserved while fixing
- the explicit fix actions already applied or still required in this slice
- whether the target skill is ready for commit and reporting handoff
Output Requirements
Return structured results that the parent workflow can weave back as:
review_fix_loop_evidence: explicit review findings, fixes applied, residual blockers, and preserved strengthscommit_report_ready: explicit commit/report readiness record withreadyorblockedstatus and concrete blockers when not ready- quoted evidence snippets that support the final readiness call
What To Avoid
- Do not stop at generic review commentary without a readiness decision.
- Do not claim commit readiness without checking for concrete unresolved blockers.
- Do not erase important strengths or governance constraints while describing fixes.
Mission
You analyze workflow route structure, branch/loop structure, seam ownership, and business-output gate contracts before template drafting.
Context Pack
Read these relative references first:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
Then read the run-specific target SKILL.md, current guide export, and any current workflow draft or notes passed in by the parent workflow.
Required Analysis
Return explicit findings for:
- branches and loops
- user seams vs runtime seams
- route structure
- terminal gate requirements
- blocked gate requirements
- where weave-out should be explicit
What To Avoid
- Do not analyze package-lock field policy here.
- Do not analyze node-to-file evidence mapping here.
- Do not hide multiple route problems in one vague sentence.
Mission
You analyze the target skill's declared inputs, outputs, and required business deliverables before workflow template drafting.
Context Pack
Read these relative references first:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
Then read the run-specific target SKILL.md, current guide export, and any target deliverable notes passed in by the parent workflow.
Required Analysis
Return explicit findings for:
- declared target-skill inputs
- declared target-skill outputs
- required business deliverables
- user-owned vs runtime-owned data boundaries
- which deliverables must be checked in versus runtime-owned
What To Avoid
- Do not analyze route gates here.
- Do not analyze weave-out subagent reuse here.
- Do not hide multiple different output families in one vague statement.
Mission
You review a target skill's checked-in SKILL.md against the latest selected-channel SO guide and identify exact governance gaps.
You are a reusable SO weave-out subagent. Run independently from repository-global docs once this file is loaded.
Context Pack
Read these relative references before reviewing:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
Then read the run-specific target SKILL.md and current guide export passed in by the parent workflow.
Required Review Focus
Review these exact areas:
- official workflow operations must use published SO package artifacts as the normal execution surface
- ordinary workflow changes stay on
dotnet so.dll --guide/compile/run/resume - direct workflow JSON edits are blocked-state-only emergency workarounds
- running external workflow
.jsoncopy edits are last-resort emergency workarounds only - target-skill local subagent references are present with relative links when introduced
- SO-exclusive governance wording is explicit and not ambiguous
Output Requirements
Return:
- exact missing or drifted rule list
- suggested replacement wording
- file-local evidence with headings or quoted snippets
- whether the target
SKILL.mdalready references any target-skill local.agent.mdfiles by relative link
What To Avoid
- Do not rewrite the whole
SKILL.mdwhen only narrow governance deltas are needed. - Do not rely on repo-global docs beyond the context pack.
- Do not hide multiple unrelated findings inside one generic summary line.
Mission
You review every current weave-out in the target skill and decide whether it should remain a generic weave-out hint or become a dedicated target-skill local subagent file under assets/{skillname}-{taskname}.agent.md.
Context Pack
Read these relative references first:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
Then read the run-specific target SKILL.md, current workflow template, node map, guide export, and weave-out evidence passed in by the parent workflow.
Required Review Focus
Review these exact areas:
- every current weave-out node and hint
- whether each weave-out should become a dedicated target-skill local subagent
- the exact target-skill local agent path to create or refresh when the answer is yes
- the relative-link updates required in the target
SKILL.md - the relative-link updates required in the target reference docs
Output Requirements
Return structured results that the parent workflow can weave back as:
weave_out_subagent_review: machine-readable decision summary for all reviewed weave-outstarget_skill_subagent_assets: explicit list of target-skill local.agent.mdfiles to create or refresh; return an empty list when none are requiredtarget_skill_subagent_link_updates: explicit list of relative-link updates required in the targetSKILL.mdand target reference docs; return an empty list when none are required- quoted evidence snippets that justify the decision
What To Avoid
- Do not stop at generic “could use a subagent” language.
- Do not return prose-only suggestions without explicit file paths.
- Do not treat missing target
SKILL.mdor reference-doc link updates as optional when a dedicated subagent is required.
Mission
You are the dedicated workflow designer subagent for /loom-skill-enhancement.
Your job is to design or revise SO workflow templates so that every important enhancement, re-enhancement, governance, weave-out, guide-refresh, and business-output rule is visible in explicit nodes instead of being hidden inside broad instructions.
You must run independently from repository-global docs once this file is loaded. Use the linked local skill documents as the authoritative context pack for this skill.
Context Pack
Read these relative references as your local authority set before designing:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
- ../../reference/packages.released.md
- ../../reference/packages.beta.md
If the prompt hands you a target SKILL.md, workflow template, package lock, audit artifact, or guide export file, treat those files as the run-specific context layer on top of the authority set above.
SO-Specific Design Target
SO is for deterministic workflow governance and target-skill delivery.
Design around these SO-specific facts:
- SO official execution surfaces are
dotnet so.dll runanddotnet so.dll resume. compile,--guide,status,inspect-workflow, andinspect-eventsare supporting surfaces, not official run modes.- Before any later planning, authoring, validation, compile, run, resume, or downstream input collection nodes, the graph must prove that the selected published SO runtime is runnable and can emit a fresh
dotnet so.dll --guideresult from that runtime. - SO-governed target-skill templates must carry root
templateKind,validation.gates,validation.routes,validation.declaredUserOwnedFields, andvalidation.reservedRuntimeOwnedFields. AskUserseams may request only user-owned inputs or decisions.WaitResumeand other runtime-owned seams must hold runtime facts, provenance, and artifact paths.- For already SO-enhanced targets, re-enhancement logic must be explicit rather than collapsed into one branch.
- For
/loom-skill-enhancementitself and any SO-enhanced target skill, official workflow operations must assume published SO package artifacts as the normal execution surface, not repository-source binaries or hand-assembled runtimes.
Node Granularity Rules
Every node must satisfy all of these:
- One node, one visible responsibility.
- No node may imply “run a multistep plan.”
- No node may hide a visible subflow that would matter to governance review.
- If a node both reads multiple governed artifacts and compares them to a guide, split the reads and the comparisons.
- If a node both reacquires runtime and validates runtime readiness, split those into separate nodes.
- If a node both analyzes routes and analyzes output evidence, split them.
- If a node both validates checked-in deliverables and writes a runtime completion manifest, split them.
Required SO Weave-Out Families To Consider
When relevant, explicitly model these SO weave-out families:
ModelThinkseams for non-deterministic reasoning that the runtime cannot execute directlySubagentCallseams for structured delegated analysis or synthesisAskUserseams for mandatory human decisionsWaitResumeseams for runtime-owned blocked waits- blocked emergency workaround seams for direct workflow JSON edits when the SO path is fully blocked and the user explicitly approves a minimal workaround
- review-confirmation loops before a workflow becomes the authority for execution
If a requested workflow could hit one of these families, either model it as explicit nodes or explain why it does not apply.
Weave-Out Hint Rules
Every weave-out branch must have a detailed hint.
The hint must:
- If an existing agent or subagent can already complete the weave-out goal, prefer that subagent route over a generic agent-shaped placeholder node.
- say exactly why SO cannot continue deterministically
- name the exact next artifact or decision required
- when possible, point to a concrete local file using a relative link
- when possible, name the relevant guide file, nearby section, and expected payload or artifact shape
- distinguish checked-in source deliverables from runtime-owned temporary artifacts
- avoid vague instructions such as “review this” or “handle externally” without structure
When a weave-out for SO enhancement would clearly benefit from a dedicated reusable subagent, recommend creating a detailed target-skill local agent file named {target-skill-name}-{task-name}.agent.md under {skill-folder}/assets/ and design the workflow so that future runs can call that subagent explicitly.
When such a target-skill local agent file is created, require both of these:
- the target
SKILL.mdmust include a relative-link reference to that.agent.mdfile - the workflow template JSON weave-out hints, blocked-action hints, or equivalent
skill_hintguidance must reference that.agent.mdfile by relative path so the operator knows the intended subagent route
Re-Enhancement Rules
For already SO-enhanced targets:
- model governance-state classification explicitly
- model inspection of existing
SKILL.md, package lock, and workflow governance assets explicitly - model explicit reuse of the checked-in bound runtime version and derived channel from
so-package-lock.jsonrather than a user-facing released-versus-beta choice - model runtime reacquisition and guide refresh explicitly
- model guide-delta review explicitly for each important governed artifact family
- do not collapse the whole re-enhancement path into one branch and one compare node
Reusable Local Weave-Out Subagents
Prefer these existing reusable local subagents before inventing new generic review nodes:
- loom-skill-enhancement-skill-markdown-gap-review.agent.md
- loom-skill-enhancement-package-lock-gap-review.agent.md
- loom-skill-enhancement-workflow-governance-gap-review.agent.md
- loom-skill-enhancement-scope-input-output-analysis.agent.md
- loom-skill-enhancement-route-gate-analysis.agent.md
- loom-skill-enhancement-evidence-node-map-analysis.agent.md
Output Requirements
A valid workflow design should make these reviewable in the graph itself when relevant:
- runtime reacquisition and preflight
- package-index capture
- guide capture
- the hard stop that forbids downstream steps until the selected published SO runtime has produced a fresh guide result
- route-gate analysis
- output-evidence analysis
- package-lock drafting or validation
- checked-in deliverable validation
- runtime completion-manifest emission
- review loop branches
- blocked runtime publication
- target-skill local
.agent.mdreferences in both targetSKILL.mdand workflow-template weave-out hints when such a subagent is introduced
Output Hint Guidance
When proposing a workflow template, also supply guidance for:
- workflow JSON path
- package lock path
- Mermaid review artifact
- HTML review artifact
- workflow analysis artifact
- node-to-file or node-to-artifact map
- checked-in deliverable evidence
- runtime completion-manifest evidence
- blocked seam payload examples
What To Avoid
- Do not produce broad governance nodes that hide multiple checks.
- Do not let checked-in business deliverables appear to be replaced by runtime temp files.
- Do not hide re-enhancement logic in prose only.
- Do not rely on repository-global docs outside the context pack.
- Do not create nodes whose descriptions imply that the agent should improvise a hidden internal workflow.
- Do not normalize manual edits to the running external workflow
.jsoncopy into an ordinary operation; if you must mention them, label them as last-resort blocked-state emergency workarounds only.
Mission
You review checked-in workflow governance artifacts such as workflow template, node map, and governance notes against the latest selected-channel SO guide.
You are a reusable SO weave-out subagent. Run independently from repository-global docs once this file is loaded.
Context Pack
Read these relative references before reviewing:
- ../../SKILL.md
- ../../contract.json
- ../../reference/so-skill-reference.md
- ../../reference/so-guide.released.md
- ../../reference/so-guide.beta.md
Then read the run-specific workflow template, node map, governance notes, and guide export passed in by the parent workflow.
Required Review Focus
Review these exact areas:
- node granularity: one node, one visible responsibility
- weave-out hints: detailed and file/path-aware when relevant
- subagent routes: reusable weave-outs should call existing subagents when available
- any introduced target-skill local
.agent.mdfiles must be referenced by relative path from both targetSKILL.mdand workflow-template weave-out hints - route-aware business-output gates and blocked-gate expectations remain explicit
- checked-in deliverables and runtime-owned completion artifacts remain distinct
Output Requirements
Return:
- exact governance drift list
- suggested node or wording changes
- file-local evidence with quoted snippets
- whether the current workflow assets already reference reusable local
.agent.mdfiles correctly
What To Avoid
- Do not collapse unrelated governance issues into one bucket.
- Do not rely on repo-global docs beyond the context pack.
- Do not accept hidden multi-step planner nodes.
Loom Skill Enhancement Self-Bootstrap Governance Notes
- This skill is self-bootstrapped through a checked-in SO-governed workflow template.
- This self-bootstrap pass uses
/loom-skill-enhancementas the current target skill; it does not change the generic mission of rewriting any target skill. - The template authority is
assets/so-workflow/so-template.json. - The planning artifact is
assets/so-workflow/skill-plan.md. - The runtime lock is
assets/so-workflow/so-package-lock.json. - The workflow first classifies governance state. If the target is already SO-enhanced, it enters an explicit re-enhancement node chain: inspect current
SKILL.mdgovernance wording, inspect the current package lock, inspect the current workflow governance assets, reuse the exact runtime version already bound by the checked-in lock and current skill package version block, reacquire that published runtime bundle, capture a fresh guide, then route three separate reusable subagents to compare skill-markdown governance, package-lock policy, and workflow-governance assets against that guide before common planning. - The common planning path is also decomposed into reusable subagents: scope input-output analysis, route-gate analysis, and evidence/node-map analysis before workflow template drafting.
- Every pass reacquires the selected runtime bundle, proves that selected published runtime is runnable, and captures a fresh
dotnet so.dll --guidesurface before analysis, planning, authoring, validation, compile, run, resume, or downstream input collection. - The governed route now treats the selected guide surface and package-index references as explicit slice outputs rather than leaving them only in prose.
- The checked-in template stays immutable; runtime copies live outside the skill folder.
- The governed template explicitly models draft, compile, AskUser review, blocked runtime, and final completion-manifest steps.
- The self-bootstrap pass must show a user-confirmed review loop before the final lock step.
- The blocked runtime boundary publishes the strongest-earned runtime outputs through a dedicated blocked-governance gate before the final completion manifest step.
- The executable runtime path does not overwrite checked-in source assets; the final runtime step emits an external completion manifest under the OS temp root that references the checked-in source deliverables instead, and should not be read as proof that it recreated those checked-in files.
- Official run surfaces remain explicit
dotnet so.dll runanddotnet so.dll resumeonly.
Node To File Map
| Node | File or Artifact |
|---|---|
transition.classify_governance | runtime-owned governance_state seed that marks the current self-bootstrap target as already SO-enhanced before the bound-runtime path decision |
transition.enter_reenhancement_context | branch to the explicit re-enhancement context path for an already-governed target |
transition.inspect_existing_skill_markdown | runtime-owned review of checked-in SKILL.md governance wording before bound-runtime reacquisition, loaded from target_skill_path via checkedInAssets |
transition.inspect_existing_package_lock | runtime-owned review of checked-in assets/so-workflow/so-package-lock.json before bound-runtime reacquisition, loaded from target_skill_path via checkedInAssets |
transition.inspect_existing_workflow_assets | runtime-owned review of checked-in assets/so-workflow/so-template.json, assets/so-workflow/node-to-file-map.md, and assets/so-workflow/governance-notes.md before bound-runtime reacquisition, loaded from target_skill_path via checkedInAssets |
transition.use_bound_runtime_path | branch to the standard skill-bound runtime path without a user-facing channel prompt |
transition.reacquire_runtime | external runtime-preparation seam that must weave back assets/so-workflow/so-package-lock.json evidence plus published-package workflow evidence, runtime preflight result, resolved runtime version, runtime bundle package list, and unified runtime directory evidence under gate.bootstrap_runtime_ready |
transition.capture_guide | external guide-capture seam that must weave back a fresh dotnet so.dll --guide surface reference under gate.bootstrap_runtime_guide |
transition.require_reenhancement_gap_review | branch that requires explicit re-enhancement guide-delta review after the fresh guide capture |
transition.skip_reenhancement_gap_review | branch that skips re-enhancement guide-delta review for not-yet-governed targets |
transition.compare_skill_markdown_against_latest_guide | reusable subagent route through assets/agents/loom-skill-enhancement-skill-markdown-gap-review.agent.md, plus relative-path weave-out hint guidance for target-skill local .agent.md references |
transition.compare_package_lock_against_latest_guide | reusable subagent route through assets/agents/loom-skill-enhancement-package-lock-gap-review.agent.md, plus relative-path weave-out hint guidance for target-skill local .agent.md references |
transition.compare_workflow_governance_against_latest_guide | reusable subagent route through assets/agents/loom-skill-enhancement-workflow-governance-gap-review.agent.md, plus relative-path weave-out hint guidance for target-skill local .agent.md references before common plan analysis |
transition.analyze_scope | reusable subagent route through assets/agents/loom-skill-enhancement-scope-input-output-analysis.agent.md, writing the governed review plan at assets/so-workflow/skill-plan.md and carrying resolved guide/package-index references into the plan gate |
transition.analyze_route_gate_structure | reusable subagent route through assets/agents/loom-skill-enhancement-route-gate-analysis.agent.md, consuming assets/so-workflow/skill-plan.md plus guide evidence and producing route/gate review findings before evidence review |
transition.analyze_evidence_node_map | reusable subagent route through assets/agents/loom-skill-enhancement-evidence-node-map-analysis.agent.md, consuming plan.route_gate_review, assets/so-workflow/skill-plan.md, and guide evidence before template drafting |
transition.review_weave_out_subagent_fit | reusable subagent route through assets/agents/loom-skill-enhancement-weave-out-subagent-fit-review.agent.md that reviews every current weave-out, decides whether it should become a dedicated target-skill local subagent under assets/{skillname}-{taskname}.agent.md, and records the target SKILL.md / target reference-doc relative-link updates required by that decision |
transition.draft_template | required local workflow-designer subagent route through assets/agents/loom-skill-enhancement-workflow-designer.agent.md, weaving back the refreshed checked-in assets/so-workflow/so-template.json authority plus a workflow-designer dispatch record with relative-link context |
transition.compile_template | external compile seam that must weave back workflow.mermaid.md, workflow.html, workflow.json, and workflow.analysis.json |
transition.request_review | approval_decision, feedback_notes, plus compile-time audit artifact links from the AskUser boundary |
transition.run_review_fix_loop | reusable subagent route through assets/agents/loom-skill-enhancement-review-fix-loop.agent.md that runs the explicit review-skill -> fix-skill loop, records the resulting review/fix evidence, and prepares commit-and-report-ready handoff output before the final blocked runtime boundary |
transition.wait_runtime | workflow.current.json, blocked runtime copy plus strongest-earned blocked-governance artifacts under gate.bootstrap_blocked_governance |
transition.finalize_lock | runtime-owned external completion manifest resolved to a unique per-run path under the OS temp root from .tmp/loom-skill-enhancement-completion-manifest.md; output bindings also materialize the checked-in workflow template, workflow-designer dispatch record, weave-out subagent review, review-fix-loop evidence, commit-report-ready evidence, checked-in SKILL.md, assets/so-workflow/so-package-lock.json, and assets/so-workflow/node-to-file-map.md as authoritative business deliverables rather than collapsing done to the manifest alone |
Loom Skill Enhancement Self-Bootstrap Slice Plan
Scope
This file is the checked-in plan for the current self-bootstrap slice, where /loom-skill-enhancement is itself the target skill being rewritten.
It does not narrow the general mission of /loom-skill-enhancement. The skill still exists to rewrite or create any target skill so that the target becomes governed through the Loom Skill Orchestrator flow.
Goal
Upgrade /loom-skill-enhancement as the current target skill so it governs itself with checked-in SO workflow assets, a locked runtime bundle, and explicit SO-exclusive governance wording.
Mermaid
flowchart TD
A[Classify governance state]:::runtime --> B{Already SO-enhanced?}:::gate
B -- yes --> C[Inspect current SKILL.md governance wording]:::ai
C --> D[Inspect current checked-in package lock]:::ai
D --> E[Inspect current checked-in workflow assets]:::ai
B -- no --> F[Use skill-bound runtime version]:::gate
E --> H[Reacquire skill-bound SO runtime bundle]:::runtime
F --> H
H --> I[Capture fresh dotnet so.dll --guide]:::runtime
I --> J{Need re-enhancement gap review?}:::gate
J -- yes --> K[Run skill-markdown gap-review subagent]:::ai
K --> L[Run package-lock gap-review subagent]:::ai
L --> M[Run workflow-governance gap-review subagent]:::ai
J -- no --> N[Run scope input-output analysis subagent]:::ai
M --> N
N --> O[Run route-gate analysis subagent]:::ai
O --> P[Run evidence-node-map analysis subagent]:::ai
P --> Q[Run workflow-designer subagent and refresh workflow template]:::ai
Q --> R[Compile template and collect Mermaid, HTML, and analysis]:::tool
R --> R2[Review whether each weave-out needs a dedicated target-skill subagent]:::ai
R2 --> S[Present compiled audit artifacts to user]:::user
S --> T{Approve?}:::gate
T -- revise --> U[Apply feedback to template]:::user
U --> N
T -- approve --> V[Run review-skill -> fix-skill loop]:::ai
V --> W[Publish blocked runtime outputs]:::runtime
W --> X[Finalize external completion manifest]:::runtime
X --> Y[Update SKILL.md and close slice]:::tool
classDef ai fill:#e4f6e8,stroke:#2f8f4e,color:#14532d;
classDef tool fill:#e7f0ff,stroke:#4a6cf7,color:#1e3a8a;
classDef user fill:#fff6d6,stroke:#e0ad00,color:#7c5c00;
classDef gate fill:#f6f7f9,stroke:#c7cdd4,color:#4b5563;
classDef runtime fill:#eef2ff,stroke:#818cf8,color:#3730a3;Inputs
- Current
SKILL.md - Current skill reference docs
- Current SO guide surface
- Current package index surface
Required Outcomes
- Checked-in workflow template at
assets/so-workflow/so-template.json - Locked runtime metadata at
assets/so-workflow/so-package-lock.json - Updated
SKILL.mdthat references the lock and SO-exclusive governance model - A compile-valid governed workflow with explicit user-confirmed steps and audit-friendly evidence
- External compile audit artifacts for Mermaid, HTML, workflow JSON backup, and workflow analysis
- A clear separation between the generic skill mission and this self-bootstrap target-skill slice
Plan Output Support Matrix
This matrix classifies the current self-bootstrap output requirements against the current src-built dotnet so.dll --guide, the governed-template validator, and the runtime execution surface.
| Output requirement | Current status | Why |
|---|---|---|
Checked-in workflow template at assets/so-workflow/so-template.json | 仅被 compile 支持 | The workflow template is the authority input for compile/load validation, but runtime does not automatically rewrite or finalize the checked-in source template. |
Locked runtime metadata at assets/so-workflow/so-package-lock.json | 目前完全没下沉 | The plan requires a checked-in lock deliverable, but current runtime does not independently prove that the runtime-owned completion step recreated or validated that checked-in source file. |
Updated SKILL.md that references the lock and SO-exclusive governance model | 目前完全没下沉 | The plan requires a checked-in skill-markdown outcome, but current runtime does not independently prove that the runtime-owned completion step recreated or validated that checked-in source file content. |
| A compile-valid governed workflow with explicit user-confirmed steps and audit-friendly evidence | 仅被 compile 支持 | Governed contract structure, seams, blocked outputs, and done reachability are compile-enforced, but business-evidence truthfulness still depends on authored workflow semantics. |
| External compile audit artifact: Mermaid Markdown | 已被 runtime 支持 | compile currently emits workflow.mermaid.md as a first-class audit artifact. |
| External compile audit artifact: HTML | 已被 runtime 支持 | compile currently emits workflow.html as a first-class audit artifact. |
| External compile audit artifact: workflow JSON backup | 已被 runtime 支持 | compile currently emits workflow.json backup as a first-class audit artifact. |
| External compile audit artifact: workflow analysis | 已被 runtime 支持 | compile currently emits workflow.analysis.json as a first-class audit artifact. |
| Final workflow template as review authority | 仅被 compile 支持 | Current SO can prove the final template is structurally valid and governed, but not that it already captured every promised business deliverable. |
| Compiled Mermaid as review evidence | 已被 runtime 支持 | Current SO compile directly produces Mermaid review evidence. |
| Workflow analysis report as review evidence | 已被 runtime 支持 | Current SO compile directly produces workflow analysis review evidence. |
| Package lock metadata as governed evidence | 目前完全没下沉 | The plan expects governed package-lock evidence, but the current workflow still does not guarantee a real checked-in lock artifact with validated content. |
| Node-to-file map as governed evidence | 目前完全没下沉 | The map is a checked-in documentation artifact today; current runtime/validator do not enforce completeness or correctness of node-to-file mapping. |
| A clear separation between the generic skill mission and this self-bootstrap target-skill slice | 目前完全没下沉 | This distinction exists in plan/governance prose, but not as a runtime or compile-enforced contract field. |
Analysis Focus
- Inputs, outputs, branches, loops, seams, gates, and evidence
- Route-aware terminal business-output gates
- User-confirmed review loops
- Node-to-file and node-to-artifact mapping
Bootstrap Route
1. Classify whether /loom-skill-enhancement is already SO-enhanced for the current pass. 2. If it is already SO-enhanced, explicitly inspect the current checked-in SKILL.md governance wording before bound-runtime reacquisition. 3. Explicitly inspect the current checked-in package lock before bound-runtime reacquisition. 4. Explicitly inspect the current checked-in workflow template and governance assets before bound-runtime reacquisition. 5. Reuse the exact SO package version already bound in the checked-in package lock and derive released versus beta from that version only when operationally needed. 6. Reacquire that exact published SO runtime bundle and keep the checked-in package lock aligned to the bound version. 7. Prove that bound published runtime is runnable and run a fresh dotnet so.dll --guide capture from that runtime before analysis, planning, authoring, validation, compile, run, resume, or downstream input collection. 8. For an already-governed target, run the reusable subagent at assets/agents/loom-skill-enhancement-skill-markdown-gap-review.agent.md to compare the current SKILL.md governance wording against the freshly captured guide. 9. Run the reusable subagent at assets/agents/loom-skill-enhancement-package-lock-gap-review.agent.md to compare the current checked-in package lock against the freshly captured guide. 10. Run the reusable subagent at assets/agents/loom-skill-enhancement-workflow-governance-gap-review.agent.md to compare the current checked-in workflow governance assets against the freshly captured guide. 11. Run the reusable subagent at assets/agents/loom-skill-enhancement-scope-input-output-analysis.agent.md to analyze target-skill inputs, outputs, and required business deliverables. 12. Run the reusable subagent at assets/agents/loom-skill-enhancement-route-gate-analysis.agent.md to analyze branches, loops, seams, routes, and gate structure. 13. Run the reusable subagent at assets/agents/loom-skill-enhancement-evidence-node-map-analysis.agent.md to analyze output evidence and node-to-file mapping coverage. 14. Treat /loom-skill-enhancement as the current target skill for this slice and run the required local workflow-designer subagent to author or refresh the governed workflow template, carrying relative-link context and a dispatch record for that target. 15. Compile the template to produce Mermaid, HTML, workflow JSON backup, and workflow analysis artifacts. 16. Before user approval, review every current weave-out and decide whether it should be implemented as a dedicated target-skill local subagent under assets/{skillname}-{taskname}.agent.md; when yes, record the required subagent-definition file plus the relative-link updates needed in the target SKILL.md and target reference docs. 17. Present the compiled audit artifacts and confirmation loop to the user for review. 18. Apply feedback to the template if needed and recompile. 19. After approval, run an explicit review-skill -> fix-skill loop on the target skill, then prepare commit-and-report-ready evidence for the final handoff. 20. Publish blocked runtime outputs through a dedicated blocked-governance gate, finalize an external completion manifest that references the checked-in source deliverables, and then use the checked-in source assets as the authoritative self-bootstrap deliverables without claiming that the runtime-owned manifest step recreated those checked-in files.
Evidence
- Final workflow template
- Compiled Mermaid
- Workflow analysis report
- Package lock metadata
- Node-to-file map
- Updated
SKILL.md
{
"package_id": "Techne.Loom.SkillOrchestrator",
"channel": "released",
"resolved_version": "0.2.126",
"runtime_bundle": [
{
"package_id": "Techne.Loom.SkillOrchestrator",
"resolved_version": "0.2.126"
},
{
"package_id": "Techne.Loom.Common",
"resolved_version": "0.2.126"
},
{
"package_id": "Techne.Loom.Abstractions",
"resolved_version": "0.2.126"
}
],
"runtime_restore": {
"source": "nuget",
"fresh_download": true,
"allow_local_cache_when_exact_version_matches": true,
"fallback_source": "github-release-asset"
},
"enhancement": {
"resolved_at_utc": "2026-06-24T03:01:34Z",
"selected_language": "en"
},
"notes": [
"Resolve the exact version from NuGet first.",
"Freshly download the full runtime bundle unless the local cache already holds the exact same version.",
"Use GitHub release assets only when NuGet.org is unavailable."
]
}
{
"instanceId": "loom-skill-enhancement-self-bootstrap",
"templateKind": "so-governed-target-skill",
"validation": {
"gates": {
"gate.bootstrap_plan": {
"description": "Plan review gate for self-bootstrap evidence.",
"requiredOutputFamilies": [
"skill_plan_md",
"review_plan_md",
"package_index_links_ref"
],
"requiredMachineReadableOutputFamilies": [
"package_index_links_ref"
],
"requiredHumanReviewableOutputFamilies": [
"skill_plan_md",
"review_plan_md"
]
},
"gate.bootstrap_runtime_ready": {
"description": "Hard gate that proves the selected published SO runtime bundle is reacquired, validated, and ready before guide capture.",
"requiredOutputFamilies": [
"published_package_workflow_evidence",
"runtime_preflight_result",
"resolved_runtime_version_ref",
"runtime_bundle_packages_ref",
"unified_runtime_directory_ref"
],
"requiredMachineReadableOutputFamilies": [
"published_package_workflow_evidence",
"runtime_preflight_result",
"resolved_runtime_version_ref",
"runtime_bundle_packages_ref",
"unified_runtime_directory_ref"
],
"requiredHumanReviewableOutputFamilies": []
},
"gate.bootstrap_runtime_guide": {
"description": "Hard gate that proves the selected published SO runtime is runnable and has produced a fresh guide result before any downstream planning, authoring, validation, compile, run, resume, or input collection work.",
"requiredOutputFamilies": [
"resolved_guide_surface_ref"
],
"requiredMachineReadableOutputFamilies": [
"resolved_guide_surface_ref"
],
"requiredHumanReviewableOutputFamilies": []
},
"gate.bootstrap_compile_review": {
"description": "Compile review gate for the self-bootstrap template audit artifacts.",
"requiredOutputFamilies": [
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json"
],
"requiredMachineReadableOutputFamilies": [
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json"
],
"requiredHumanReviewableOutputFamilies": [
"workflow_analysis_json"
]
},
"gate.bootstrap_blocked_governance": {
"description": "Blocked strongest-earned governance gate for the runtime review boundary.",
"requiredOutputFamilies": [
"workflow_runtime_copy_json",
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json"
],
"requiredMachineReadableOutputFamilies": [
"workflow_runtime_copy_json",
"workflow_analysis_json"
],
"requiredHumanReviewableOutputFamilies": [
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json"
]
},
"gate.bootstrap_done": {
"description": "Done gate for the self-bootstrap pass.",
"requiredOutputFamilies": [
"workflow_template_json",
"workflow_designer_dispatch_record",
"weave_out_subagent_review",
"target_skill_subagent_assets",
"target_skill_subagent_link_updates",
"review_fix_loop_evidence",
"commit_report_ready",
"checked_in_skill_markdown_asset",
"checked_in_package_lock_asset",
"node_to_file_map",
"completion_manifest_reference",
"completion_manifest_md"
],
"requiredMachineReadableOutputFamilies": [
"workflow_template_json",
"workflow_designer_dispatch_record",
"weave_out_subagent_review",
"target_skill_subagent_assets",
"target_skill_subagent_link_updates",
"review_fix_loop_evidence",
"commit_report_ready",
"checked_in_skill_markdown_asset",
"checked_in_package_lock_asset",
"node_to_file_map",
"completion_manifest_reference",
"completion_manifest_md"
],
"requiredHumanReviewableOutputFamilies": [
"workflow_template_json",
"weave_out_subagent_review",
"target_skill_subagent_link_updates",
"review_fix_loop_evidence",
"node_to_file_map",
"completion_manifest_md"
]
}
},
"routes": {
"bootstrap_route": {
"description": "Primary governed route for self-bootstrap.",
"requiredTerminalGateIds": [
"gate.bootstrap_done"
],
"requiredBlockedGateIds": [
"gate.bootstrap_blocked_governance"
]
}
},
"declaredUserOwnedFields": [
"guide_language",
"target_skill_path",
"approval_decision",
"feedback_notes"
],
"reservedRuntimeOwnedFields": [
"workflow_file",
"event_log_file",
"workflow_instance_file",
"analysis_file",
"mermaid_file",
"html_file",
"audit_artifacts",
"governance_state",
"resolved_so_runtime",
"resolved_guide_surface"
]
},
"startNodeId": "state.start",
"currentNodeId": "state.start",
"endNodeId": "state.done",
"status": "readyToStart",
"context": {},
"nodes": {
"state.start": {
"$kind": "state",
"id": "state.start",
"name": "Start",
"description": "Prepare the self-bootstrap pass.",
"workflowPhase": "01 Channel And Entry",
"groups": [
{
"id": "group.start",
"transitionIds": [
"transition.classify_governance"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.channel_decision": {
"$kind": "state",
"id": "state.channel_decision",
"name": "Bound Runtime Path Decision",
"description": "Route to the correct bound-runtime path after governance-state classification without asking the user to choose a channel.",
"workflowPhase": "01 Channel And Entry",
"groups": [
{
"id": "group.channel_decision",
"transitionIds": [
"transition.enter_reenhancement_context",
"transition.use_bound_runtime_path"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.reenhancement_context": {
"$kind": "state",
"id": "state.reenhancement_context",
"name": "Reenhancement Context",
"description": "Start the explicit re-enhancement inspection chain before reusing the bound runtime version.",
"workflowPhase": "02 Existing Asset Inspection",
"groups": [
{
"id": "group.reenhancement_context",
"transitionIds": [
"transition.inspect_existing_skill_markdown"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.inspect_package_lock": {
"$kind": "state",
"id": "state.inspect_package_lock",
"name": "Inspect Package Lock",
"description": "Inspect the current checked-in SO package lock before reusing the bound runtime version.",
"workflowPhase": "02 Existing Asset Inspection",
"groups": [
{
"id": "group.inspect_package_lock",
"transitionIds": [
"transition.inspect_existing_package_lock"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.inspect_workflow_assets": {
"$kind": "state",
"id": "state.inspect_workflow_assets",
"name": "Inspect Workflow Assets",
"description": "Inspect the current checked-in workflow assets before bound-runtime reacquisition.",
"workflowPhase": "02 Existing Asset Inspection",
"groups": [
{
"id": "group.inspect_workflow_assets",
"transitionIds": [
"transition.inspect_existing_workflow_assets"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.refresh_runtime": {
"$kind": "state",
"id": "state.refresh_runtime",
"name": "Refresh Runtime",
"description": "Reacquire the selected SO runtime bundle before analysis.",
"workflowPhase": "03 Runtime Proof",
"groups": [
{
"id": "group.refresh_runtime",
"transitionIds": [
"transition.reacquire_runtime"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.capture_guide": {
"$kind": "state",
"id": "state.capture_guide",
"name": "Capture Guide",
"description": "Run a fresh guide capture from the selected runtime before editing or validation.",
"workflowPhase": "03 Runtime Proof",
"groups": [
{
"id": "group.capture_guide",
"transitionIds": [
"transition.capture_guide"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.post_guide_decision": {
"$kind": "state",
"id": "state.post_guide_decision",
"name": "Post Guide Decision",
"description": "Route to the re-enhancement guide-delta review only when the target is already SO-enhanced.",
"workflowPhase": "03 Runtime Proof",
"groups": [
{
"id": "group.post_guide_decision",
"transitionIds": [
"transition.require_reenhancement_gap_review",
"transition.skip_reenhancement_gap_review"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.reenhancement_gap_review": {
"$kind": "state",
"id": "state.reenhancement_gap_review",
"name": "Reenhancement Gap Review",
"description": "Start the explicit re-enhancement guide-delta review chain before common plan analysis.",
"workflowPhase": "04 Reenhancement Review",
"groups": [
{
"id": "group.reenhancement_gap_review",
"transitionIds": [
"transition.compare_skill_markdown_against_latest_guide"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.reenhancement_lock_gap_review": {
"$kind": "state",
"id": "state.reenhancement_lock_gap_review",
"name": "Lock Gap Review",
"description": "Compare the current checked-in package lock against the freshly captured guide before common plan analysis.",
"workflowPhase": "04 Reenhancement Review",
"groups": [
{
"id": "group.reenhancement_lock_gap_review",
"transitionIds": [
"transition.compare_package_lock_against_latest_guide"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.reenhancement_workflow_gap_review": {
"$kind": "state",
"id": "state.reenhancement_workflow_gap_review",
"name": "Workflow Gap Review",
"description": "Compare the current checked-in workflow governance assets against the freshly captured guide before common plan analysis.",
"workflowPhase": "04 Reenhancement Review",
"groups": [
{
"id": "group.reenhancement_workflow_gap_review",
"transitionIds": [
"transition.compare_workflow_governance_against_latest_guide"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.plan": {
"$kind": "state",
"id": "state.plan",
"name": "Plan",
"description": "Start the explicit common planning analysis chain.",
"workflowPhase": "05 Planning",
"groups": [
{
"id": "group.plan",
"transitionIds": [
"transition.analyze_scope"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.plan_route_gate_review": {
"$kind": "state",
"id": "state.plan_route_gate_review",
"name": "Route Gate Review",
"description": "Review route structure, branch logic, seams, and gate contracts before evidence mapping.",
"workflowPhase": "05 Planning",
"groups": [
{
"id": "group.plan_route_gate_review",
"transitionIds": [
"transition.analyze_route_gate_structure"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.plan_evidence_review": {
"$kind": "state",
"id": "state.plan_evidence_review",
"name": "Evidence Review",
"description": "Review evidence mapping, output families, and node-to-artifact links before template drafting.",
"workflowPhase": "05 Planning",
"groups": [
{
"id": "group.plan_evidence_review",
"transitionIds": [
"transition.analyze_evidence_node_map"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.template_draft": {
"$kind": "state",
"id": "state.template_draft",
"name": "Template Draft",
"description": "Draft or refresh the checked-in workflow template before compile review.",
"workflowPhase": "06 Template Authoring",
"groups": [
{
"id": "group.template_draft",
"transitionIds": [
"transition.draft_template"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.compile_review": {
"$kind": "state",
"id": "state.compile_review",
"name": "Compile Review",
"description": "Compile the template and package the review artifacts before AskUser.",
"workflowPhase": "06 Template Authoring",
"groups": [
{
"id": "group.compile_review",
"transitionIds": [
"transition.compile_template"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.weave_out_subagent_review": {
"$kind": "state",
"id": "state.weave_out_subagent_review",
"name": "Weave-Out Subagent Review",
"description": "Review every current weave-out and decide whether it should become a dedicated target-skill local subagent before user review.",
"workflowPhase": "07 Weave-Out Review",
"groups": [
{
"id": "group.weave_out_subagent_review",
"transitionIds": [
"transition.review_weave_out_subagent_fit"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.review_request": {
"$kind": "state",
"id": "state.review_request",
"name": "Review Request",
"description": "Present the compiled audit artifacts through the AskUser seam before approval or revision feedback.",
"workflowPhase": "08 User Review",
"groups": [
{
"id": "group.review_request",
"transitionIds": [
"transition.request_review"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.review_decision": {
"$kind": "state",
"id": "state.review_decision",
"name": "Review Decision",
"description": "Route based on the approved or revised review decision.",
"workflowPhase": "08 User Review",
"groups": [
{
"id": "group.review_decision",
"transitionIds": [
"transition.iterate_draft",
"transition.accept_draft"
]
}
],
"waitBehavior": "waitForSignal"
},
"state.review_fix_loop": {
"$kind": "state",
"id": "state.review_fix_loop",
"name": "Review Fix Loop",
"description": "Run the explicit review-skill to fix-skill loop before commit/report handoff.",
"workflowPhase": "09 Review Fix Loop",
"groups": [
{
"id": "group.review_fix_loop",
"transitionIds": [
"transition.run_review_fix_loop"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.wait_runtime": {
"$kind": "state",
"id": "state.wait_runtime",
"name": "Wait Runtime",
"description": "Publish blocked runtime artifacts before final lock.",
"workflowPhase": "10 Runtime Handoff",
"groups": [
{
"id": "group.wait_runtime",
"transitionIds": [
"transition.wait_runtime"
]
}
],
"waitBehavior": "waitForSignal"
},
"state.lock": {
"$kind": "state",
"id": "state.lock",
"name": "Lock",
"description": "Burn the runtime lock and governance notes.",
"workflowPhase": "10 Runtime Handoff",
"groups": [
{
"id": "group.lock",
"transitionIds": [
"transition.finalize_lock"
]
}
],
"waitBehavior": "blockUntilComplete"
},
"state.done": {
"$kind": "state",
"id": "state.done",
"name": "Done",
"description": "Self-bootstrap finished.",
"workflowPhase": "11 Completion",
"groups": [],
"waitBehavior": "blockUntilComplete"
},
"transition.classify_governance": {
"$kind": "command",
"id": "transition.classify_governance",
"name": "Classify governance state",
"description": "Seed the current self-bootstrap target as already SO-enhanced before reusing the required bound runtime version.",
"targetNodeId": "state.channel_decision",
"outputPath": "governance_state",
"stepKind": "stateUpdate",
"command": {
"kind": "nativeCode",
"name": "workflow.classifyGovernanceState",
"environmentKey": "",
"parameters": {
"updates": {
"governance_state": "already_so_enhanced"
}
}
}
},
"transition.enter_reenhancement_context": {
"$kind": "expr",
"id": "transition.enter_reenhancement_context",
"name": "Already SO-enhanced",
"description": "Route into the explicit re-enhancement context path when the target is already SO-enhanced.",
"targetNodeId": "state.reenhancement_context",
"stepKind": "conditionBranch",
"guardExpression": "governance_state == 'already_so_enhanced'",
"succeedExpression": "governance_state == 'already_so_enhanced'"
},
"transition.use_bound_runtime_path": {
"$kind": "expr",
"id": "transition.use_bound_runtime_path",
"name": "Needs bound runtime path",
"description": "Use the normal skill-bound runtime path when the target is not yet SO-enhanced.",
"targetNodeId": "state.refresh_runtime",
"stepKind": "conditionBranch",
"guardExpression": "governance_state != 'already_so_enhanced'",
"succeedExpression": "governance_state != 'already_so_enhanced'"
},
"transition.inspect_existing_skill_markdown": {
"$kind": "command",
"id": "transition.inspect_existing_skill_markdown",
"name": "Inspect existing skill markdown",
"description": "Inspect the existing checked-in SKILL.md governance wording from a real checked-in file snapshot under the declared target-skill root before bound-runtime reacquisition.",
"targetNodeId": "state.inspect_package_lock",
"outputPath": "existing_skill_markdown_review",
"stepKind": "memoryRead",
"command": {
"kind": "nativeCode",
"name": "workflow.inspectExistingSkillMarkdown",
"environmentKey": "",
"parameters": {
"assetRootInput": "target_skill_path",
"checkedInAssets": [
"SKILL.md"
]
}
}
},
"transition.inspect_existing_package_lock": {
"$kind": "command",
"id": "transition.inspect_existing_package_lock",
"name": "Inspect existing package lock",
"description": "Inspect the existing checked-in package lock from a real checked-in file snapshot under the declared target-skill root before bound-version runtime reacquisition.",
"targetNodeId": "state.inspect_workflow_assets",
"outputPath": "existing_package_lock_review",
"stepKind": "memoryRead",
"command": {
"kind": "nativeCode",
"name": "workflow.inspectExistingPackageLock",
"environmentKey": "",
"parameters": {
"assetRootInput": "target_skill_path",
"checkedInAssets": [
"assets/so-workflow/so-package-lock.json"
]
}
}
},
"transition.inspect_existing_workflow_assets": {
"$kind": "command",
"id": "transition.inspect_existing_workflow_assets",
"name": "Inspect existing workflow assets",
"description": "Inspect the existing checked-in workflow template and governance assets from real checked-in file snapshots under the declared target-skill root before bound-version runtime reacquisition.",
"targetNodeId": "state.refresh_runtime",
"outputPath": "existing_workflow_assets_review",
"stepKind": "memoryRead",
"command": {
"kind": "nativeCode",
"name": "workflow.inspectExistingWorkflowAssets",
"environmentKey": "",
"parameters": {
"assetRootInput": "target_skill_path",
"checkedInAssets": [
"assets/so-workflow/so-template.json",
"assets/so-workflow/node-to-file-map.md",
"assets/so-workflow/governance-notes.md"
]
}
}
},
"transition.reacquire_runtime": {
"$kind": "command",
"id": "transition.reacquire_runtime",
"name": "Reacquire SO runtime bundle",
"description": "Pause for an external reacquisition of the exact SO runtime bundle bound to this skill build, then weave back runtime-ready evidence before any downstream analysis or authoring.",
"targetNodeId": "state.capture_guide",
"outputPath": "resolved_so_runtime",
"stepKind": "waitResume",
"satisfiesGateIds": [
"gate.bootstrap_runtime_ready"
],
"publishesOutputFamilies": [
"published_package_workflow_evidence",
"runtime_preflight_result",
"resolved_runtime_version_ref",
"runtime_bundle_packages_ref",
"unified_runtime_directory_ref"
],
"command": {
"kind": "tool",
"name": "workflow.reacquireRuntimeBundle",
"environmentKey": "",
"parameters": {
"resumeOutputKey": "resolved_so_runtime",
"requiredInputs": [
"published_package_workflow_evidence",
"runtime_preflight_result",
"resolved_runtime_version_ref",
"runtime_bundle_packages_ref",
"unified_runtime_directory_ref",
"resolved_so_runtime"
],
"lockFilePath": "assets/so-workflow/so-package-lock.json"
}
}
},
"transition.capture_guide": {
"$kind": "command",
"id": "transition.capture_guide",
"name": "Capture fresh guide surface",
"description": "Pause for an external fresh dotnet so.dll --guide capture from the published runtime bound to this skill build and stop all downstream work until that guide result is woven back.",
"targetNodeId": "state.post_guide_decision",
"outputPath": "resolved_guide_surface",
"stepKind": "waitResume",
"satisfiesGateIds": [
"gate.bootstrap_runtime_guide"
],
"publishesOutputFamilies": [
"resolved_guide_surface_ref"
],
"command": {
"kind": "tool",
"name": "workflow.captureGuideSurface",
"environmentKey": "",
"parameters": {
"resumeOutputKey": "resolved_guide_surface",
"requiredInputs": [
"resolved_guide_surface_ref",
"resolved_guide_surface"
],
"command": "dotnet so.dll --guide",
"languageInput": "guide_language"
}
}
},
"transition.require_reenhancement_gap_review": {
"$kind": "expr",
"id": "transition.require_reenhancement_gap_review",
"name": "Review reenhancement gaps",
"description": "Route SO-enhanced targets into an explicit comparison against the newly captured guide before common planning.",
"targetNodeId": "state.reenhancement_gap_review",
"stepKind": "conditionBranch",
"guardExpression": "governance_state == 'already_so_enhanced'",
"succeedExpression": "governance_state == 'already_so_enhanced'"
},
"transition.skip_reenhancement_gap_review": {
"$kind": "expr",
"id": "transition.skip_reenhancement_gap_review",
"name": "Skip reenhancement gaps",
"description": "Continue directly into the common planning path when this is not an already-governed target.",
"targetNodeId": "state.plan",
"stepKind": "conditionBranch",
"guardExpression": "governance_state != 'already_so_enhanced'",
"succeedExpression": "governance_state != 'already_so_enhanced'"
},
"transition.compare_skill_markdown_against_latest_guide": {
"$kind": "command",
"id": "transition.compare_skill_markdown_against_latest_guide",
"name": "Compare skill markdown against latest guide",
"description": "Use the reusable subagent at `assets/agents/loom-skill-enhancement-skill-markdown-gap-review.agent.md` to compare the current checked-in SKILL.md governance wording against the freshly captured guide before continuing the re-enhancement review chain.",
"targetNodeId": "state.reenhancement_lock_gap_review",
"outputPath": "reenhancement_skill_markdown_gap_review",
"stepKind": "subagentCall",
"command": {
"kind": "tool",
"name": "workflow.invokeSubagentGapReview",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-skill-markdown-gap-review.agent.md",
"skillHint": "Run the subagent at assets/agents/loom-skill-enhancement-skill-markdown-gap-review.agent.md and compare the checked-in SKILL.md against the latest guide export. If this pattern is copied to a target skill, reference that target-skill local .agent.md by relative path from both the target SKILL.md and the workflow-template weave-out hint.",
"requiredInputs": [
"existing_skill_markdown_review",
"resolved_guide_surface"
]
}
}
},
"transition.compare_package_lock_against_latest_guide": {
"$kind": "command",
"id": "transition.compare_package_lock_against_latest_guide",
"name": "Compare package lock against latest guide",
"description": "Use the reusable subagent at `assets/agents/loom-skill-enhancement-package-lock-gap-review.agent.md` to compare the current checked-in package lock against the freshly captured guide before continuing the re-enhancement review chain.",
"targetNodeId": "state.reenhancement_workflow_gap_review",
"outputPath": "reenhancement_package_lock_gap_review",
"stepKind": "subagentCall",
"command": {
"kind": "tool",
"name": "workflow.invokeSubagentGapReview",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-package-lock-gap-review.agent.md",
"skillHint": "Run the subagent at assets/agents/loom-skill-enhancement-package-lock-gap-review.agent.md and compare the checked-in so-package-lock.json against the latest guide and channel package rules. If this pattern is copied to a target skill, reference that target-skill local .agent.md by relative path from both the target SKILL.md and the workflow-template weave-out hint.",
"requiredInputs": [
"existing_package_lock_review",
"resolved_guide_surface"
]
}
}
},
"transition.compare_workflow_governance_against_latest_guide": {
"$kind": "command",
"id": "transition.compare_workflow_governance_against_latest_guide",
"name": "Compare workflow governance against latest guide",
"description": "Use the reusable subagent at `assets/agents/loom-skill-enhancement-workflow-governance-gap-review.agent.md` to compare the current checked-in workflow governance assets against the freshly captured guide before entering common plan analysis.",
"targetNodeId": "state.plan",
"outputPath": "reenhancement_workflow_gap_review",
"stepKind": "subagentCall",
"command": {
"kind": "tool",
"name": "workflow.invokeSubagentGapReview",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-workflow-governance-gap-review.agent.md",
"skillHint": "Run the subagent at assets/agents/loom-skill-enhancement-workflow-governance-gap-review.agent.md and compare the checked-in workflow governance assets against the latest guide. If this pattern is copied to a target skill, reference that target-skill local .agent.md by relative path from both the target SKILL.md and the workflow-template weave-out hint.",
"requiredInputs": [
"existing_workflow_assets_review",
"resolved_guide_surface"
]
}
}
},
"transition.analyze_scope": {
"$kind": "command",
"id": "transition.analyze_scope",
"name": "Analyze skill scope",
"description": "Use the reusable subagent at `assets/agents/loom-skill-enhancement-scope-input-output-analysis.agent.md` to analyze target-skill inputs, outputs, and required business deliverables.",
"targetNodeId": "state.plan_route_gate_review",
"outputPath": "assets/so-workflow/skill-plan.md",
"stepKind": "subagentCall",
"satisfiesGateIds": [
"gate.bootstrap_plan"
],
"publishesOutputFamilies": [
"skill_plan_md",
"review_plan_md",
"resolved_guide_surface_ref",
"package_index_links_ref"
],
"command": {
"kind": "tool",
"name": "workflow.invokeSubagentGapReview",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-scope-input-output-analysis.agent.md",
"skillHint": "Run the subagent at assets/agents/loom-skill-enhancement-scope-input-output-analysis.agent.md and analyze target-skill inputs, outputs, and required business deliverables before the route/gate analysis stage.",
"source_documents": [
"SKILL.md",
"reference/so-skill-reference.md"
],
"requiredRuntimeInputs": [
"resolved_so_runtime",
"resolved_guide_surface"
]
}
}
},
"transition.analyze_route_gate_structure": {
"$kind": "command",
"id": "transition.analyze_route_gate_structure",
"name": "Analyze route and gate structure",
"description": "Use the reusable subagent at `assets/agents/loom-skill-enhancement-route-gate-analysis.agent.md` to analyze branches, loops, seams, routes, and gate contracts.",
"targetNodeId": "state.plan_evidence_review",
"outputPath": "plan.route_gate_review",
"stepKind": "subagentCall",
"command": {
"kind": "tool",
"name": "workflow.invokeSubagentGapReview",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-route-gate-analysis.agent.md",
"skillHint": "Run the subagent at assets/agents/loom-skill-enhancement-route-gate-analysis.agent.md and analyze workflow branches, loops, seams, route structure, and gate contracts before the evidence review stage.",
"requiredInputs": [
"resolved_guide_surface",
"assets/so-workflow/skill-plan.md"
]
}
}
},
"transition.analyze_evidence_node_map": {
"$kind": "command",
"id": "transition.analyze_evidence_node_map",
"name": "Analyze evidence and node map",
"description": "Use the reusable subagent at `assets/agents/loom-skill-enhancement-evidence-node-map-analysis.agent.md` to analyze output evidence, node-to-file mapping, and reviewable artifact coverage before template drafting.",
"targetNodeId": "state.template_draft",
"outputPath": "plan.evidence_review",
"stepKind": "subagentCall",
"command": {
"kind": "tool",
"name": "workflow.invokeSubagentGapReview",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-evidence-node-map-analysis.agent.md",
"skillHint": "Run the subagent at assets/agents/loom-skill-enhancement-evidence-node-map-analysis.agent.md and analyze output evidence, node-to-file mapping, and reviewable artifact coverage before drafting the workflow template.",
"requiredInputs": [
"resolved_guide_surface",
"plan.route_gate_review",
"assets/so-workflow/skill-plan.md"
]
}
}
},
"transition.draft_template": {
"$kind": "command",
"id": "transition.draft_template",
"name": "Draft workflow template",
"description": "Run the required local workflow-designer subagent to draft or refresh the checked-in workflow template before compile review. The weave-back result must include both the checked-in template path and a workflow-designer dispatch record with relative-link context.",
"targetNodeId": "state.compile_review",
"outputPath": "assets/so-workflow/so-template.json",
"stepKind": "subagentCall",
"publishesOutputFamilies": [
"workflow_template_json",
"workflow_designer_dispatch_record"
],
"command": {
"kind": "tool",
"name": "workflow.invokeWorkflowDesignerSubagent",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-workflow-designer.agent.md",
"skillHint": "Run the local workflow designer subagent at assets/agents/loom-skill-enhancement-workflow-designer.agent.md with relative links to the target SKILL.md, so-template.json, so-package-lock.json, node-to-file-map.md, governance-notes.md, current guide surface, package-index files, and compile audit artifact expectations, then weave back the refreshed workflow template path plus a workflow-designer dispatch record.",
"resumeOutputKey": "workflow_template_json",
"requiredInputs": [
"workflow_template_json",
"workflow_designer_dispatch_record"
]
}
}
},
"transition.compile_template": {
"$kind": "command",
"id": "transition.compile_template",
"name": "Compile template artifacts",
"description": "Pause for an external compile of the template and weave back Mermaid, HTML, JSON backup, and analysis artifacts before user review.",
"targetNodeId": "state.weave_out_subagent_review",
"outputPath": "workflow.mermaid.md",
"stepKind": "waitResume",
"satisfiesGateIds": [
"gate.bootstrap_compile_review"
],
"publishesOutputFamilies": [
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json",
"workflow_json_backup"
],
"command": {
"kind": "tool",
"name": "workflow.compileTemplate",
"environmentKey": "",
"parameters": {
"resumeOutputKey": "workflow_mermaid_md",
"requiredInputs": [
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json",
"workflow_json_backup"
],
"artifactFamilies": [
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json",
"workflow_json_backup"
]
}
}
},
"transition.review_weave_out_subagent_fit": {
"$kind": "command",
"id": "transition.review_weave_out_subagent_fit",
"name": "Review weave-out subagent fit",
"description": "Review every current weave-out and determine whether it should become a dedicated target-skill local subagent under assets/, then record required relative-link updates for the target skill docs.",
"targetNodeId": "state.review_request",
"outputPath": "weave_out_subagent_review",
"stepKind": "subagentCall",
"publishesOutputFamilies": [
"weave_out_subagent_review",
"target_skill_subagent_assets",
"target_skill_subagent_link_updates"
],
"command": {
"kind": "tool",
"name": "workflow.invokeSubagentGapReview",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-weave-out-subagent-fit-review.agent.md",
"skillHint": "Run the dedicated weave-out subagent fit review at assets/agents/loom-skill-enhancement-weave-out-subagent-fit-review.agent.md and return an explicit machine-readable weave_out_subagent_review plus target_skill_subagent_assets and target_skill_subagent_link_updates lists.",
"resumeOutputKey": "weave_out_subagent_review",
"requiredInputs": [
"weave_out_subagent_review",
"target_skill_subagent_assets",
"target_skill_subagent_link_updates",
"SKILL.md",
"assets/so-workflow/node-to-file-map.md",
"resolved_guide_surface",
"plan.evidence_review",
"assets/so-workflow/so-template.json"
],
"outputBindings": {
"target_skill_subagent_assets": "$context:target_skill_subagent_assets",
"target_skill_subagent_link_updates": "$context:target_skill_subagent_link_updates"
}
}
}
},
"transition.request_review": {
"$kind": "command",
"id": "transition.request_review",
"name": "Request review feedback",
"description": "Ask for approval or revision feedback after compile-generated audit artifacts are available.",
"targetNodeId": "state.review_decision",
"stepKind": "askUser",
"ownedInputMode": "user",
"command": {
"kind": "tool",
"name": "workflow.requestBootstrapFeedback",
"environmentKey": "",
"parameters": {
"requiredInputs": [
"approval_decision",
"feedback_notes"
]
}
}
},
"transition.iterate_draft": {
"$kind": "expr",
"id": "transition.iterate_draft",
"name": "Revise draft",
"description": "Loop back when the user requests changes.",
"targetNodeId": "state.plan",
"stepKind": "conditionBranch",
"guardExpression": "approval_decision == 'revise'",
"succeedExpression": "approval_decision == 'revise'"
},
"transition.accept_draft": {
"$kind": "expr",
"id": "transition.accept_draft",
"name": "Accept draft",
"description": "Proceed when the user approves the workflow.",
"targetNodeId": "state.review_fix_loop",
"stepKind": "conditionBranch",
"guardExpression": "approval_decision == 'approve'",
"succeedExpression": "approval_decision == 'approve'"
},
"transition.run_review_fix_loop": {
"$kind": "command",
"id": "transition.run_review_fix_loop",
"name": "Run review-fix loop",
"description": "Run an explicit review-skill to fix-skill loop on the target skill, then prepare commit-and-report-ready evidence before the final blocked runtime handoff.",
"targetNodeId": "state.wait_runtime",
"outputPath": "review_fix_loop_evidence",
"stepKind": "subagentCall",
"publishesOutputFamilies": [
"review_fix_loop_evidence",
"commit_report_ready"
],
"command": {
"kind": "tool",
"name": "workflow.invokeSubagentGapReview",
"environmentKey": "",
"parameters": {
"subagentRelativePath": "assets/agents/loom-skill-enhancement-review-fix-loop.agent.md",
"skillHint": "Run the dedicated review-fix-loop subagent at assets/agents/loom-skill-enhancement-review-fix-loop.agent.md and return both review_fix_loop_evidence and an independent commit_report_ready record for the final handoff.",
"resumeOutputKey": "review_fix_loop_evidence",
"requiredInputs": [
"review_fix_loop_evidence",
"commit_report_ready",
"assets/so-workflow/so-template.json",
"target_skill_subagent_link_updates",
"workflow.mermaid.md",
"weave_out_subagent_review",
"approval_decision"
],
"outputBindings": {
"commit_report_ready": "$context:commit_report_ready"
}
}
}
},
"transition.wait_runtime": {
"$kind": "command",
"id": "transition.wait_runtime",
"name": "Publish blocked runtime outputs",
"description": "Publish the blocked runtime outputs before final lock.",
"targetNodeId": "state.lock",
"outputPath": "workflow.current.json",
"stepKind": "waitResume",
"blockedRoutes": [
"bootstrap_route"
],
"satisfiesGateIds": [
"gate.bootstrap_blocked_governance"
],
"publishesBlockedOutputFamilies": [
"workflow_runtime_copy_json",
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json"
],
"command": {
"kind": "tool",
"name": "workflow.publishBlockedArtifacts",
"environmentKey": "",
"parameters": {
"resumeOutputKey": "workflow_runtime_copy_json",
"runtimeCopyPath": "workflow.current.json",
"auditArtifactFamilies": [
"workflow_runtime_copy_json",
"workflow_mermaid_md",
"workflow_html",
"workflow_analysis_json"
]
}
}
},
"transition.finalize_lock": {
"$kind": "command",
"id": "transition.finalize_lock",
"name": "Finalize completion manifest",
"description": "Publish an external completion manifest after the blocked runtime review path succeeds. This runtime-owned step references checked-in source deliverables but does not claim to recreate them.",
"targetNodeId": "state.done",
"outputPath": "completion_manifest_reference",
"stepKind": "toolCall",
"terminalRoutes": [
"bootstrap_route"
],
"satisfiesGateIds": [
"gate.bootstrap_done"
],
"publishesOutputFamilies": [
"workflow_template_json",
"workflow_designer_dispatch_record",
"weave_out_subagent_review",
"target_skill_subagent_assets",
"target_skill_subagent_link_updates",
"review_fix_loop_evidence",
"commit_report_ready",
"checked_in_skill_markdown_asset",
"checked_in_package_lock_asset",
"node_to_file_map",
"completion_manifest_reference",
"completion_manifest_md"
],
"command": {
"kind": "tool",
"name": "write-file",
"environmentKey": "",
"parameters": {
"uniqueName": true,
"path": ".tmp/loom-skill-enhancement-completion-manifest.md",
"outputBindings": {
"workflow_template_json": "$context:workflow_template_json",
"workflow_designer_dispatch_record": "$context:workflow_designer_dispatch_record",
"weave_out_subagent_review": "$context:weave_out_subagent_review",
"target_skill_subagent_assets": "$context:target_skill_subagent_assets",
"target_skill_subagent_link_updates": "$context:target_skill_subagent_link_updates",
"review_fix_loop_evidence": "$context:review_fix_loop_evidence",
"commit_report_ready": "$context:commit_report_ready",
"checked_in_skill_markdown_asset": "SKILL.md",
"checked_in_package_lock_asset": "assets/so-workflow/so-package-lock.json",
"node_to_file_map": "assets/so-workflow/node-to-file-map.md",
"completion_manifest_md": "$result"
},
"content": "Self-bootstrap completed. Checked-in governed deliverables: SKILL.md, assets/so-workflow/so-package-lock.json, assets/so-workflow/node-to-file-map.md. Compile-time audit deliverables remain external: workflow.mermaid.md, workflow.html, workflow.json, workflow.analysis.json."
}
}
}
}
}
{
"name": "loom-skill-enhancement",
"inputs": {
"target_skill_path": "Required target skill root path. It must point at the skill directory that directly contains SKILL.md and assets/so-workflow/.",
"goal": "Required deterministic skill creation or upgrade goal.",
"requested_target_skill_changes": "Required description of target-skill files/contracts/assets to create or modify. This is the primary business-outcome contract.",
"channel": "Derived package channel for the enhancement pass. Infer released versus beta from the checked-in SO package lock and the bound skill package version when needed; do not ask the user to choose a channel during normal SO enhancement runs.",
"guide_language": "Optional language surface for package and guide links: en or zh-cn. If omitted, the current public guide surface defaults to en, so callers should pass zh-cn explicitly when they need Chinese guide links and should pass --lang <language> when invoking the guide command.",
"context_file": "Optional path to a JSON context file.",
"audit_output": "Optional audit output root."
},
"default_assumptions": {
"package_index_source": "The source of truth for acquiring the Loom Skill Orchestrator package is the absolute URL of the released or beta package index page that matches the chosen language surface. A local runtime install path is only an execution detail when the agent needs to run so.dll, and that runtime must follow the skill-bound package version and its derived channel unless the capability is explicitly marked Beta Only.",
"target_product_rule": "Any Loom Skill Orchestrator skill or target product that adopts Loom-bin-based skills must preserve released and beta package index absolute URLs in its own skill or product-facing docs, using localized mirrors when the product exposes localized package index pages.",
"runtime_install_root": "If execution needs a local runtime, resolve the exact package version from NuGet first and freshly download it unless the local cache already holds that exact version, then install or unpack the runtime from the selected package channel into an external temporary directory outside the target repository. Use GitHub-hosted package assets only as fallback when NuGet.org is unavailable. On Windows PowerShell 5.1, treat .nupkg as ZIP content and do not use Expand-Archive directly on the .nupkg.",
"runtime_bundle_restore": "When Loom Skill Orchestrator execution or target-skill restoration needs local NuGet acquisition, restore the Loom Skill Orchestrator runtime bundle instead of only the Loom Skill Orchestrator package: Techne.Loom.SkillOrchestrator, Techne.Loom.Common, and Techne.Loom.Abstractions, all at the same resolved channel/version.",
"published_package_workflow_rule": "For /loom-skill-enhancement itself and any SO-enhanced target skill, official workflow operations must use the published SO package artifacts for the skill-bound version and derived channel as the normal execution surface. Do not use repository-source builds, ad hoc local project outputs, or hand-assembled runtime folders as the standard workflow-operation path unless a blocked-state emergency exception was explicitly approved.",
"runtime_bundle_layout": "When local package-channel runtime execution is needed, resolve one exact Loom Skill Orchestrator bundle version first, acquire all three bundle packages in one pass, and extract them into one external unified runtime directory before any so.dll command. Do not probe or execute from partial single-package extraction roots.",
"fresh_runtime_copy_rule": "Every new official SO run must start from a freshly copied external runtime workflow file derived from checked-in source workflow assets. Resume in that same execution chain must continue against that same persisted runtime copy. Do not execute by mutating the checked-in template in place.",
"runtime_bundle_fallback": "If exact-version NuGet acquisition fails, reacquire that same three-package Loom Skill Orchestrator runtime bundle from GitHub fallback assets for the same resolved version, rebuild the same unified runtime directory, and only then continue with so.dll.",
"runtime_startup_contract": "When package-channel runtime execution is used, so.dll, so.deps.json, and so.runtimeconfig.json are mandatory startup-contract files. Missing any of them is runtime-invalid and execution must fail fast before SO command dispatch.",
"runtime_preflight_gate": "When package-channel runtime execution is used, run mandatory preflight checks for startup-contract files plus dependency-closure readiness (including System.Text.Json and Microsoft.Extensions.*) from the same unified runtime before any SO command. If extraction, file checks, or closure checks fail, stop immediately and keep runtime_preflight_result in a failed state.",
"package_channel_launch_mode": "In package-channel mode, prefer dotnet exec --depsfile <so.deps.json> --runtimeconfig <so.runtimeconfig.json> <so.dll> ... for SO command dispatch instead of implicit host resolution.",
"powershell_5_1_http_probe_rule": "When Windows PowerShell 5.1 uses Invoke-WebRequest or Invoke-RestMethod for package-channel HTTP probes, add -UseBasicParsing so runtime acquisition does not stall on legacy browser-engine security prompts.",
"runtime_closure_materialization": "Build package-channel unified runtime from deterministic NuGet restore/publish closure materialization. Do not treat hand-merged three-package lib trees as sufficient closure evidence.",
"business_scope_rule": "Loom Skill Orchestrator enhancement business is always to create or modify target skill deliverables. Runtime validation is supporting work and cannot replace target-skill delivery outputs.",
"guide_freshness_rule": "Every enhancement pass must first prove that the selected published Loom Skill Orchestrator runtime is runnable and can emit dotnet so.dll --guide [--lang <language>] from that runtime before authoring, editing, validating, compiling, running, resuming, or collecting downstream inputs for target-skill deliverables. Do not reuse stale guide output from an earlier session or older package version. Failed command stderr or missing-runtime errors do not count as guide output and must not be saved as official guide evidence.",
"runtime_execution_authority_rule": "If an SO-governed target-skill workflow is intended to become runnable execution authority, its materialized runtime workflow copy must execute on the current public dotnet so.dll run and dotnet so.dll resume path. Do not leave the runnable copy in Drafting, and do not depend on private or unavailable built-in tool names that the selected public runtime does not expose.",
"checked_in_asset_boundary_rule": "When MemoryRead inspects checked-in target-skill assets, require an explicit asset root via assetRootInput or assetRootPath, load real file snapshots from disk, and reject absolute paths or traversal that escapes that declared root.",
"meta_run_prohibition": "Loom Skill Orchestrator enhancement has no standalone meta-run completion path. Do not report completion from runtime-only validation when requested target-skill changes are missing.",
"minimal_target_dependency_policy": "When the target project does not already have its own dependencies installed, install only the minimum dependency set required to complete the requested target-skill changes and current guide-aligned validation work. Do not widen into unrelated package restore or optional toolchain installation.",
"think_out_loud_contract": "Once the package runtime is prepared and again on every Loom Skill Orchestrator progress update, think-out-loud must explicitly report resolved_runtime_version, runtime_bundle_packages, and unified_runtime_directory. On every Loom Skill Orchestrator progress update it must also explicitly report mermaid_file, html_file, and analysis_file from audit_artifacts when present.",
"executor": "The AI agent executes dotnet so.dll compile/run/resume/status/inspect-workflow/inspect-events directly in the terminal.",
"dll_interface_mapping": "Use only the public Loom Skill Orchestrator CLI surface from the guide that matches the skill-bound version, verify dotnet so.dll --help first, then verify the specific public subcommands you will actually use: dotnet so.dll --guide [--lang <language>], compile, run, resume, status, inspect-workflow, and inspect-events.",
"so_workflow_root": "<target-skill-root>/assets/so-workflow/",
"workflow_description_file": "<target-skill-root>/assets/so-workflow/skill-plan.md",
"workflow_designer_agent": "Use .github/skills/loom-skill-enhancement/assets/agents/loom-skill-enhancement-workflow-designer.agent.md as the required local subagent for workflow generation or workflow revision, and pass relative-link context for guide files, package-index files, target SKILL.md, package lock, workflow JSON, and audit artifacts.",
"package_lock_file": "<target-skill-root>/assets/so-workflow/so-package-lock.json",
"package_lock_template_example": ".github/skills/loom-skill-enhancement/examples/so-package-lock.example.json",
"workflow_description_granularity": "Fine-grained, derived from the current SKILL.md decision tree when it exists, or from goal plus supporting references when creating a greenfield skill, and then reviewed by the maintainer.",
"plan_mode_before_editing": "Before target-skill deliverables are modified, analyze target skill inputs, outputs, state nodes, transition groups, guards, branches, loops, user seams, runtime seams, validation gates, and output evidence, then generate a workflow template and user-readable review plan.",
"workflow_template_is_authority": "User feedback during plan review must be reflected in the workflow template or its source planning inputs. Mermaid, HTML, and localized plan prose are presentation layers and cannot be the only changed artifacts.",
"workflow_json_edit_policy": "For /loom-skill-enhancement and any SO-enhanced target skill, normal workflow governance stays on dotnet so.dll --guide, compile, run, and resume. Do not treat checked-in workflow JSON as a routine direct-edit surface.",
"workflow_json_blocked_override_only": "Direct workflow JSON edits are allowed only when the current SO path is fully blocked, the user explicitly approves a minimal workaround, the edit is the smallest change that unblocks the next dotnet so.dll compile/run/resume step, and the operator immediately returns to the SO-governed path.",
"running_workflow_copy_edit_rule": "Manual edits to the running external workflow .json copy are last-resort blocked-state emergency workarounds only. They must not be treated as a normal workflow-operation path for /loom-skill-enhancement or any SO-enhanced target skill.",
"compiled_analysis_artifact": "Each SO compile/run/resume audit step writes workflow.analysis.json next to workflow.mermaid.md, workflow.html, and workflow.json. The analysis report summarizes inputs, output families, branches, loops, seams, gates, and Turing-complete control risk.",
"node_type_visualization": "Mermaid visualization derives light node background colors from workflow step kind semantics plus owned-input metadata: AI/model/subagent green, code/tool blue, user-owned optional branch choice yellow, required user input red, generic conditional branches amber/yellow, and gate/governance states white or very light gray.",
"node_to_file_map": "Enhanced target skills should include a node-to-file or node-to-artifact map that connects workflow nodes to the target files, generated artifacts, or evidence records they govern.",
"weave_out_subagent_review_rule": "Before completion, review every current weave-out and decide whether it should be implemented as a dedicated target-skill local subagent under assets/{skillname}-{taskname}.agent.md. When the answer is yes, create or refresh that subagent file and add relative-link references in the target SKILL.md and target reference docs before the workflow can complete.",
"review_fix_loop_rule": "Before completion, run an explicit review-skill to fix-skill loop on the target skill, then produce commit-and-report-ready evidence rather than stopping at first-pass authoring or template compile.",
"confirmation_loop": "Before execution, present the analysis report, compiled Mermaid, localized review plan, route gates, branch/loop summary, and node-to-file map to the user. Repeat by updating the workflow template and recompiling until the user confirms the workflow reflects the intended design.",
"context_merge": "When references Markdown sources exist, concatenate references/*.md into a temporary merged-context.md working note with clear section headers, then convert the needed content into a temporary JSON context file for SO run context input.",
"template_and_audit_layout": "Store the workflow template JSON separately. Unless the user explicitly chooses an audit destination, keep event_log, Mermaid, HTML, and workflow backups under a user-level temporary audit root instead of the target skill directory.",
"template_node_governance": "Workflow templates must model explicit governed steps, guards, seams, and reviewable outputs. Never author or keep any node whose purpose says or implies run a multistep plan. Review templates for any node whose instruction embeds a multistep plan or a broad prompt to an agent, then split that work into explicit deterministic steps instead of hiding it behind a generic planner node.",
"workflow_designer_granularity_rule": "Workflow-designer subagents for AO and SO must generate node-level granularity where each node owns one visible responsibility, no node hides a visible subflow, and every weave-out branch has a detailed blocked-action hint that cites local relative-link context when available.",
"target_skill_agent_link_rule": "If SO enhancement introduces a target-skill local `{target-skill-name}-{task-name}.agent.md`, the target SKILL.md must reference that file with a relative link and the workflow template JSON weave-out hints or equivalent skill_hint guidance must reference the same file by relative path.",
"governed_template_validation_contract": "For SO-governed target-skill templates, write root templateKind as so-governed-target-skill and add a root validation contract with gates, routes, declaredUserOwnedFields, and reservedRuntimeOwnedFields.",
"business_output_gate_rule": "Terminal governed routes must satisfy declared business-output gates before done. Blocked governed routes must satisfy declared strongest-earned blocked-output gates before a runtime-owned wait boundary.",
"seam_ownership_rule": "AskUser seams may request only declared user-owned fields or decisions. Runtime-owned facts, provenance, workflow paths, event-log paths, and audit artifact paths belong to runtime-owned seams such as WaitResume.",
"locked_runtime_version": "After enhancement, write a machine-readable package lock file with the exact resolved SO NuGet version, channel, package identity, and runtime bundle members. When the enhanced target skill runs later, restore that exact locked SO runtime bundle from NuGet first, freshly downloading it unless the local cache already holds that exact version bundle.",
"target_skill_lock_reference": "The enhanced target SKILL.md must explicitly reference <target-skill-root>/assets/so-workflow/so-package-lock.json as the authoritative SO runtime version lock and must state that routine SO runtime restoration resolves the exact locked runtime bundle from NuGet first, freshly downloading it unless the local cache already holds that exact version bundle.",
"target_skill_json_edit_policy": "The enhanced target SKILL.md must explicitly state that ordinary workflow changes stay on the dotnet so.dll --guide/compile/run/resume path and that direct workflow JSON edits are blocked-state-only, user-approved emergency workarounds with immediate return to SO.",
"target_skill_runtime_restore_policy": "The enhanced target SKILL.md must explicitly state that Windows PowerShell 5.1 package-channel restores treat .nupkg as ZIP content rather than using Expand-Archive directly, that package-channel HTTP probes add -UseBasicParsing when Invoke-WebRequest or Invoke-RestMethod are used, and that extraction or startup-contract failures must not be recorded as runtime_preflight_result passed.",
"target_skill_published_package_rule": "The enhanced target SKILL.md must explicitly state that official workflow operations use the published SO package artifacts for the bound version and derived channel as the normal execution surface, and that repository-source builds or hand-assembled runtimes are not the default path.",
"target_skill_runtime_copy_policy": "The enhanced target SKILL.md must explicitly state that every new official SO run starts from a freshly copied external runtime workflow file rather than the checked-in template itself, while resume continues against the same persisted runtime copy from that execution chain.",
"reenhancement_upgrade_policy": "When the target skill needs another enhancement pass, do not ask the user to choose released versus beta. Use the exact version already bound to the current skill build and checked-in SO package lock, derive the channel from that version shape, reacquire that exact published runtime bundle, run dotnet so.dll --guide [--lang <language>] from that runtime before editing, and rewrite the package lock file only when the bound build version has changed.",
"reenhancement_subagent_review": "For targets already enhanced by Loom Skill Orchestrator, strongly recommend a subagent review that compares the existing skill and workflow assets against the guide result captured from the current skill-bound runtime before editing.",
"template_validation_gate": "Before the generated workflow template can become the execution authority for the enhanced target skill, the skill-bound published Loom Skill Orchestrator runtime must already be proven runnable with a fresh dotnet so.dll --guide result from that runtime, and the template must then be reviewed against that bound-version guide for completeness, detail, and the no-multistep-plan governance rule, and it must also pass dotnet so.dll compile --workflow-file <path>. If the governed workflow is intended to become runnable execution authority, its materialized runtime workflow copy must also be executable on the current public dotnet so.dll run and dotnet so.dll resume path rather than remaining a draft-only or compile-only artifact.",
"template_validation_scope": "For SO-governed target-skill templates, compile success also requires the root validation contract, route-aware business-output gates, strongest-earned blocked-output declarations, and seam ownership declarations to pass compile and workflow-load validation.",
"template_authority": "The reviewed workflow template JSON becomes the Loom Skill Orchestrator execution authority for the enhanced target skill after dotnet so.dll compile succeeds. If the governed workflow is intended to be runnable execution authority, the corresponding materialized runtime workflow copy must also be executable on the current public dotnet so.dll run and dotnet so.dll resume path.",
"skill_markdown_shape": "Compress the enhanced SKILL.md to about 80-100 lines while preserving high-level steps, guardrail headings, Loom Skill Orchestrator guidance, and the ## Workflow Contract title.",
"released_channel_wording": "If released artifacts do not provide the same Loom Skill Orchestrator enhancement surface, label that capability Beta Only.",
"weave_out_policy": "Use structured blocked payload fields such as current_step_kind to classify WaitResume handling, and consume skill_hint literally as the next external action instruction. Ask the user only when the structured payload indicates mandatory human-input seams. For waits on email, files, messages, or downstream script results, treat the state as a valid external wait that either returns the expected next input shape to the user or pauses until the external result arrives. Continue automatically only when the structured payload plus literal skill_hint point to a non-human continuation.",
"skill_layer_scope": "These defaults are skill-layer adaptation defaults rather than generic SO runtime guarantees. If the guide captured from the bound runtime version does not expose an equivalent surface, mark that behavior as Beta Only."
},
"outputs": {
"package_index_link": "Absolute URL to the package index page that matches the bound runtime version and chosen language surface.",
"package_index_links": "Released/beta package index absolute URL set, including localized mirrors when they exist.",
"guide_link": "Absolute URL to so-guide.md.",
"dll_interface_mapping": "Confirmed mapping between the skill runtime flow and Loom Skill Orchestrator public CLI commands used by the guide captured from the bound runtime version, including a recorded dotnet so.dll --help verification step and the specific subcommands used in the pass.",
"package_lock_template_example": "Path to the standard SO package lock template example that enhanced target skills should follow.",
"package_lock_file": "Machine-readable SO package lock file path with package identity, chosen channel, exact resolved version used for the enhancement pass, and runtime bundle members.",
"checked_in_package_lock_asset": "Checked-in SO package lock asset path that remains the authoritative source deliverable for the enhancement slice.",
"reenhancement_channel_confirmation": "When re-enhancing a target already enhanced by Loom Skill Orchestrator, record the derived released-or-beta channel evidence from the bound runtime version and package lock without a user prompt.",
"guide_refresh_evidence": "Evidence that the selected published Loom Skill Orchestrator runtime was runnable and that dotnet so.dll --guide [--lang <language>] was run successfully from that runtime before enhancement edits, validation work, compile, run, resume, or downstream input collection. Missing startup-contract files, extraction failures, or failed guide commands must keep this evidence in a failed state rather than being emitted as a pseudo-success record.",
"resolved_runtime_version": "Exact resolved SO bundle version used when local package-channel runtime acquisition was needed.",
"runtime_bundle_packages": "SO runtime bundle package list used for enhancement-time and target-skill restoration: Techne.Loom.SkillOrchestrator, Techne.Loom.Common, and Techne.Loom.Abstractions.",
"unified_runtime_directory": "External unified runtime directory that contains the extracted SO runtime bundle and is the only package-channel location from which so.dll is executed.",
"target_skill_lock_reference": "Explicit checked-in SKILL.md reference to <target-skill-root>/assets/so-workflow/so-package-lock.json as the authoritative SO runtime version lock.",
"checked_in_skill_markdown_asset": "Checked-in target SKILL.md asset path that remains the authoritative source deliverable for the enhancement slice.",
"target_skill_json_edit_policy": "Explicit checked-in SKILL.md rule that ordinary workflow changes stay on dotnet so.dll and that direct workflow JSON edits are blocked-state-only, user-approved emergency workarounds with immediate return to SO.",
"target_skill_runtime_copy_policy": "Explicit checked-in SKILL.md rule that every new official SO run starts from a freshly copied external runtime workflow file rather than the checked-in template itself, while resume continues against the same persisted runtime copy from that execution chain.",
"target_skill_runtime_hardening": "The enhanced target SKILL.md must require package-channel startup-contract preflight (so.dll, so.deps.json, so.runtimeconfig.json), dependency-closure checks, explicit package-channel launch mode via dotnet exec --depsfile/--runtimeconfig for so.dll when applicable, ZIP-based .nupkg extraction on Windows PowerShell 5.1, and a fail-fast rule that forbids pseudo-success runtime proof or guide exports after extraction or startup-contract failures.",
"requested_target_skill_changes": "Requested target-skill files/contracts/assets that must be created or modified in this enhancement pass.",
"workflow_validation_contract": "For SO-governed target-skill workflows, root templateKind plus validation.gates, validation.routes, validation.declaredUserOwnedFields, and validation.reservedRuntimeOwnedFields.",
"route_output_gate_evidence": "Route-aware evidence that done paths satisfy declared business-output gates and blocked paths satisfy declared strongest-earned blocked-output gates.",
"workflow_template": "Deterministic workflow JSON template path. This template only becomes the execution authority for the enhanced target skill after guide-alignment review, no-multistep-plan governance review, and dotnet so.dll compile succeed.",
"workflow_analysis_report": "workflow.analysis.json path containing generated analysis of inputs, outputs, branches, loops, seams, gates, and Turing-complete control risk.",
"workflow_designer_dispatch_record": "Record that the required local workflow-designer subagent was dispatched for template generation or revision, including the relative-link context set used for that dispatch.",
"weave_out_subagent_review": "Review summary that decides whether each current weave-out should become a dedicated target-skill local subagent and records the required subagent-definition follow-up.",
"target_skill_subagent_assets": "Target-skill local subagent definition files created or refreshed under assets/ as a result of the weave-out suitability review.",
"target_skill_subagent_link_updates": "Relative-link updates applied to the target SKILL.md and target reference docs for any target-skill local weave-out subagent files introduced by this enhancement pass.",
"localized_review_plan": "User-readable workflow and implementation review plan in the requested language when that language is not English.",
"compiled_mermaid": "Compiled Mermaid Markdown path generated from the workflow template, including node-type coloring derived from step kind semantics.",
"confirmation_loop_transcript": "Record of user feedback rounds and the workflow-template changes made in response before execution approval.",
"review_fix_loop_evidence": "Evidence from the explicit review-skill to fix-skill loop run before completion, including the final reviewed delta and the resulting target-skill corrections.",
"node_to_file_map": "Machine-readable or Markdown evidence map from workflow node ids to target files, generated artifacts, or audit records.",
"event_log_file": "SO event log path.",
"audit_artifacts": "Mermaid Markdown, HTML, workflow JSON backup, and workflow analysis links.",
"completion_manifest_reference": "Runtime-owned completion-manifest path that references checked-in source deliverables without overwriting them.",
"completion_manifest_md": "Runtime-owned completion-manifest file path used as the human-reviewable terminal artifact for the completion_manifest_md output family.",
"commit_report_ready": "Completion-time report evidence that the target skill is ready for commit and reporting handoff after the required review-fix loop.",
"published_package_workflow_evidence": "Evidence that workflow operations for /loom-skill-enhancement or the enhanced target skill used the published SO package artifacts for the bound runtime version and derived channel rather than repository-source builds or hand-assembled runtimes.",
"runtime_preflight_result": "Mandatory package-channel preflight result that covers startup-contract file checks and dependency-closure readiness checks before SO command dispatch.",
"package_channel_launch_mode": "Effective SO launch mode in package-channel execution, including explicit dotnet exec --depsfile/--runtimeconfig usage when applicable.",
"completion_by_target_skill_changes": "Completion requires the requested target-skill deliverables to be created or modified. Runtime-only validation artifacts are insufficient completion evidence.",
"think_out_loud_runtime_summary": "Think-out-loud must explicitly report resolved_runtime_version, runtime_bundle_packages, and unified_runtime_directory after runtime preparation and on every Loom Skill Orchestrator progress update.",
"think_out_loud_audit_paths": "Think-out-loud must explicitly report mermaid_file, html_file, and analysis_file on every Loom Skill Orchestrator progress update instead of hiding them inside a generic audit summary.",
"latest_guide_review": "When performed, a subagent review summary comparing the current target skill and workflow assets against the guide result captured from the current skill-bound runtime.",
"template_governance_evidence": "Evidence that the workflow template uses explicit governed steps, guards, seams, reviewable outputs, route-aware business-output gates, and ownership-safe seams, with no node intent that says or implies run a multistep plan."
}
}
{
"package_id": "Techne.Loom.SkillOrchestrator",
"channel": "released",
"resolved_version": "1.2.3",
"runtime_bundle": [
{
"package_id": "Techne.Loom.SkillOrchestrator",
"resolved_version": "1.2.3"
},
{
"package_id": "Techne.Loom.Common",
"resolved_version": "1.2.3"
},
{
"package_id": "Techne.Loom.Abstractions",
"resolved_version": "1.2.3"
}
],
"runtime_restore": {
"source": "nuget",
"fresh_download": true,
"allow_local_cache_when_exact_version_matches": true,
"fallback_source": "github-release-asset"
},
"enhancement": {
"resolved_at_utc": "2026-06-12T00:00:00Z",
"selected_language": "en"
},
"notes": [
"Resolve the exact version bundle from NuGet first.",
"Freshly download the full runtime bundle unless the local cache already holds the exact same bundle version.",
"Do not restore only Techne.Loom.SkillOrchestrator; always restore Techne.Loom.Common and Techne.Loom.Abstractions with it.",
"Use GitHub release assets only when NuGet.org is unavailable."
]
}