Skip to content

Docs 798 stream contract readme#946

Open
Killerjunior wants to merge 3 commits into
LabsCrypt:mainfrom
Killerjunior:docs-798-stream-contract-readme
Open

Docs 798 stream contract readme#946
Killerjunior wants to merge 3 commits into
LabsCrypt:mainfrom
Killerjunior:docs-798-stream-contract-readme

Conversation

@Killerjunior

Copy link
Copy Markdown

Description
Add dedicated crate-level documentation for contracts/stream_contract so integrators have a single entry point covering the public API, lifecycle, fee/treasury model, event topics, and error codes.

Type of Change

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📚 Documentation update
  • 🔧 Refactoring (no functional changes)
  • ⚡ Performance improvement
  • 🧪 Test addition or update

Related Issues

Closes #798

Changes Made

  • Added contracts/stream_contract/README.md with:
    • contract overview and stream lifecycle (create/top_up/withdraw/cancel/pause/resume)
    • protocol fee and treasury model details
    • explicit note on fee rounding-to-zero behavior
    • full event topic reference
    • StreamError code/variant table
  • Added package description to contracts/stream_contract/Cargo.toml.
  • Wired crate docs to README via #![doc = include_str!("../README.md")] in contracts/stream_contract/src/lib.rs so generated docs and source of truth stay aligned.

Testing

Test Coverage

  • Unit tests added/updated
  • Integration tests added/updated
  • Manual testing performed

Test Steps

  1. Open contracts/stream_contract/README.md and verify API, fee model, events, and error table are present.
  2. Verify contracts/stream_contract/src/lib.rs includes #![doc = include_str!("../README.md")].
  3. Verify contracts/stream_contract/Cargo.toml includes a description field.

Breaking Changes

Breaking Changes:

  • None.

Checklist

  • My code follows the project's style guidelines
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published
  • I have checked for breaking changes and documented them if applicable

@ogazboiz

ogazboiz commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

your branch is green, but it went conflicting after the ci fixes landed on main: #969 and #974 touched backend/Dockerfile and backend/src/workers/soroban-event-worker.ts, which this pr also edits. please rebase on main and it should be good to go: git fetch origin && git rebase origin/main && git push --force-with-lease. if any of your Dockerfile or soroban-event-worker changes overlap what #969 already did (copying prisma/ into the runner, and the import type { Prisma } from '../generated/prisma' fix), drop those now-redundant bits and keep just your actual change. i'll re-review and merge once it's rebased and ci is green.

@Killerjunior

Copy link
Copy Markdown
Author

Noted. making those changes now.

@Killerjunior

Copy link
Copy Markdown
Author

I created a new pr-946-clean from upstream/main and cherry-picked only the intended PR 946 commits.

Heres the link: #978. Kindly review once more.

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.

[Docs] stream_contract crate has no README documenting public API, events, errors, and fee model

2 participants