Gopherbot Multi-Protocol Migration
When To Use
Use this skill for changes that touch one or more of:
- Simultaneous multi-protocol runtime behavior
- Connector fan-in/fan-out routing
- Identity mapping and authorization decisions
- Startup flow, protocol selection, or configuration precedence
- Cross-connector failure isolation and ordering guarantees
Do not use this skill for small isolated plugin/job/task changes that do not affect connector, identity, routing, startup, or config behavior.
Mandatory Preflight (Strict)
Before coding any non-trivial change, do all of the following:
- Read (in order):
aidocs/README.md, aidocs/COMPONENT_MAP.md, aidocs/STARTUP_FLOW.md, aidocs/GOALS_v3.md.
- Review
aidocs/TESTING_CURRENT.md for harness constraints.
- Summarize: architectural invariants, startup ordering, connector assumptions, routing model, identity model.
- Produce an Impact Surface Report using
references/impact-surface-report-template.md.
- Share the report in task context before implementation, unless explicitly waived by the user.
If waived, record the waiver in task context (example: "Impact report waived by user for this narrow change").
Hybrid Working Model
This skill uses both:
- Checklist guardrails (always enforced)
- Light runbook phases (recommended order, adjustable with explicit rationale)
Checklist Guardrails (Always)
- Shared authorization and business-policy logic stays in engine flows.
- Permission checks use protocol-agnostic username, not raw transport IDs.
- Connectors may use transport-specific internal user IDs, but must map IDs to shared username via roster.
- Cross-protocol identity equivalence must be explicit (never inferred heuristically).
- Per-connector message ordering guarantees must be preserved.
- Startup/control flow and config precedence must remain explicit and deterministic.
- When multiple connectors are enabled, connector failure isolation must prevent cascade failure.
Recommended Phase Order (Runbook)
- Identity and authorization substrate
- Multi-connector runtime orchestration
- Routing semantics and connector-local behavior boundaries
- Startup/configuration/default behavior migration
- Tests, documentation, and compatibility hardening
You may reorder phases when necessary, but state why in the impact report or task context.
Required Artifacts Per Non-Trivial Change
Use these templates:
- Impact report:
references/impact-surface-report-template.md
- PR invariants checklist:
references/pr-invariants-checklist-template.md
- Compatibility note:
references/compatibility-note-template.md
The compatibility note is required whenever behavior, config defaults, operator workflow, or externally visible semantics change.
Execution Rhythm For Large Changes
Work in thin vertical slices:
- Write impact report for one slice.
- Implement only that slice.
- Run focused tests first, then broader suite as needed.
- Fill PR checklist and compatibility note.
- Update affected
aidocs/ files in the same change.
Prefer multiple coherent PRs over one monolithic refactor.
Testing And Documentation Gates
- Verify behavior against
aidocs/STARTUP_FLOW.md if startup/config/order is touched.
- Update
aidocs/COMPONENT_MAP.md for connector/module movement.
- Update connector-specific docs (
aidocs/SSH_CONNECTOR.md, aidocs/SLACK_CONNECTOR.md, etc.) when semantics change.
- For test harness assumptions, verify with
aidocs/TESTING_CURRENT.md.
MCP Note
This skill assumes no MCP dependency for current work. Ignore MCP setup unless a future task explicitly requires MCP-backed tooling.
Resources
references/impact-surface-report-template.md
references/pr-invariants-checklist-template.md
references/compatibility-note-template.md
scripts/scaffold-change-docs.sh
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: gopherbot-multi-protocol-migration3description: Use when implementing or reviewing Gopherbot's simultaneous multi-protocol migration work across identity, routing, startup/configuration, connector behavior, and compatibility. Enforces strict pre-change impact analysis plus per-change invariants/testing/documentation checks.4---56# Gopherbot Multi-Protocol Migration78## When To Use910Use this skill for changes that touch one or more of:1112- Simultaneous multi-protocol runtime behavior13- Connector fan-in/fan-out routing14- Identity mapping and authorization decisions15- Startup flow, protocol selection, or configuration precedence16- Cross-connector failure isolation and ordering guarantees1718Do not use this skill for small isolated plugin/job/task changes that do not affect connector, identity, routing, startup, or config behavior.1920## Mandatory Preflight (Strict)2122Before coding any non-trivial change, do all of the following:23241. Read (in order): `aidocs/README.md`, `aidocs/COMPONENT_MAP.md`, `aidocs/STARTUP_FLOW.md`, `aidocs/GOALS_v3.md`.252. Review `aidocs/TESTING_CURRENT.md` for harness constraints.263. Summarize: architectural invariants, startup ordering, connector assumptions, routing model, identity model.274. Produce an Impact Surface Report using `references/impact-surface-report-template.md`.285. Share the report in task context before implementation, unless explicitly waived by the user.2930If waived, record the waiver in task context (example: "Impact report waived by user for this narrow change").3132## Hybrid Working Model3334This skill uses both:3536- Checklist guardrails (always enforced)37- Light runbook phases (recommended order, adjustable with explicit rationale)3839### Checklist Guardrails (Always)4041- Shared authorization and business-policy logic stays in engine flows.42- Permission checks use protocol-agnostic username, not raw transport IDs.43- Connectors may use transport-specific internal user IDs, but must map IDs to shared username via roster.44- Cross-protocol identity equivalence must be explicit (never inferred heuristically).45- Per-connector message ordering guarantees must be preserved.46- Startup/control flow and config precedence must remain explicit and deterministic.47- When multiple connectors are enabled, connector failure isolation must prevent cascade failure.4849### Recommended Phase Order (Runbook)50511. Identity and authorization substrate522. Multi-connector runtime orchestration533. Routing semantics and connector-local behavior boundaries544. Startup/configuration/default behavior migration555. Tests, documentation, and compatibility hardening5657You may reorder phases when necessary, but state why in the impact report or task context.5859## Required Artifacts Per Non-Trivial Change6061Use these templates:6263- Impact report: `references/impact-surface-report-template.md`64- PR invariants checklist: `references/pr-invariants-checklist-template.md`65- Compatibility note: `references/compatibility-note-template.md`6667The compatibility note is required whenever behavior, config defaults, operator workflow, or externally visible semantics change.6869## Execution Rhythm For Large Changes7071Work in thin vertical slices:72731. Write impact report for one slice.742. Implement only that slice.753. Run focused tests first, then broader suite as needed.764. Fill PR checklist and compatibility note.775. Update affected `aidocs/` files in the same change.7879Prefer multiple coherent PRs over one monolithic refactor.8081## Testing And Documentation Gates8283- Verify behavior against `aidocs/STARTUP_FLOW.md` if startup/config/order is touched.84- Update `aidocs/COMPONENT_MAP.md` for connector/module movement.85- Update connector-specific docs (`aidocs/SSH_CONNECTOR.md`, `aidocs/SLACK_CONNECTOR.md`, etc.) when semantics change.86- For test harness assumptions, verify with `aidocs/TESTING_CURRENT.md`.8788## MCP Note8990This skill assumes no MCP dependency for current work. Ignore MCP setup unless a future task explicitly requires MCP-backed tooling.9192## Resources9394- `references/impact-surface-report-template.md`95- `references/pr-invariants-checklist-template.md`96- `references/compatibility-note-template.md`97- `scripts/scaffold-change-docs.sh`9899---100> Converted and distributed by [TomeVault](https://tomevault.io/claim/lnxjedi) — claim your Tome and manage your conversions.101<!-- tomevault:4.0:skill_md:2026-04-11 -->