---
name: jordancoin-hub-safety
description: "Safety checks and procedures when modifying hub files (files imported by 3+ others). Activated when editing files with high importer counts."
license: "MIT"
metadata:
  decimalai-skill-id: "3d7bb74e-b3d1-4825-9d6a-0cb376c3232b"
  decimalai-version-id: "23057de4-ad68-4d08-9ee5-7d1d8dca17e4"
  decimalai-version: "1"
  decimalai-body-sha256: "54b92ecf9383a009e59b9db3841424a9aefbd9597f98f09a9aae698b9360a630"
  decimalai-name: "jordancoin/hub-safety"
  decimalai-format: "1"
  decimalai-invocation: "model"
  decimalai-category: "coding"
  decimalai-source: "https://app.decimal.ai/s/jordancoin-hub-safety@1/SKILL.md"
---
# Hub Safety Protocol

Hub files are imported by 3+ other files. Changes here ripple across the codebase.

## Before editing a hub file

1. Run `codemap --importers <file>` to see all dependents
2. Understand the public API surface: which functions/types are used externally
3. Check if tests exist for dependents, not just the hub itself

## While editing

- Prefer additive changes over breaking changes
- If renaming or removing a public symbol, update all importers in the same commit
- If changing a function signature, check all call sites

## After editing

- Run the full test suite, not just the hub's tests
- Run `codemap --deps .` to verify the dependency graph is intact
- If the hub has 8+ importers, consider a staged rollout (change hub, test, update callers separately)

## Risk escalation

| Importers | Risk | Action |
|-----------|------|--------|
| 3-5 | Medium | Run package tests + direct importer tests |
| 6-10 | High | Run full test suite, review all importers |
| 10+ | Critical | Consider splitting the hub or using an interface |
