Skip to content

Feature/typescript didclient vc methods#462

Open
Luffy2208 wants to merge 2 commits intoAgent-Field:mainfrom
Luffy2208:feature/typescript-didclient-vc-methods
Open

Feature/typescript didclient vc methods#462
Luffy2208 wants to merge 2 commits intoAgent-Field:mainfrom
Luffy2208:feature/typescript-didclient-vc-methods

Conversation

@Luffy2208
Copy link
Copy Markdown
Contributor

Summary

Adds verifyCredential, getWorkflowVcChain, and createWorkflowVc to the TypeScript DidClient, aligned with the Python VCGenerator API and behavior.

Also adds unit tests for the new DID client methods and extends integration (E2E) tests to cover the full VC flow through the SDK (generation, aggregation, retrieval, and verification).

Testing

  • ./scripts/test-all.sh
  • Additional verification:

cd sdk/typescript && npm test -- tests/did_client_methods.test.ts tests/integration.e2e.test.ts
cd sdk/typescript && npm run lint

Unit tests (did_client_methods.test.ts):

  • verifies credentials with the raw verifier payload
  • verifies credential without detached signature
  • gets the raw workflow VC chain response
  • creates a workflow VC from workflow metadata and execution VC ids

Integration tests (integration.e2e.test.ts):

  • registers DID identities and issues workflow VCs through ctx.did during live executions

Checklist

  • I updated documentation where applicable.
  • I added or updated tests (or none were needed).
  • I updated CHANGELOG.md (or this change does not warrant a changelog entry).

Screenshots (if UI-related)

N/A

Related issues

Fixes #92

@Luffy2208 Luffy2208 requested review from a team and AbirAbbas as code owners April 17, 2026 19:52
@github-actions
Copy link
Copy Markdown
Contributor

Performance

SDK Memory Δ Latency Δ Tests Status
TS 236 B -33% 3.75 µs +88%

✓ No regressions detected

@github-actions
Copy link
Copy Markdown
Contributor

📊 Coverage gate

Thresholds from .coverage-gate.toml: per-surface ≥ 86%, aggregate ≥ 88%, max per-surface regression ≤ 1.0 pp, max aggregate regression ≤ 0.50 pp.

Surface Current Baseline Δ
control-plane 87.20% 87.30% ↓ -0.10 pp 🟡
sdk-go 90.70% 90.70% → +0.00 pp 🟢
sdk-python 93.63% 93.63% ↑ +0.00 pp 🟢
sdk-typescript 92.62% 92.56% ↑ +0.06 pp 🟢
web-ui 90.02% 90.01% ↑ +0.01 pp 🟢
aggregate 88.98% 89.01% ↓ -0.03 pp 🟡

✅ Gate passed

No surface regressed past the allowed threshold and the aggregate stayed above the floor.

@github-actions
Copy link
Copy Markdown
Contributor

📐 Patch coverage gate

Threshold: 80% on lines this PR touches vs origin/main (from .coverage-gate.toml:thresholds.min_patch).

Surface Touched lines Patch coverage Status
control-plane 0 ➖ no changes
sdk-go 0 ➖ no changes
sdk-python 0 ➖ no changes
sdk-typescript 47 100.00%
web-ui 0 ➖ no changes

✅ Patch gate passed

Every surface whose lines were touched by this PR has patch coverage at or above the threshold.

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.

[TypeScript SDK] Add verifyCredential() and getWorkflowVcChain() to DID client

1 participant