Research Promote
System Prompt
EXECUTION DIRECTIVE:
When the user invokes /research-promote (or alias /promote), you MUST:
- IMMEDIATELY execute — no questions first
- Follow the promotion workflow defined below
- ALWAYS show dry-run plan first before any file operations
- Wait for user approval before executing promotions
Usage
# Promote artifacts for a specific topic (shows dry-run first)
/research-promote agent-labs
# Promote to a specific stage
/research-promote --topic "agent-labs" --to analysis
/research-promote --topic "agent-labs" --to integration --artifacts sdd,tdd,adrs
# Generate manifest only (no file promotion)
/research-promote --topic "agent-labs" --manifest-only
# Dry-run only (no execution, just show plan)
/research-promote --topic "agent-labs" --dry-run
# Archive superseded research
/research-promote --archive "palantir-2025" --reason "superseded by palantir-2026"
# List all staging directories with status
/research-promote --list
# Batch promote recent research (last N days)
/research-promote --recent 30
Options
| Option | Description | Default |
|---|---|---|
topic | Research topic name (positional or --topic) | Required |
--to STAGE | Target stage: analysis or integration | analysis |
--artifacts TYPES | Comma-separated artifact types to promote | All eligible |
--manifest-only | Generate manifest without promoting files | false |
--dry-run | Show plan without executing | false |
--archive TOPIC | Archive superseded research | - |
--reason TEXT | Reason for archival | Required with --archive |
--list | List staging directories with promotion status | - |
--recent N | Batch promote research from last N days | - |
--category CAT | Override auto-detected category | Auto-detect |
--force | Skip dry-run preview (use with caution) | false |
Execution Steps
Step 1: Discovery
# Locate staging directory
staging_dir = f"analyze-new-artifacts/{topic}/"
if not exists(staging_dir):
# Search for partial matches
matches = glob("analyze-new-artifacts/*{topic}*")
if matches:
present_matches_for_selection()
else:
error(f"No staging directory found for '{topic}'")
list_available_dirs()
return
# Scan for artifacts
artifacts = scan_staging_dir(staging_dir)
Step 2: Classification
Auto-classify into one of 6 ADR-207 categories:
| Category | Detection Heuristic |
|---|---|
technology-evaluation | GitHub repo input, SDD/TDD present, integration assessment |
academic | PDF/arXiv input, paper references, no SDD |
competitive-intelligence | Competitor name in topic, market positioning content |
business-market | Financial model, business case, market sizing |
domain | Industry-specific terms (FDA, HIPAA, etc.) |
process-internal | CODITECT internal tooling, pipeline improvements |
Step 3: Promotion Plan (Dry-Run)
Present a table for user review:
┌─────────────────────────────────────────────────────────────┐
│ /research-promote: agent-labs │
│ Category: technology-evaluation (auto-detected) │
│ Stage: analysis │
├─────────────────────────────────────────────────────────────┤
│ PROMOTION PLAN │
│ ─────────────── │
│ ✅ executive-summary.md │
│ → internal/research/executive-summaries/ │
│ 2026-02-16-agent-labs-executive-summary.md │
│ │
│ ✅ assessment (existing in analysis) │
│ → internal/analysis/agent-labs-scaling/ │
│ Already promoted │
│ │
│ ⏳ sdd.md (requires Go decision) │
│ → internal/architecture/sdd/agent-labs-sdd.md │
│ Status: DEFERRED — no ADR with Accepted status │
│ │
│ ⏳ tdd.md (requires Go decision) │
│ → internal/architecture/tdd/agent-labs-tdd.md │
│ Status: DEFERRED — no ADR with Accepted status │
│ │
│ ✅ glossary.md (14 terms — meets 10+ threshold) │
│ → internal/research/glossaries/ │
│ agent-orchestration-glossary.md │
│ │
│ ✅ quick-start.md │
│ → internal/research/quick-start-guides/ │
│ agent-labs-quick-start.md │
│ │
│ ❌ system-prompts/ (NEVER promoted) │
│ ❌ pipeline-report.json (NEVER promoted) │
│ ❌ research-context.json (NEVER promoted) │
│ │
│ ✅ MANIFEST │
│ → internal/research/manifests/ │
│ 2026-02-16-agent-labs.yaml │
│ │
├─────────────────────────────────────────────────────────────┤
│ Summary: 4 promote, 2 deferred, 3 skipped, 1 manifest │
│ Proceed? [y/N] │
└─────────────────────────────────────────────────────────────┘
Step 4: Execute
After user approval:
- Copy files from staging to permanent locations
- Rename per ADR-207 naming conventions
- Update frontmatter in promoted files
- Generate YAML manifest
- Validate manifest against schema
- Update registry README.md files
- Stage all changes with
git add - Report summary
Step 5: Commit
git commit -m "feat(ADR-207): Promote {topic} research artifacts
Promoted: {count} artifacts from staging to permanent locations
Category: {category}
Manifest: internal/research/manifests/YYYY-MM-DD-{topic}.yaml
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>"
Archive Mode
/research-promote --archive "palantir-2025" --reason "superseded by palantir-2026"
Archive workflow:
- Move artifacts from
internal/analysis/{topic}/tointernal/research/archive/{topic}/ - Create
SUPERSEDED.mdin archive directory with reason and replacement reference - Update manifest status to
archived - Update original location README to remove entry
List Mode
/research-promote --list
Shows all staging directories with promotion status:
┌────────────────────────────────────────────────────┐
│ Staging Directories (98 total) │
├────────────────────────────────────────────────────┤
│ PROMOTED (20) │
│ ✅ codestoryai-sidecar (2026-02-09) │
│ ✅ copilotkit (2026-01-28) │
│ ... │
│ │
│ READY TO PROMOTE (12) │
│ ⏳ agent-labs (2026-02-16) — assessment exists │
│ ⏳ kimi-2.5 (2026-02-14) — assessment exists │
│ ... │
│ │
│ NOT READY (66) │
│ ❌ llm-routing (2026-01-20) — no assessment │
│ ... │
└────────────────────────────────────────────────────┘
Success Output
✅ COMMAND COMPLETE: /research-promote
Topic: agent-labs
Category: technology-evaluation
Stage: analysis
Promoted: 4 artifacts
Deferred: 2 artifacts (awaiting Go decision)
Skipped: 3 artifacts (NEVER rules)
Manifest: internal/research/manifests/2026-02-16-agent-labs.yaml
Registry: Updated
Completion Checklist
Before marking complete:
- Staging directory scanned
- Category auto-detected or specified
- Dry-run plan presented to user
- User approved promotion
- Files copied to permanent locations
- Naming conventions applied
- Manifest generated and validated
- Registry README updated
- Changes staged and committed
Failure Indicators
This command has FAILED if:
- Staging directory not found
- No artifacts eligible for promotion
- Schema validation fails for manifest
- File copy operation fails
- User rejects promotion plan
When NOT to Use
- Research is still in progress (use staging)
- No assessment document exists (research incomplete)
- Topic has already been fully promoted
Related
- Agent:
artifact-promoter(implements promotion logic) - ADR: ADR-207 Research Artifact Organization Taxonomy
- ADR: ADR-206 Autonomous Research Pipeline
- Schema:
config/schemas/research-manifest-v1.schema.json - Pipeline:
/research-pipeline(generates artifacts this command promotes)
Command Version: 1.0.0 Created: 2026-02-16 Author: Claude (Opus 4.6)