62 handoff readiness check
Skill FluxonLab/Skillry/plugins/devops-and-release/skills/62-handoff-readiness-check
Installable, permission-bounded, multi-platform agent skills & subagents for Claude Code, Codex, Copilot & Gemini/Antigravity — 125 skills + 73 subagents across 18 departments, with a validation harness, native plugin marketplace, and full upstream attribution. by FluxonLab.
npx -y skills add FluxonLab/Skillry --skill 62-handoff-readiness-checkAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use when you need to check documentation, runbooks, install commands, local startup, tests, and transfer readiness.
SKILL.md
8.7 KB, ~1.9k tokens by cl100k_base, as published. Nobody here has run it
Handoff Readiness Check
Purpose
Evaluate whether a project, service, or feature is ready to be handed off to another engineer, team, or on-call rotation. Check that documentation is accurate and complete, local setup works from a cold start, tests pass and are meaningful, runbooks cover incident scenarios, there is no single person who is irreplaceable (bus factor), and an incoming engineer can be productive within a defined time target. Produce a scored readiness report with specific gaps and remediation tasks.
When to use
- A team member is leaving and their components need to be transferred to others.
- An external vendor or agency is handing a codebase to an internal team.
- A project exits active development and enters maintenance mode.
- An on-call rotation is being extended to include engineers who did not build the service.
- A code review reveals that only one person understands how a critical component works.
When not to use
- The task is to build the documentation from scratch — that is a writing task; use this skill to evaluate existing documentation.
- The handoff is for a very short-lived prototype that will be discarded.
- A formal onboarding checklist already exists and was recently validated.
Procedure
- Evaluate the README. Read
README.mdand check for:
- Purpose statement: what does this service/component do, in one paragraph?
- Prerequisites: exact versions of runtime (Node 20, Python 3.12), required global tools, and how to install them.
- Install command:
npm install,pip install -r requirements.txt, etc. — must be one command. - Start command:
npm run dev,docker-compose up, etc. — must be one command. - Test command:
npm test,pytest, etc. - Link to architecture diagram or decision records if the system is non-trivial. Attempt to follow the README steps mentally; flag any step that requires implicit knowledge.
-
Verify local setup from a cold start. Check for an
.env.exampleor equivalent with all required variables and placeholder values. Confirm there are no hard-coded paths to the original developer's machine. Confirm any seed or init scripts are documented and idempotent. -
Assess architecture documentation. For services older than 3 months or with more than 5 components, check for:
- System context diagram (what external systems does this connect to?).
- Data flow diagram or sequence diagram for the primary user action.
- ERD or schema summary for databases with more than 10 tables.
- ADRs (Architecture Decision Records) for non-obvious technology choices. Missing diagrams are acceptable if the system is small; document what "small" means for this context.
- Review runbooks. For each production incident type the service could experience, check for a runbook covering:
- How to detect the issue (which alert fires, which log pattern to look for).
- How to diagnose the root cause (which dashboard, which query to run).
- How to remediate (exact commands, with expected output).
- How to verify the fix. Check the runbook list against the actual alert rules in monitoring config.
- Identify bus factor risks. Run
git log --format='%ae' | sort | uniq -c | sort -rnto see commit distribution. A single author with >70% of commits and no recent commits from others is a bus factor risk. Also check for:
- Vendor-specific tooling only one person knows how to operate.
- Undocumented production credentials stored only in one person's password manager.
- Critical scripts living only on a developer's laptop.
- Validate test suite health. Run the test suite (or read recent CI results) and confirm:
- Tests pass consistently, not intermittently.
- Test coverage is above a meaningful threshold for the critical paths.
- Tests are readable: a new engineer can understand what is being tested without asking the original author.
- Flaky tests are documented, not just skipped with
xitor@pytest.mark.skip.
-
Check dependency freshness. Verify no runtime dependency is end-of-life (Node 16, Python 3.8, Rails 6). End-of-life dependencies receive no security patches and become increasingly difficult to support.
-
Audit secret and credential ownership. Confirm all production secrets are stored in a team-accessible secret manager (not a personal 1Password account). Confirm the team has access to: cloud provider console, DNS management, monitoring dashboard, error tracking.
-
Estimate time-to-productivity for an incoming engineer. Based on the above, estimate: how long it takes to get the service running locally, understand the architecture, make a small change, and deploy it. Anything over 2 days for a straightforward service is a handoff risk.
-
Produce a gap list with owners. For each gap found, create a specific actionable task with an estimated effort (15 min, 1 hour, 1 day) so the outgoing engineer can prioritize before departure.
Checklist
- README has: purpose, prerequisites (with exact versions), install, start, and test commands.
-
.env.exampleexists with all variables and placeholder values. - Local setup can be followed without implicit knowledge.
- Architecture documentation exists for systems with > 5 components.
- Runbooks cover every active production alert rule.
- Bus factor: at least 2 people can operate the service without the original author.
- All production credentials are in a team-accessible secret manager.
- Test suite passes consistently; no unexplained skipped tests.
- No runtime dependency is end-of-life.
- Time-to-productivity estimate is documented and acceptable (< 2 days for a typical engineer).
Common issues & anti-patterns
- README last updated 18 months ago: the install command references a package that was renamed; new engineers spend hours debugging a one-word change.
- "Ask Alice" documentation: README says "ask Alice about the deploy process" — Alice has left.
- Setup requires Homebrew formula from a private tap: the tap is no longer maintained; the setup is broken for new machines.
- Runbook references a dashboard that was renamed: the engineer pages the on-call for a P1 incident and cannot find the dashboard during the fire.
- Critical SQL queries stored in a personal Notion page: the team cannot find them during an incident.
- Bus factor = 1 for the database schema: nobody knows why certain columns exist; changes break things unexpectedly.
- Tests pass but are meaningless: 100% coverage via mocking everything, including the unit under test.
- Docker Compose works on macOS but not Linux: environment-specific setup issues are undocumented.
- Production secrets in a personal Google Drive share: inaccessible when the owner's account is deactivated.
Required output
## Handoff Readiness Report: [Service/Project Name]
### Overall readiness score: X/10
### README quality
- Purpose statement: present / missing
- Prerequisites with versions: present / missing / incomplete
- Install command: present / missing / broken
- Start command: present / missing / broken
- Test command: present / missing
- Issues: list
### Local setup
- .env.example: present / missing
- Setup followable without prior knowledge: yes / no
- Blockers: list
### Architecture documentation
- System context diagram: present / missing
- Data flow / sequence diagram: present / missing
- ADRs: present (N) / missing
- Gaps: list
### Runbooks
- Active alerts: N
- Runbooks covering those alerts: M (X%)
- Missing runbooks: list of alert names
### Bus factor
- Author distribution: top contributor owns X% of commits
- Team-accessible credentials: yes / no
- Single-owner knowledge areas: list
### Test suite health
- Pass rate: X% (consistent / flaky)
- Skipped tests: N (with explanations: yes/no)
### Dependency health
- End-of-life dependencies: list
### Time-to-productivity estimate
- Get running locally: X hours
- Understand architecture: X hours
- Make a change and deploy: X hours
- Total: X hours — acceptable / at risk
### Gap remediation tasks (ordered by priority)
| Task | Effort | Owner |
|------|--------|-------|
| Add .env.example | 15 min | outgoing dev |
| Write deploy runbook | 2 hours | outgoing dev |
| Transfer DB credentials to 1Password team vault | 30 min | outgoing dev |
Safety
- Do not access or modify production secret stores, cloud consoles, or monitoring systems.
- Do not run setup or install commands that would change the developer's environment.
- Do not create or modify documentation files — produce the gap list for the human to act on.
- Do not commit any changes on behalf of the outgoing engineer.