Agent skill
verification
Use before claiming any task is complete. Requires running actual verification commands and showing evidence — no "should work" claims without proof.
Install this agent skill to your Project
npx add-skill https://github.com/open-metadata/OpenMetadata/tree/main/skills/verification
SKILL.md
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/)
# 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
# 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
source env/bin/activate && cd ingestion
# 1. Format and lint
make py_format
make lint
# 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
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
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
playwright-validation
Use when validating UI changes in a branch require Playwright E2E testing. Reviews branch changes, validates UI with Playwright MCP, and adds missing test cases.
writing-playwright-tests
Use when writing new Playwright E2E tests or adding test cases. Provides testing philosophy, patterns, and best practices from the Playwright Developer Handbook.
playwright-test
Generate robust, zero-flakiness Playwright E2E tests following OpenMetadata patterns. Creates comprehensive test files with proper waits, API validation, multi-role permissions, and complete entity lifecycle management.
connector-review
Review an OpenMetadata connector against golden standards. Runs multi-agent analysis covering architecture, code quality, type safety, testing, and performance. When a PR number is given, automatically posts the quality summary to the PR description and a detailed review as a PR comment.
openmetadata-workflow
Meta-skill loaded at session start. Directs Claude to check for applicable OpenMetadata skills before starting any task. Ensures structured workflows are followed.
test-locally
Build and deploy a full local OpenMetadata stack with Docker to test your connector in the UI. Handles code generation, build optimization, health checks, and guided testing.
Didn't find tool you were looking for?