Free SKILL.md scraped from GitHub. Clone the repo or copy the file directly into your Claude Code skills directory.
npx versuz@latest install open-metadata-openmetadata-skills-verificationgit clone https://github.com/open-metadata/OpenMetadata.gitcp OpenMetadata/SKILL.MD ~/.claude/skills/open-metadata-openmetadata-skills-verification/SKILL.md---
name: verification
description: Use before claiming any task is complete. Requires running actual verification commands and showing evidence — no "should work" claims without proof.
user-invocable: true
---
# Verification Before Completion
No completion claims without fresh verification evidence.
## Core Rule
**Never say "done", "should work", "looks correct", or "this fixes it" without running the verification commands and showing the output.**
## Verification by Change Type
### Schema Changes (`openmetadata-spec/`)
```bash
# 1. Regenerate models
make generate
# 2. Verify Java compilation
mvn test-compile -pl openmetadata-spec,openmetadata-service
# 3. Verify Python models
source env/bin/activate && cd ingestion
python -c "from metadata.generated.schema.entity.services.connections.<module> import <Model>; print('OK')"
# 4. If connection schema: verify UI schema resolution
cd openmetadata-ui/src/main/resources/ui && yarn parse-schema
```
### Java Backend Changes
```bash
# 1. Format
mvn spotless:apply
# 2. Compile
mvn test-compile -pl <module>
# 3. Run relevant tests
mvn test -pl <module> -Dtest=<TestClass>
# 4. For API changes: run integration tests
mvn verify -pl openmetadata-integration-tests -Dtest=<IntegrationTestClass>
```
### Python Ingestion Changes
```bash
source env/bin/activate && cd ingestion
# 1. Format (apply) then lint check (verify)
make py_format
make py_format_check
# 2. Type check
make static-checks
# 3. Run unit tests
python -m pytest tests/unit/<relevant_test>.py -v
# 4. For connector changes: run connector-specific tests
python -m pytest tests/unit/topology/<service_type>/ -v
```
### Frontend Changes
```bash
cd openmetadata-ui/src/main/resources/ui
# 1. Lint
yarn lint
# 2. Type check
npx tsc --noEmit
# 3. Run unit tests
yarn test <path/to/changed/component>
# 4. For significant UI changes: run Playwright tests
yarn playwright:run --grep "<relevant test>"
```
## Evidence Format
When reporting completion, include:
```
## Verification Results
### Commands Run
1. `mvn spotless:apply` — completed, no formatting changes needed
2. `mvn test -pl openmetadata-service -Dtest=MyTest` — 5/5 tests passed
3. `yarn lint` — no errors
### Test Output
[paste relevant test output showing PASS]
```
## What Counts as Evidence
- Test runner output showing PASS
- Build output showing SUCCESS
- Lint/format output showing no errors
- API response showing expected data
- Screenshot or description of UI rendering correctly
## What Does NOT Count as Evidence
- "I reviewed the code and it looks correct"
- "This follows the same pattern as X, so it should work"
- "The logic is straightforward"
- "I've made similar changes before"
- No output at all — just claiming it's done