Skip to content

feat(profiles): Soroban analysis profile marketplace (#484)#559

Merged
mijinummi merged 1 commit into
MDTechLabs:mainfrom
ThatCodeBabe:feat/soroban-analysis-profile-marketplace
Jun 27, 2026
Merged

feat(profiles): Soroban analysis profile marketplace (#484)#559
mijinummi merged 1 commit into
MDTechLabs:mainfrom
ThatCodeBabe:feat/soroban-analysis-profile-marketplace

Conversation

@ThatCodeBabe

Copy link
Copy Markdown
Contributor

Teams repeatedly recreate similar Soroban scan configurations. This adds a marketplace for sharing and importing analysis profiles, built on the existing ConfigurationProfile model so profiles stay compatible with the config system.

src/profiles/marketplace/stellar/:

  • types.ts: AnalysisProfile (shareable profile) + SharedProfileEnvelope (versioned, self-describing artifact with provenance + integrity checksum)
  • profile-exporter.ts: export a profile into an envelope with an order-stable SHA-256 checksum; serialize to JSON for sharing
  • profile-importer.ts: parse + validate a shared artifact before trusting it — kind discriminator, schema-major compatibility, checksum/tamper detection, and structural validation; returns structured errors/warnings (never throws)
  • marketplace.ts: StellarProfileMarketplace registry — publish/import, list, get, search (text/tags/category), export, dedup on id
  • index.ts: public barrel
  • tests/marketplace.spec.ts: 19 tests covering export/import round-trip, tamper + schema-incompat + malformed rejection, dedup, and search

Verified: jest 19/19 passing; tsc reports no errors in the new module.

closes #484

Teams repeatedly recreate similar Soroban scan configurations. This adds a
marketplace for sharing and importing analysis profiles, built on the existing
ConfigurationProfile model so profiles stay compatible with the config system.

src/profiles/marketplace/stellar/:
- types.ts: AnalysisProfile (shareable profile) + SharedProfileEnvelope
  (versioned, self-describing artifact with provenance + integrity checksum)
- profile-exporter.ts: export a profile into an envelope with an order-stable
  SHA-256 checksum; serialize to JSON for sharing
- profile-importer.ts: parse + validate a shared artifact before trusting it —
  kind discriminator, schema-major compatibility, checksum/tamper detection,
  and structural validation; returns structured errors/warnings (never throws)
- marketplace.ts: StellarProfileMarketplace registry — publish/import, list,
  get, search (text/tags/category), export, dedup on id
- index.ts: public barrel
- __tests__/marketplace.spec.ts: 19 tests covering export/import round-trip,
  tamper + schema-incompat + malformed rejection, dedup, and search

Verified: jest 19/19 passing; tsc reports no errors in the new module.
@drips-wave

drips-wave Bot commented Jun 27, 2026

Copy link
Copy Markdown

@ThatCodeBabe Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@mijinummi mijinummi merged commit 0bbacbd into MDTechLabs:main Jun 27, 2026
7 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.

Implement Soroban Analysis Profile Marketplace

2 participants