Skip to content

feat(loadtesting): add Load Testing capability index (regression) - #389

Open
sourabhd-cbu wants to merge 4 commits into
feat/capability-registryfrom
feat/loadtesting-capability-index-reg
Open

feat(loadtesting): add Load Testing capability index (regression)#389
sourabhd-cbu wants to merge 4 commits into
feat/capability-registryfrom
feat/loadtesting-capability-index-reg

Conversation

@sourabhd-cbu

Copy link
Copy Markdown
Collaborator

What

Adds capability/loadtesting.capability-index.json — the Load Testing product, authored in the per-product capability-index format introduced by #387.

  • 19 capabilities over the load-api /api/v1/agent/* surface, 9 entities.
  • base_url baked to regression (https://load-testing-rengg-lts.bsstag.com). Companion branch feat/loadtesting-capability-index-prod carries the production host.

Format alignment with #387

  • Per-product file under capability/ (not the root combined capability-index.json).
  • Envelope { schema_version: 1, version: "1.0", build_id, loadtesting: {...} } — product at top level, no products wrapper.
  • Product key order summary, base_url, capabilities, schemas, responses, paging, entities.
  • Capabilities carry returns and a responses map referencing named responses. LTS uses one uniform response envelope ({success, data} / {success, errorCode, error}), so schemas holds SuccessEnvelope + ErrorResponse and responses maps the standard codes — plus 503 for insights and 409 for the versioned update.
  • Modes: 15 read, 4 write, 0 destructive (no delete routes).

Note on base_url (deliberate divergence from tm)

tm omits base_url because it is region-sharded (EU/IN/US) and a single origin would misroute non-US accounts. LTS is not region-sharded — it has fixed per-environment hosts — so this branch bakes the regression host and its sibling bakes production. If you'd prefer config-based resolution (CAPABILITY_REGISTRY_BASE_URL_LOADTESTING[_ENV]) like tm, I'll drop base_url and collapse to a single branch.

Caveats

  1. Hand-authored, not pipeline-generated. Add the tm capability index #387 notes the index is a build artifact from agent-platform-harness-common. This is a hand-authored equivalent following the same shape; the durable path is an LTS product source the export pipeline consumes — happy to move it there.
  2. Invoke needs a load-api auth change. The registry forwards Api-Token: <username>:<accessKey>, but load-api's /api/v1/agent/* agentAuth accepts HTTP Basic only. Discovery + host resolution work with this PR; invokeEndpoint will 401 until agentAuth accepts Api-Token (tracked on the load-testing-backend side).

Ref: LTAI-270. This is the regression variant; do not merge into the same deployment as the prod variant — they differ only in base_url.

@coderabbitai

coderabbitai Bot commented Sep 2, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited), Workspace UI (inherited)

Review profile: ASSERTIVE

Plan: Team

Run ID: adcc0c03-ecd3-498f-ad7c-5cf052cb90a5

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

Adds capability/loadtesting.capability-index.json in the per-product format
(#387): product at top level, version field, and
schemas/responses/paging tables with per-capability response refs. 19
capabilities over load-api /api/v1/agent/* and 9 entities. base_url baked to
the regression host (load-testing-rengg-lts.bsstag.com) for this branch.
@sourabhd-cbu
sourabhd-cbu force-pushed the feat/loadtesting-capability-index-reg branch from 62b493c to fea275d Compare September 2, 2026 14:27
…rsion is an ISO token

BE (LTAI-270) now 400s scriptRef.source url/inline and reports version as the
JobConfiguration updated_at ISO token, not a numeric serialId. Align the
capability index so the LLM isn't mis-instructed.
…ity index

Companion to the existing project trends endpoint — GET /projects/{projectId}/runs
lets the LLM list a whole project's run history (TB: listLoadTestRuns 'for a test
or a whole project').
… trends

BE rejects weekly/monthly aggregation and ignores groupBy on the trends
endpoints, so stop advertising them to the LLM (avoids a guaranteed 400 on
aggregation=monthly and a silent no-op on groupBy).
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