/pre-landing-review
Gate-oriented safety audit for code changes before landing, using a checklist with two-pass severity triage. Triggers on: "is this safe to land", "pre-landing review", "safety check before merge", "gate check", "/pre-landing-review". NOT for diff review, use pr-review.
$ npx -y skills add Mathews-Tom/armory --skill pre-landing-review --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/pre-landing-review
Context preview
The summary Claude sees to decide when to auto-load this skill.
Gate-oriented safety audit for code changes before landing, using a checklist with two-pass severity triage. Triggers on: "is this safe to land", "pre-landing review", "safety check before merge", "gate check", "/pre-landing-review". NOT for diff review, use pr-review.
SKILL.md
pre-landing-review.SKILL.mdname: pre-landing-review
description: 'Gate-oriented safety audit for code changes before landing, using a checklist with two-pass severity triage. Triggers on: "is this safe to land", "pre-landing review", "safety check before merge", "gate check", "/pre-landing-review". NOT for diff review, use pr-review.'
metadata:
version: 1.0.1
category: review
tags: [pre-merge, safety-gate, code-review, checklist]
difficulty: intermediate
phase: review
Pre-Landing Review
Gate-oriented safety audit for code changes before landing. Uses a structured checklist with two-pass severity triage and blocking/non-blocking classification.
**Distinct from `pr-review`**: pr-review is a multi-dimension code quality review. This skill is a **gate-oriented safety audit** — it uses an external checklist with two-pass severity triage and a blocking/non-blocking classification.
> **Native alternative:** Claude Code's `/ultrareview` runs a dedicated native review session optimized for bug-finding (Anthropic ships three free per month on Pro/Max plans at Opus 4.7's launch). Use this skill for checklist-driven, gate-oriented blocking classification with a documented triage protocol; use `/ultrareview` for lightweight bug-hunting on a single change.
Workflow
1. Determine Diff
Identify the changes to review:
- If on a feature branch: diff against the default branch (`git symbolic-ref refs/remotes/origin/HEAD`)
- If given a PR number: fetch that PR's diff
- If given specific files: review those files
2. Load Checklist
Read `references/checklist.md`. This is mandatory — if the checklist is unreadable, STOP and report the error.
3. Pass 1 — CRITICAL (blocking)
Review the diff against critical safety categories. These are potential ship-blockers.
SQL & Data Safety
- Raw SQL without parameterization
- Schema changes without migration safety (lock timeout, reversibility)
- Bulk updates/deletes without WHERE clause verification
- Direct column updates bypassing model validations/callbacks
Race Conditions & Concurrency
- Read-then-write without locking
- Unique constraint reliance without database-level enforcement
- Shared mutable state without synchronization
- Queue/background job idempotency
Trust Boundaries
- LLM/AI output used in SQL, shell commands, or rendered HTML without sanitization
- User input reaching privileged operations without validation
- External API responses used without schema validation
- Deserialization of untrusted data
For each CRITICAL finding:
1. Cite exact file and line 2. Explain the specific risk 3. Use `AskUserQuestion` with exactly three options: **Fix now** / **Acknowledge risk** / **False positive** 4. If "Fix now": make the fix, then re-check 5. If "Acknowledge": record acknowledgment, continue 6. If "False positive": record, continue
4. Pass 2 — INFORMATIONAL (non-blocking)
Review against remaining categories:
**Conditional Side Effects** — side effects hidden in conditional branches, callbacks triggered by state changes, error handlers silently swallowing failures.
**Magic Numbers** — unexplained numeric literals, hardcoded thresholds without constants, timeout values without rationale.
**Dead Code** — unreachable branches, unused imports, commented-out code without explanation.
**Test Gaps** — new code paths without test coverage, modified behavior without updated tests, missing edge case and error path tests.
**Crypto & Entropy** — weak random sources for security contexts, hardcoded secrets, missing TLS/encryption for sensitive data in transit.
**Time Window Safety** — timezone-naive comparisons, daylight saving edge cases, cron expressions not accounting for clock skew.
**Type Coercion** — implicit type conversions that could lose data, numeric precision loss across boundaries, implicit string encoding at I/O boundaries.
Present all informational findings in a single summary table (file, line, category, description).
5. Gate Classification
- All Pass 1 issues resolved (fixed or acknowledged) → **CLEAR TO LAND**
- Any unresolved Pass 1 issue → **BLOCKED**
- Pass 2 issues are advisory — they don't block landing
6. Suppressions
Do NOT flag:
- Test files using test fixtures/factories
- Migration files following framework conventions
- Comments explaining why a pattern is intentional
- Configuration files with documented values
- Type stubs or interface definitions
Output
Gate verdict (CLEAR TO LAND / BLOCKED), critical issues summary with resolution status, informational findings table.
**This skill is read-only by default** — only modifies code when user explicitly chooses "Fix now" on a critical issue.
Read more
name: pre-landing-review description: 'Gate-oriented safety audit for code changes before landing, using a checklist with two-pass severity triage. Triggers on: "is this safe to land", "pre-landing review", "safety check before merge", "gate check", "/pre-landing-review". NOT for diff review, use pr-review.' metadata: version: 1.0.1 category: review tags: [pre-merge, safety-gate, code-review, checklist] difficulty: intermediate phase: review
Pre-Landing Review
Gate-oriented safety audit for code changes before landing. Uses a structured checklist with two-pass severity triage and blocking/non-blocking classification.
**Distinct from `pr-review`**: pr-review is a multi-dimension code quality review. This skill is a **gate-oriented safety audit** — it uses an external checklist with two-pass severity triage and a blocking/non-blocking classification.
> **Native alternative:** Claude Code's `/ultrareview` runs a dedicated native review session optimized for bug-finding (Anthropic ships three free per month on Pro/Max plans at Opus 4.7's launch). Use this skill for checklist-driven, gate-oriented blocking classification with a documented triage protocol; use `/ultrareview` for lightweight bug-hunting on a single change.
Workflow
1. Determine Diff
Identify the changes to review:
- If on a feature branch: diff against the default branch (`git symbolic-ref refs/remotes/origin/HEAD`)
- If given a PR number: fetch that PR's diff
- If given specific files: review those files
2. Load Checklist
Read `references/checklist.md`. This is mandatory — if the checklist is unreadable, STOP and report the error.
3. Pass 1 — CRITICAL (blocking)
Review the diff against critical safety categories. These are potential ship-blockers.
SQL & Data Safety
- Raw SQL without parameterization
- Schema changes without migration safety (lock timeout, reversibility)
- Bulk updates/deletes without WHERE clause verification
- Direct column updates bypassing model validations/callbacks
Race Conditions & Concurrency
- Read-then-write without locking
- Unique constraint reliance without database-level enforcement
- Shared mutable state without synchronization
- Queue/background job idempotency
Trust Boundaries
- LLM/AI output used in SQL, shell commands, or rendered HTML without sanitization
- User input reaching privileged operations without validation
- External API responses used without schema validation
- Deserialization of untrusted data
For each CRITICAL finding:
1. Cite exact file and line 2. Explain the specific risk 3. Use `AskUserQuestion` with exactly three options: **Fix now** / **Acknowledge risk** / **False positive** 4. If "Fix now": make the fix, then re-check 5. If "Acknowledge": record acknowledgment, continue 6. If "False positive": record, continue
4. Pass 2 — INFORMATIONAL (non-blocking)
Review against remaining categories:
**Conditional Side Effects** — side effects hidden in conditional branches, callbacks triggered by state changes, error handlers silently swallowing failures.
**Magic Numbers** — unexplained numeric literals, hardcoded thresholds without constants, timeout values without rationale.
**Dead Code** — unreachable branches, unused imports, commented-out code without explanation.
**Test Gaps** — new code paths without test coverage, modified behavior without updated tests, missing edge case and error path tests.
**Crypto & Entropy** — weak random sources for security contexts, hardcoded secrets, missing TLS/encryption for sensitive data in transit.
**Time Window Safety** — timezone-naive comparisons, daylight saving edge cases, cron expressions not accounting for clock skew.
**Type Coercion** — implicit type conversions that could lose data, numeric precision loss across boundaries, implicit string encoding at I/O boundaries.
Present all informational findings in a single summary table (file, line, category, description).
5. Gate Classification
- All Pass 1 issues resolved (fixed or acknowledged) → **CLEAR TO LAND**
- Any unresolved Pass 1 issue → **BLOCKED**
- Pass 2 issues are advisory — they don't block landing
6. Suppressions
Do NOT flag:
- Test files using test fixtures/factories
- Migration files following framework conventions
- Comments explaining why a pattern is intentional
- Configuration files with documented values
- Type stubs or interface definitions
Output
Gate verdict (CLEAR TO LAND / BLOCKED), critical issues summary with resolution status, informational findings table.
**This skill is read-only by default** — only modifies code when user explicitly chooses "Fix now" on a critical issue.
Curated, production-grade skills, agents, hooks, rules, commands, utilities, and presets for AI coding agents. No magic, no demos — battle-tested workflows built for developers who use AI seriously.
Repo: Mathews-Tom/armory
Other skills on armory.
- /adr-writer
Generates Architecture Decision Records capturing context, rationale, alternatives, and consequences in numbered status-tracked format. Triggers on: "write an ADR", "document this decision", "architecture decision record", "decision record", "design decision", "ADR for".
Open skill - /agent-builder
Build AI agents and automate Claude Code programmatically via the Claude Agent SDK and headless CLI mode. Covers Python SDK, claude -p, SDK MCP servers, hooks, sessions. Triggers on: "build an agent", "agent SDK", "headless mode", "automate Claude", "programmatic agent".
Open skill - /api-docs-generator
Audits and enhances FastAPI and REST API documentation: missing descriptions, response codes, examples, docstrings, Pydantic models, OpenAPI spec. Triggers on: "generate API docs", "document this API", "OpenAPI for", "FastAPI docs", "document endpoints", "swagger docs".
Open skill - /architecture-diagram
Generate layered architecture diagrams as self-contained HTML with inline SVG icons, CSS Grid containers, and connection overlays. Triggers on: "architecture diagram", "infra diagram", "system diagram", "deployment diagram", "topology", "draw architecture". NOT for architecture
Open skill - /architecture-reviewer
Architecture reviews across 7 dimensions (structural, scalability, enterprise readiness, performance, security, ops, data) with scored reports. Triggers on: "review architecture", "critique design", "audit system", "assess scalability", "enterprise readiness", "technical due
Open skill - /arxiv-figures
Optimize and prepare figures for arXiv submission: format conversion (EPS/PDF/PNG/JPG), size reduction, metadata stripping, processor compatibility (DVI vs PDFLaTeX). Triggers on: "optimize figures for arXiv", "reduce figure size", "convert figures for arXiv", "fix arXiv
Open skill

