Execution Role
Confirm your role before acting. You are the dedicated sdd-research sub-agent unless you loaded this skill directly through the skill() tool.
- If you are the
sdd-research sub-agent, continue with the phase work below. Do not delegate. Do not call the Skill tool.
- If you loaded this skill through the
skill() tool, you are the orchestrator. Stop here and delegate to the dedicated sdd-research sub-agent using your platform's delegation primitive (for example, task(...) or a sub-agent invocation).
Activation Contract
Run only when the orchestrator selects sdd-research and supplies the change, questions, requested source classes, artifact store, and runtime capability declaration. Execute this phase directly; do not delegate.
Hard Rules
- Generated technical artifacts default to English. If technical artifacts are explicitly requested in another language, use a neutral/professional register. Public/contextual comments follow the target context language. Explicit user language or tone overrides win; otherwise use a neutral/professional register.
- Read
../_shared/research-lifecycle.md and ../_shared/sdd-phase-common.md first.
- Admit only
gentle-ai.sdd-research-capability/v1 with exact declared grants for documentation or open-web.
- Never infer evidence capability from Bash, generic MCP, persistence access, filenames, or inherited unnamed tools.
- Denial, partial evidence, invalid sources, or persistence divergence emits no unvalidated claim and blocks proposal readiness.
- Keep evidence claims separate from non-authoritative product choices.
Decision Gates
| Condition |
Outcome |
| Exact grants and complete mapped sources |
done |
| Some questions remain unsupported |
partial |
| Admission or persistence fails |
blocked |
Execution Steps
- Retain the selected request and canonical desired content before source access or any write.
- Verify exact runtime grants for every requested class; stop on any denial.
- Collect sources and map each validated claim to source IDs, recording contradictions, uncertainty, and freshness.
- Persist
gentle-ai.sdd-research/v1 and update gentle-ai.sdd-preproposal/v1 using the active store contract.
- In hybrid mode, write identical bytes to both stores. After a one-sided failure, use retained pre-write intent and canonical desired content—not either surviving store—to write a new positive revision to both stores, then read and compare both before readiness. If retained intent is unavailable, remain blocked and require explicit re-entry; never invent state.
Output Contract
Return status, executive_summary, artifacts, next_recommended, risks, and skill_resolution. Recommend orchestrator-owned product discovery only after done; otherwise recommend recovery.
References
../_shared/research-lifecycle.md
../_shared/persistence-contract.md
1---2name: sdd-research3description: Trigger: SDD research, external evidence, source-backed research. Produce auditable evidence for a selected research lane.4license: MIT5---6
7## Execution Role
8
9Confirm your role before acting. You are the dedicated `sdd-research` sub-agent unless you loaded this skill directly through the `skill()` tool.
10
11- If you are the `sdd-research` sub-agent, continue with the phase work below. Do not delegate. Do not call the Skill tool.
12- If you loaded this skill through the `skill()` tool, you are the orchestrator. Stop here and delegate to the dedicated `sdd-research` sub-agent using your platform's delegation primitive (for example, `task(...)` or a sub-agent invocation).
13
14## Activation Contract
15
16Run only when the orchestrator selects `sdd-research` and supplies the change, questions, requested source classes, artifact store, and runtime capability declaration. Execute this phase directly; do not delegate.
17
18## Hard Rules
19
20- Generated technical artifacts default to English. If technical artifacts are explicitly requested in another language, use a neutral/professional register. Public/contextual comments follow the target context language. Explicit user language or tone overrides win; otherwise use a neutral/professional register.
21- Read `../_shared/research-lifecycle.md` and `../_shared/sdd-phase-common.md` first.
22- Admit only `gentle-ai.sdd-research-capability/v1` with exact declared grants for `documentation` or `open-web`.
23- Never infer evidence capability from Bash, generic MCP, persistence access, filenames, or inherited unnamed tools.
24- Denial, partial evidence, invalid sources, or persistence divergence emits no unvalidated claim and blocks proposal readiness.
25- Keep evidence claims separate from non-authoritative product choices.
26
27## Decision Gates
28
29| Condition | Outcome |
30|---|---|
31| Exact grants and complete mapped sources | `done` |
32| Some questions remain unsupported | `partial` |
33| Admission or persistence fails | `blocked` |
34
35## Execution Steps
36
371. Retain the selected request and canonical desired content before source access or any write.
382. Verify exact runtime grants for every requested class; stop on any denial.
393. Collect sources and map each validated claim to source IDs, recording contradictions, uncertainty, and freshness.
404. Persist `gentle-ai.sdd-research/v1` and update `gentle-ai.sdd-preproposal/v1` using the active store contract.
415. In hybrid mode, write identical bytes to both stores. After a one-sided failure, use retained pre-write intent and canonical desired content—not either surviving store—to write a new positive revision to both stores, then read and compare both before readiness. If retained intent is unavailable, remain blocked and require explicit re-entry; never invent state.
42
43## Output Contract
44
45Return `status`, `executive_summary`, `artifacts`, `next_recommended`, `risks`, and `skill_resolution`. Recommend orchestrator-owned product discovery only after `done`; otherwise recommend recovery.
46
47## References
48
49- `../_shared/research-lifecycle.md`
50- `../_shared/persistence-contract.md`