Skip to content
Back to skills

References

BSecurity

Run critical Unity compilation, EditMode, PlayMode, console, and task-evidence checks for tracked tasks, a feature, sprint, or release candidate.

  • 10 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 24, 2026
ai-agentsbashgit

Works with

  • cli
  • mcp

Security analysis

B88/100
  • criticalImpersonates system messages to override safety constraints

Pro scans all 2 files and shows the line behind each finding

Scanned September 24, 2026

npx -y skills add furkantokkan/agent-foundry --skill references --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of References?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for References
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/furkantokkan-references-9ce8104b/badge)](https://www.skillsdirectory.com/skills/furkantokkan-references-9ce8104b)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: smoke-check
description: "Run critical Unity compilation, EditMode, PlayMode, console, and task-evidence checks for tracked tasks, a feature, sprint, or release candidate."
argument-hint: "[feature | sprint | release] [--record]"
user-invocable: true
allowed-tools: Read Glob Grep Bash Write
model: sonnet
---

# Unity Smoke Check

This is a verification workflow. It does not fix production code or mutate
Unity serialized assets.

## Phase 1 — Resolve Scope and Baseline

Read canonical `production/tasks/<TASK-ID>/contract.md` files for the requested
task/feature/sprint, their acceptance criteria, preserved behavior, defect
ledgers, and evidence paths, plus Unity architecture, automation, and ownership
rules. Legacy story files are references only when no canonical contract exists.
Record the current commit and `git status`. If unrelated dirty state prevents a
reliable diff, return `BLOCKED` with the exact conflict.

Expected test locations are `Assets/Tests/EditMode/**`,
`Assets/Tests/PlayMode/**`, or documented feature-local Unity test assemblies.

## Phase 2 — Connect to the Correct Unity Project

Use the installed Unity CLI first and prove the exact target with
`unity status --json` plus `--project-path`. If it is missing, install the CLI
under the standing authorization. Use built-in `unity mcp` when needed. If no
CLI-controlled runner can produce evidence, return `BLOCKED`; do not infer success.

## Phase 3 — Run Critical Checks

1. Import/compile the project and capture the editor log.
2. Run the scope's required EditMode tests and retain NUnit XML.
3. Run required PlayMode tests and retain NUnit XML.
4. Query the Unity Console after the run; report new errors/exceptions.
5. For each Logic/Integration task, map every acceptance criterion to an
   executed test or a clearly identified manual evidence item.
6. Check expected asmdef dependencies and flag runtime-to-test/editor references.
7. Confirm no unexpected scene, prefab, ScriptableObject, Input Actions,
   Addressables, package, or project-setting diff was introduced during checking.

## Phase 4 — Coverage Report

```text
| Task / criterion | Evidence | Result |
|---|---|---|
| [task / AC] | Assets/Tests/EditMode/[System]/[Name]Tests.cs + XML | PASS |
| [task / AC] | Assets/Tests/PlayMode/[System]/[Name]Tests.cs + XML | PASS |
| [task / AC] | production/qa/evidence/[slug].md | MANUAL |
```

Missing executable evidence for a blocking Logic/Integration criterion is a
failure, not a warning.

## Phase 5 — Verdict and Optional Record

- `PASS`: compilation, required tests, console, and coverage gates pass.
- `PASS WITH CONCERNS`: executable gates pass; only advisory/manual evidence remains.
- `FAIL`: compiler error, test failure, blocking evidence gap, assembly violation,
  or unexpected serialized/project change.
- `BLOCKED`: no valid runner, wrong project connection, or invalid baseline.

Without `--record`, return the report only. With `--record`, writing one report
under `production/qa/` is the approved low-risk output. Do not modify product
files or test results to make the check pass.

Preserve every reproducible failure with its exact task/criterion, build,
revision, runner, log/XML path, expected result, and actual result. This
verification workflow does not invoke repair:

- One exact active or closed task owns the failure: record
  `/task-bug <TASK-ID> "<raw failure evidence>"` and do not create a standalone
  QA bug.
- No task owns it and the operator wants backlog capture: record `/bug-report`.
- No task owns it and the operator wants bounded repair: record `/create-task`.
- Ownership is ambiguous: report `TASK MATCH AMBIGUOUS`, list candidates, and
  allocate nothing.

When all blocking evidence passes, use `/task-done <TASK-ID>` only for a task
that is already `READY_TO_CLOSE`; smoke success alone never closes it.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…