django-pytest-performance-suite
- Repo stars 0
- Author updated Live
- Author repo skills-registry
- Domain
- Engineering
- Compatible agents
-
- Claude Code
- Cursor
- Cline
- Codex
- Windsurf
- Gemini CLI
- +20
- Trust score
- 88 / 100 · community maintained
- Author / version / license
- @tomevault-io · no license declared
- Token usage
- Lean
- Setup complexity
- Guided setup
- External API key
- Not required
- Operating systems
- Unspecified (assume cross-platform)
- Runtime requirements
- No special requirements
- Permissions
-
- Read-only
- Write / modify
- Shell exec
- Network behavior
- External requests
- Install commands
- 26 variants
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。
---
name: django-pytest-performance-suite
description: >- Use when this capability is needed. Build trustworthy Django performance regression coverage…
category: engineering
runtime: no special runtime
---
# django-pytest-performance-suite output preview
## PART A: Task fit
- Use case: >- Use when this capability is needed. Build trustworthy Django performance regression coverage for server-side surfaces. Prefer this skill when the goal is not a one-off benchmark, but a repeatable lane that can detect correctness drift, query regressions, and timing regressions over time. makes outbound network calls. Works with Claude Code, Cursor, Cli….
- Inputs: target material, constraints, expected output, and acceptance criteria.
- Evidence boundary: follow “Overview / Workflow / Design Rules” and do not present inference as author intent.
## PART B: Execution result
- **01** The card summarizes the use case; runtime output centers on “>- Use when this capability is needed. Build trustworthy Django performance regression coverage for server-side surfaces. Prefer this skill when the goal is not a one-off benchmark, but a repeatable lane that can detect correctness drift, query regressions, and timing regressions over time. makes outbound network calls. Works with Claude Code, Cursor, Cli…”.
- **02** When the source has headings, the agent prioritizes “Overview / Workflow / Design Rules” so the result follows the author’s structure.
- **03** Typical output includes task judgment, concrete steps, required commands or file edits, validation, and follow-up options.
- **04** Risk context follows the fingerprint: read files, write/modify files, run shell commands; may access external network resources; usually needs no extra API key.
## Running Rules
- read files, write/modify files, run shell commands; may access external network resources; usually needs no extra API key.
- Validate with a small sample before expanding scope.
- Return the result, validation criteria, and next iteration options. The source does not require a stable slash command. After installation, invoke the skill by name and describe the task.
Name target files or source material, expected output, forbidden changes, and whether network or shell access is allowed. Permission fingerprint: read files, write/modify files, run shell commands.
Start with a small task and check whether the result follows “Overview / Workflow / Design Rules”. Inspect diffs, logs, previews, or tests before expanding scope.
Confirm the final output includes a concrete result, evidence, and next action. If it stays generic, tighten inputs, boundaries, and acceptance criteria.
---
name: django-pytest-performance-suite
description: >- Use when this capability is needed. Build trustworthy Django performance regression coverage…
category: engineering
source: tomevault-io/skills-registry
---
# django-pytest-performance-suite
## When to use
- >- Use when this capability is needed. Build trustworthy Django performance regression coverage for server-side surfac…
- Use it when the task has clear inputs, repeatable steps, and validation criteria.
## What to provide
- Target material, scope, expected result, and forbidden changes.
- Whether network, commands, file writes, or external services are allowed.
## Execution rules
- Organize steps around “Overview / Workflow / Design Rules” and keep inference separate from source facts.
- read files, write/modify files, run shell commands; may access external network resources; usually needs no extra API key.
- Validate with a small sample before expanding the task.
## Output requirements
- Return the deliverable, key evidence, validation method, and next action.
- Mark missing information as unknown; do not invent commands, platforms, or dependencies. The author source anchors workflow facts; repository files anchor sources and commands; Fluxly only adds fit, limitations, and quality judgment.
skill "django-pytest-performance-suite" {
input -> user goal + target files + boundaries + acceptance criteria
context -> Overview / Workflow / Design Rules
rules -> SKILL.md triggers / order / output contract
runtime -> no special runtime | read files, write/modify files, run shell commands | may access external network resources
guardrails -> usually needs no extra API key + small-sample validation + diff/log review
output -> copyable result + checklist + next iteration
} Django Pytest Performance Suite
Overview
Build trustworthy Django performance regression coverage for server-side surfaces. Prefer this skill when the goal is not a one-off benchmark, but a repeatable lane that can detect correctness drift, query regressions, and timing regressions over time.
Workflow
- Identify the performance surface.
- Separate pure builders/read models from thin request/view wrappers.
- Prefer benchmarking uncached server-side work first.
- For Django UI work, cover read-only GET surfaces before thinking about browser rendering.
- Create a separate performance lane.
- Keep it out of the default unit-test path.
- Use a dedicated settings module.
- Require PostgreSQL instead of SQLite.
- Use explicit commands such as
perf-test,perf-test-strict,perf-refresh-snapshots, andperf-accept-baseline.
- Make the run deterministic.
- Seed fixed timestamps, UUIDs, slugs, and RNG.
- Block background dispatch and outbound integration behavior.
- Keep Celery eager if task code may be touched indirectly.
- Use reusable databases when setup cost is large.
- Validate correctness before timing.
- Run an untimed pass first.
- Normalize the result into stable JSON.
- Compare it to a checked-in known-good artifact.
- Count queries and assert a cap.
- Only then run the benchmark timing pass.
- Record and enforce budgets.
- Keep checked-in timing budgets per surface and scenario.
- Keep checked-in query caps per surface and scenario.
- Generate machine-readable and human-readable reports for each run.
- Protect coverage from drifting.
- Keep a registry of read-only GET surfaces.
- Add a structural test that fails when a new GET surface is unregistered.
Design Rules
- Measure against PostgreSQL. SQLite timings are not useful for Django performance guardrails.
- Treat timing and correctness as separate concerns. A fast wrong result is still a regression.
- Pair query caps with timing budgets. Query counts are often the clearest early-warning signal.
- Benchmark both layers when possible:
- builder/read-model cost for diagnosis
- request/view wrapper cost for user-facing surfaces
- Prefer RequestFactory for request-surface measurements unless middleware behavior is the thing being tested.
- Keep large datasets realistic enough to trigger ORM and template-shaping costs that small fixtures hide.
- Store large-case correctness as summaries plus a payload hash instead of enormous snapshots.
- Keep baseline changes explicit. Refresh snapshots only for intentional output changes. Accept timing baselines only for intentional steady-state changes.
Implementation Pattern
When building the suite, create these pieces:
- A dedicated Django settings module for performance runs.
- A
tests/performance/package. - Deterministic scenario seeders.
- Result normalizers that remove unstable fields.
- Snapshot assertions for correctness.
- Query-count capture helpers.
- A checked-in budget table.
- A report writer for latest results.
- A manual CI workflow that runs the strict lane and uploads artifacts.
For a detailed implementation checklist and the non-obvious stability techniques, read references/patterns.md.
For a compact example of the expected plan/report shape, read examples/performance-suite-plan.md.
What To Avoid
- Do not mix performance tests into the default
pdm run testorpytestpath when they require heavy setup. - Do not benchmark only tiny fixtures and assume the result generalizes.
- Do not rely on timing alone when large ORM regressions can be caught deterministically with query caps.
- Do not keep snapshots of raw HTML or full contexts if they include unstable values that will churn constantly.
- Do not silently update budgets after every run. That destroys the regression signal.
- Do not let new GET surfaces appear without performance-suite registration.
Output Expectations
When the user asks for this kind of work, produce:
- the separate pytest lane
- deterministic scenarios sized to the product surface
- snapshot and query-count guards
- timing budgets and artifact reports
- run commands for local and CI usage
- documentation for refresh and baseline-accept workflows
If the repository already has ad hoc benchmarks, prefer folding them into the same lane rather than leaving multiple incompatible performance workflows in place.
Source: btfranklin/skills — distributed by TomeVault.
Decide Fit First
Design Intent
How To Use It
Boundaries And Review