TestPlanIt 1.0 Is Here
Today we're releasing TestPlanIt v1.0.0.
Ten months after opening the source, more than forty releases into the 0.x line, and eighteen beta pre-releases later, the version number has caught up with the product: 1.0 completes the feature set we imagined when we started — the platform we always intended TestPlanIt to be.
The Road to 1.0
TestPlanIt went open source in November 2025. Since then the 0.x line grew from a test case repository into a full test management platform: manual and automated execution, exploratory sessions, parameterized test cases, review and approval workflows, webhooks, an MCP server, SCIM provisioning, data lake export, and AI features that run on your own LLM.
At the end of June we opened a beta channel and spent the summer finishing the job. Eighteen pre-releases went out to self-hosters who built from source, filed issues, and told us what broke. That feedback loop is the reason 1.0 ships with confidence — thank you to everyone who ran a beta.
What 1.0 Means
The 0.x releases were always production-ready — teams have been running TestPlanIt as their system of record for months. What 1.0 marks is completeness: the feature set we originally imagined for the platform is now all here. Along with it:
- Semantic versioning. From here on, breaking changes mean a major version, and upgrades within 1.x are routine.
- Prebuilt images are back. The beta channel was source-only; with 1.0, the official Docker images pick the release up again.
docker pullgets you the full 1.0 feature set. - A supported upgrade path. Whether you're coming from the 0.44.3 main line or riding the beta channel, v1.0.0 is the same code graduating to
main.
What's New Since 0.44.3
If you stayed on the main line, 1.0 is the biggest set of improvements TestPlanIt has ever shipped at once — 702 commits since v0.44.3. Here's the complete list.
Jira integration, end to end
- Milestone sync — milestones sync straight from Jira: issue membership, webhooks, and live updates, with milestone imports filterable by Release or Sprint.
- A release cockpit — the milestone page adds burndown with a variance heat strip, a release-readiness "% ready" rollup, a per-case traceability matrix in the PDF export, and an activity log. In-scope issues roll up test cases and results from every linked project.
- AI in the Jira panel — generate test cases and QuickScript automation scripts from the TestPlanIt panel on an issue, without leaving Jira. The panel shows each case's fields per template, with Steps as a count chip that opens a step-list popover — and you can quick-generate cases right from a milestone's scope table.
- Self-refreshing OAuth — expired tokens refresh themselves during background syncs; you're only notified when re-authorization is genuinely needed.
AI generation that can see your app
- Images as context — pull screenshots from linked Jira issues or Azure DevOps work items, use rich-text documents with embedded images, or let TestPlanIt crawl a URL and capture page screenshots. The AI reads them alongside the text and writes cases that match what's actually on screen.
- Any provider — a multimodal pipeline translates images per provider, so it works with whichever LLM you've connected.
- Cost visibility — a cross-project LLM Usage report shows admins where AI spend goes, and model cost fields auto-fill from provider pricing.
- QuickScript anywhere — generate automation scripts from an API token, the MCP server, or the Jira panel.
Automated runs, analyzed
- Execution metrics — per-run metrics and duration, an execution timeline that visualizes real parallelization across workers, within-run flaky detection that understands retry semantics, and result filters to slice big runs.
- Live and hands-off — an Automation Runs card streams live progress, abandoned runs close themselves, explicitly linked cases flip to automated when results arrive, and completed runs can be duplicated straight from the runs list.
- Counted correctly — milestone completion, burndown, member coverage, traceability exports, and project-health metrics resolve automated case status through a single effective-status source, so automated work never reads as "not run".
- Agent-readable — AI agents get it all through the MCP server: automated results, run-case editing, a review-inbox tool, and repository reporting rollups.
Across the app
- A revamped repository — a dockable, drag-resizable case-details panel; a latest-result column you can sort by; reorderable, resizable columns with remembered order, width, and sort.
- Filter across every dimension — combine multiple filters in one bar with shareable URLs, search inside advanced-filter comboboxes, and save views you return to often.
- Review workflows — request approvals in bulk, work a dedicated review inbox with full case details and decision badges, and track requested reviews in a pending queue with reminders. Approving applies the workflow transition automatically, and reviews cancel themselves when their subject is deleted or moved.
- Full result history — a case's complete history, virtualized to stay fast at any size, with the current run highlighted.
- Composition lock — freeze a run's set of test cases the moment execution starts; manual or auto-lock per project.
- Even test distribution — spread a run's case assignments across the team in one step.
- Ready-to-complete notifications — the right people are notified the moment a run's last result lands, and run and session start/end dates derive from actual results.
- Issue list filters — multi-select status, priority, and issue-type filters.
- Infinite-scroll management tables — issues, users, groups, roles, projects, tags, audit logs, and webhook deliveries load on scroll.
- Document previews — Word, Excel, and PowerPoint render inline, with full-height PDF preview and keyboard navigation.
- Link previews — TestPlanIt links pasted into Slack, Teams, or iMessage unfurl into a card that says what they point to; record details stay private unless the instance opts in.
- Sharper duplicate detection — the compare view highlights the fields that differ with word-level text diffs, and shared-step candidates filter by minimum cases and steps.
- Human-readable record keys — optional project-prefixed identifiers, e.g. PROJ-123.
- Accessible Dark theme — meets WCAG AA, enforced by a CI contrast gate.
- 17 languages — including full right-to-left support for Arabic and community-contributed Czech.
- Milestone Readiness report — plots release readiness over time, with automation trends that hold up at scale.
- Findable folders — search the folder tree directly; every folder picker is searchable and virtualized for large trees.
- Your work, front and center — pending reviews sit atop Your Assignments, and profiles gain a role-scoped Assignments section plus a My Comments view with scope filters, search, and infinite scroll.
- A user directory with boundaries — collaborators see only the people who share a project with them.
- Guided first sign-in — new users land on a "Get started" prompt into the create-project wizard.
Platform & performance
- A rebuilt data and access layer — the 1.0 foundation: access control enforced at the query layer, two-phase pagination that took the heaviest lists from ~22s to ~270ms, and project access resolved once per request instead of re-asked per query.
- Opt-in read-replica routing — Postgres read/write splitting, entirely in-app.
- Official images and a Helm chart — self-host from prebuilt images with a single-tenant Helm chart; no building from source.
- Faster lists everywhere — runs, users, and audit logs window, prefetch, and stream on scroll, and Trash is redesigned as master-detail with virtualized scrolling.
- Operator knobs — configurable API rate limits, a configurable upload ceiling via
UPLOAD_MAX_MB, event-loop lag on/api/health, nginx request timing with local overrides and custom error pages, and capped container logs. - AI Tools admin section — grouped settings with real provider Test Connection errors.
Reliability & polish
- Steadier live updates — no reconnect refetch storms; connections defer until the browser is idle.
- A trustworthy audit trail — correct actor attribution (API tokens included), rich-text edits captured, readable diffs, richer filtering, and integration credentials encrypted on every write path.
- Search that never drifts — indexing moved to post-commit sync so results always match the database, deletes remove their documents, and search result cards are real links.
- Webhooks fan out — Issue events reach every linked project, and deliveries show which record each one was about.
- Edit cases mid-run — fix a test case in place from the run panel, without leaving execution.
- Embedded media, everywhere — images and videos embedded in descriptions resolve and render wherever they appear.
- A long tail of polish — a modernized header, natural case-insensitive name sorting, no more theme flash, chart metrics correct in every locale, digest emails that skip what you've already read, integration calls that honor Retry-After, and an OpenAPI spec regenerated from the schema with a parity test so it can't drift again.
Upgrading
Back up your database before upgrading. 1.0 moves schema changes to versioned migrations, and a database created by a 0.x release needs a one-time baseline step before its first v1.0 start — see the upgrade notes for the exact commands.
git pull origin main
pnpm install
pnpm generate
pnpm db:deploy
pnpm build
For Docker deployments:
docker pull ghcr.io/testplanit/testplanit:latest
If you've been on the beta channel, v1.0.0 is the graduation of that line — upgrade as usual.
What's Next
1.0 is a milestone, not a finish line. Work is already underway on requirements management — linking requirements to test cases and results for end-to-end traceability, our most-requested feature — with more to come driven by your feedback.
Thank You
To everyone who filed an issue, opened a pull request, translated a locale, ran a beta build, or told a colleague about TestPlanIt: this release is yours too.
- Star the repo on GitHub
- Follow @TestPlanItHQ for updates
- Join our Community Discord
- Report issues and suggest features on GitHub
Here's to 1.0 — and to everything your team ships with it.