Skip to content

feat: add shared records and isolated load execution - #118

Merged
JE-Chen merged 18 commits into
devfrom
feat/testing-platform
Oct 3, 2026
Merged

JE-Chen merged 18 commits into
devfrom
feat/testing-platform

Conversation

@JE-Chen

@JE-Chen JE-Chen commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

LoadDensity now supports local native HTTP runs through Python, action files, CLI and desktop engine selection. Package/command imports defer Locust, each HTTP user keeps isolated parameters and sessions, and the desktop runs engines in fresh interpreters with explicit Start/Stop and retained results. Locust masters can opt into provenance-preserving canonical record aggregation alongside native worker health and capacity recovery.

  • Adds compatible ActionCore request-record adapters and transactional run-scoped SQLite persistence. Native HTTP provides assertions/extractors, scenarios, retries, pacing, shapes, independent summaries and cancellation cleanup. Per-worker stop intent survives transport cancellation scopes during deadline cleanup and load-shape downsizing; stopped users do not begin later steps or retries. Unsupported capabilities fail preflight; static transport validation also applies beside dynamic settings.
  • Redesigns the translated Qt desktop with settings, state, request results, charts and history. QProcess supervises isolated workers; cooperative cancellation escalates after three seconds. Bounded UTF-8 frames retain cumulative totals and complete percentile windows independently of the request-table tail. Cleanup failure still emits terminal state; action package commands use the session registry and preserve its gate.
  • Adds bounded native worker batches, ACK retry, strict whole-batch ingestion, global record-ID deduplication and terminal drain. Worker identities survive aggregation/reconnects; retired epochs cannot replace current producers. Default startup fails on insufficient healthy workers, and native heartbeat loss rebalances virtual-user capacity.
  • Shares request-start windows, p 50-p 95/p 95-p 99 bands, gaps and separate latency/RPS charts across Qt, PNG and the responsive SSE dashboard. Cloud launchers validate provider outcomes and preserve partial accepted results.
  • Adds installed-wheel subprocess smoke and a metadata-derived Docker extras matrix, real rendering/SDK/protocol probes and Redis/MQTT/SQLite service checks. CLI/SLA failures return nonzero after reports using the published ActionCore reporter API, including version 0.0.2.

Validation: coordinated full suite 1605 passed, 14 optional skips, with four existing warnings; changed Python Ruff E/F/W/C90/I and whitespace checks pass. Seven rebuilt installed-wheel CLI/report/SLA/dashboard/MCP/native/XML smoke tests pass against published ActionCore 0.0.2. XML entity expansion failed its regression first and is now rejected using the existing required defusedxml dependency. The final annotation-only follow-up passes 32 native import/parameter tests and independent review. Codacy and SonarCloud both pass on head 7d7b090; their APIs report completed analysis with zero new Codacy issues and zero unresolved Sonar issues. Reviewed false positives have exact-rule, site-specific annotations with trust-boundary explanations and recorded issue IDs; no tools, patterns, or files were globally disabled. Prior runtime verification includes the installed-wheel desktop completion/cancellation/active-close probe with Locust prepatched. Sphinx dummy parsing succeeds with configuration/autosummary warnings. Final-head Actions run 37100889307 passed the complete matrix; PR checks show 62 passed and one intentionally skipped.

Canonical APIs remain opt-in pending the coordinated ActionCore release (ActionCore PR 1, APITestka PR 146). Native I/O after selecting Locust requires a fresh interpreter, provided by bench and the desktop supervisor. Full native exporter/non-HTTP/master-worker parity, embedded scheduler switching, dashboard run-state views and the unified functional/load/synthetic script remain in progress.md. Record delivery uses bounded in-memory queues; it does not provide finite-work leases, HTTP replay, durable recovery or session migration.

@codacy-production

codacy-production Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 1833 complexity · 33 duplication

Metric Results
Complexity 1833
Duplication 33

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@JE-Chen JE-Chen changed the title feat: unify load records and strengthen testing platform feat: add shared records worker health and percentile dashboard Oct 2, 2026
@JE-Chen JE-Chen changed the title feat: add shared records worker health and percentile dashboard feat: add shared records and isolated load execution Oct 3, 2026
@sonarqubecloud

sonarqubecloud Bot commented Oct 3, 2026

Copy link
Copy Markdown

@JE-Chen
JE-Chen marked this pull request as ready for review October 3, 2026 05:52
@JE-Chen
JE-Chen merged commit 546d068 into dev Oct 3, 2026
63 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant