| name | gse-integrate |
| description | Route capitalized solutions to their targets. Triggered by /gse:integrate after compound. |
GSE-One Integrate — Integration
Arguments: $ARGUMENTS
Options
| Flag / Sub-command | Description |
|---|
| (no args) | Route all capitalized solutions from the latest compound |
--axis project | Integrate project solutions only (Axe 1) |
--axis methodology | Integrate methodology solutions only (Axe 2) |
--axis competencies | Integrate competency solutions only (Axe 3) |
--dry-run | Show integration plan without executing |
--help | Show this command's usage summary |
Vocabulary note (Meta-2). "Axe 1/2/3" (capitalized) is deliberate corpus-wide vocabulary naming the three capitalization axes (project learnings / methodology feedback / competencies) — distinct from the coach's 8 monitoring "axes" (lowercase English). The two systems are never interchangeable; do not "translate" one into the other. Convention documented in CLAUDE.md > Activity path reference conventions area.
Why standalone: this activity deliberately stays separate from /gse:compound — it must be replayable after the fact (e.g., enable github.enabled later and route the pending tickets), support --dry-run, and route single axes. See spec §3.9 — Capitalization. (Meta-2 inline note, decision 2026-06-10.)
Prerequisites
Before executing, read:
.gse/status.yaml — current sprint and lifecycle state
.gse/config.yaml — project configuration
.gse/profile.yaml — user profile, competency map
docs/sprints/sprint-{NN}/compound.md — capitalization output (source of solutions)
- Upstream repository URL for methodology issues (Axe 2). Pre-condition
config.yaml → github.enabled: if false, Axe 2 is skipped entirely (Inform note: "GitHub ticket routing disabled — local methodology feedback preserved; no issues submitted upstream") and .gse/compound-tickets-draft.yaml is deleted if present (user's intent is "export only"). If true or unset, apply the Resolution order: (1) config.yaml → github.upstream_repo if set (user override — private forks, corporate trackers), (2) the installed metadata file — cat "$([ -s .gse/registry ] && cat .gse/registry || cat ~/.gse-one)/gse.json" → repository field (shipped next to VERSION in every install mode, uniform across all five platforms), (3) skip Axe 2 with an Inform note.
Workflow
Step 1 — Axe 1: Project Integration
Route project-level learnings into operational configuration:
-
Patterns — If patterns were identified, consider:
- Adding them as coding conventions in project config (
.gse/config.yaml or project linter rules)
- Creating template snippets in project templates
- Updating project documentation
-
Lessons learned — If prevention strategies were defined:
- Add as review checklist items in
.gse/config.yaml under review.custom_checks
- Update
.gse/config.yaml constraints or guardrails
-
Technical debt — If debt items were flagged:
- Create backlog entries in
.gse/backlog.yaml (pool, not assigned to a sprint)
- Set appropriate priority based on impact assessment
-
Report changes made to project configuration files.
Step 2 — Axe 2: Methodology Integration
Route methodology feedback to the GSE-One repository. This step consumes the ticket draft prepared by /gse:compound Axe 2.
-
Read the draft — look for .gse/compound-tickets-draft.yaml prepared by the most recent /gse:compound Axe 2 run. Each entry was already validated by the user during COMPOUND's per-ticket Gate (approve / edit / skip) with quality filters applied (concrete, theme-grouped, deduplicated, capped).
- If the file is absent (user chose option 1 "local export only" in COMPOUND, or COMPOUND was skipped): skip this step with an Inform note: "No GitHub ticket proposals to process — Axe 2 handoff file absent."
- If the file is present: proceed.
-
Final confirmation Gate (public submission — privacy acknowledgment). List the approved tickets one last time (title + label + one-line body preview) and state explicitly that submission will create public issues on the resolved repository. Ask: "Submit {N} methodology issues to the upstream repository ({repo_url})? Note: issues are public and visible to anyone with access to the repo."
- Options: Submit all / Review individually again / Cancel / Discuss.
-
On submission, for each approved ticket (using the repository resolved per Prerequisite 5):
gh issue create \
--repo {resolved_upstream_repo} \
--title "{title}" \
--body "{body}" \
--label "{label}"
Capture the returned issue URL.
-
Record created issue URLs in docs/sprints/sprint-{NN}/compound.md under a "Submitted Issues" section. Cross-link: each source observation in the sprint artefacts gets a pointer to the created issue URL for bidirectional traceability.
-
Clean up — after successful submission, delete .gse/compound-tickets-draft.yaml (the handoff is consumed). If submission partially failed (e.g., rate limit), keep the draft with remaining entries for a retry.
-
Skipped / cancelled proposals — not re-proposed unless the same theme is observed again in a future sprint. Recorded in compound.md as "Deferred" with the source observation references.
Step 3 — Axe 3: Competency Integration
Route competency learnings into persistent storage:
-
Learning notes — Write or append to docs/learning/ directory:
- One file per topic area (e.g.,
docs/learning/python-patterns.md, docs/learning/testing-strategies.md)
- Each note includes: date, sprint context, concept, practical example
-
Competency map — Update profile.yaml competency section:
- Adjust skill levels based on sprint evidence
- Add new skills discovered during the sprint
- Update
last_practiced timestamps
-
Learning suggestions — If proactive LEARN proposals were generated in compound:
- Persist accepted proposals as learning goals in
profile.yaml
- Declined proposals are not persisted
Step 4 — Finalize
- (Cursor fields
last_activity, last_activity_timestamp are maintained centrally by the orchestrator after the activity closes — see plugin/agents/gse-orchestrator.md — section "Sprint Plan Maintenance", and gse-one-implementation-design.md §10.1 — Sprint Plan Lifecycle (v0.53.0). INTEGRATE writes no cursor fields directly.)
- Report integration summary:
- Project config changes: {count}
- Issues created: {count} (with URLs)
- Learning notes updated: {count}
- Competency map changes: {count}
- Sprint cycle is now complete. Propose:
- Start next sprint:
/gse:go (will detect and propose LC01 for sprint S{NN+1})
- Or pause:
/gse:pause to save state and resume later