Testing and contributing
Run the repository’s validation suites and make additive changes without weakening safety controls.
Backend and engine tests#
From the repository root:
python3 -m compileall -q dashboard execution scripts
python3 -m pytest execution dashboard/api -q
Run a focused test file while developing, then run the full suite before opening a pull request.
Dashboard checks#
cd dashboard/web
npm ci
npm run lint
npx tsc --noEmit
npm run build
The repository also defines Cypress end-to-end tests:
npm run cypress:run
End-to-end tests may require Clerk or the test-only auth bypass plus a reachable API. Report skipped tests separately from passed tests.
Production readiness#
python scripts/check_production_readiness.py --strict
Run this with placeholder-free deployment variables in a secure environment. Do not print secret values in CI logs.
Contribution rules#
The repository governance favors additive changes and treats board writes, Jira synchronization, backlog creation, state mapping, environment loading, and automation workflows as protected areas.
Before changing protected behavior:
- Reproduce the verified bug or define the approved feature.
- Preserve existing scripts, environment contracts, and UI behavior when possible.
- Add or update tests for the safety boundary.
- Keep dry-run as the default.
- Document new variables and operator steps.
- Record findings, risks, no-change boundaries, and confidence in
agent-reports/.
Update documentation#
Articles live in dashboard/web/content/docs/. Add a Markdown file with this frontmatter:
---
title: Article title
description: One sentence used in search and metadata.
section: User guides
order: 60
updated: August 7, 2026
---
Use a supported section name, start article sections at ##, use exact UI labels, and run the dashboard build. Navigation, search indexing, article metadata, breadcrumbs, and previous/next links are generated from the content.