Introduction
Project Name:
Small Grant: Sia Integration Preflight (MVP) — repo-local QA for SDK/indexd integrations
Name of the organization or individual submitting the proposal:
Dapps over Apps
Current MVP repo: https://github.com/steven3002/HostaProbe
Demo video: https://drive.google.com/file/d/1m_yuqn2nQr9aNVjqMSPT4WSAppZ7011z/view?usp=sharing
Describe your project.
Sia Integration Preflight is a repo-local CLI with a companion GitHub Action for teams building on Sia with SDKs or indexd. It provides a repeatable pre-release check for the storage flow from the same environment that will actually run the integration.
Compared with the earlier HostProbe submission, this version changes both the project scope and the MVP. The earlier version centered on shortlist host probing as the main workflow. This version centers SDK/indexd integration QA: connect to a chosen indexer, authenticate with a stored App Key, upload a small fixture object, pin it, download it, verify byte equality, and save both JSON and HTML reports. The updated MVP also includes clearer step-level result reporting and a lightweight local diagnostics pass used only after a failed storage step. The earlier host probing work remains only as that supporting diagnostics layer.
Our revised scope is aligned with the Foundation’s current direction: building with SDKs, building on indexd, and QA tooling for integrations. It is not a hosted service, not a dashboard, not a public API, and not a discovery, ranking, or benchmarking product.
How does the projected outcome serve the Foundation’s mission of user-owned data? What problem does your project solve?
This project supports user-owned data by making it easier to ship and maintain applications that store real user data on Sia. The problem it solves is the gap between example-level integration and release confidence. Documentation and example snippets are useful starting points, but teams still need a reusable check they can keep in their own repository and run before release, during migrations, or after SDK or indexd changes.
Sia Integration Preflight answers one practical question: can this integration still complete the storage flow from this environment, and if not, at which step did it fail? By turning that into a small deterministic tool with stable artifacts, the project reduces integration breakage, shortens debugging time, and lowers friction for teams building on Sia.
This project is intentionally narrow. It does not try to replace the SDK, the docs, or a hosted product layer. It turns the documented storage path into a repeatable local and CI check.
Are you a resident of any jurisdiction on that list? Yes/No
No
Will your payment bank account be located in any jurisdiction on that list? Yes/No
No
Grant Specifics
Amount of money requested and justification with a reasonable breakdown of expenses:
$10,000 USD total
Rate: $125/hour
Total: 80 hours
Breakdown:
-
CLI cleanup, config handling, and versioned report schema: 10h = $1,250
-
SDK/indexd preflight implementation and hardening for connect, upload, pin, download, and byte verification: 24h = $3,000
-
Failure classification, reason codes, and supporting diagnostics path: 14h = $1,750
-
JSON/HTML outputs, sample artifacts, and fixtures: 10h = $1,250
-
GitHub Action, CI example workflow, and artifact upload path: 12h = $1,500
-
Tests, docs, packaging, tagged release, and review fixes: 10h = $1,250
Total: 80h = $10,000
This budget is for hardening and formalizing an updated MVP. It does not include hosted infrastructure, public APIs, continuous monitoring, portal work, or a broader platform build.
What is the high-level architecture overview for the grant? What security best practices are you following?
High-level architecture
Inputs
-
indexer URL
-
stored App Key supplied through local config or CI secrets
-
small fixture file
-
optional config for timeouts and output paths
Pipeline
-
validate config
-
connect to the chosen indexer with the stored App Key
-
run the preflight flow
-
upload fixture
-
pin object
-
download object
-
verify byte equality
-
optionally run a lightweight diagnostics pass after a failed storage step
-
emit saved reports
-
exit with a clear pass/fail status
Outputs
-
report.json -
report.html -
CI artifacts from the GitHub Action run
Security and operational practices
-
no recovery phrase stored by the tool
-
no secrets committed to the repository
-
App Keys supplied through secure local config or CI secrets
-
reports exclude secrets and include only the data needed to explain pass/fail state
-
explicit timeouts and bounded retry behavior
-
no hosted persistence of user data
-
open-source code and reviewable build steps
CI mode assumes a previously approved app and a stored App Key.
What are the goals of this small grant? Please provide a general timeline for completion.
Goal:
Turn the updated public MVP into a clean, documented, and more reusable preflight tool that lets a builder verify whether a Sia SDK/indexd integration still works from the environment that will actually run it.
Timeline: 2 months
Month 1 — core hardening and report contract
-
finalize CLI input format
-
finalize versioned report schema
-
clean up the current preflight flow
-
add fixture handling and sample outputs
-
finalize step-level failure classification
Acceptance criteria
-
a reviewer can run the CLI locally with sample config
-
the tool writes a valid
report.jsonon both success and controlled failure -
the schema and reason-code list are committed and documented
-
sample success and failure outputs are available for review
Month 2 — CI support, packaging, and public release
-
finalize the supporting diagnostics pass
-
add GitHub Action wrapper and example workflow
-
finalize artifact generation for CI runs
-
finalize README and review instructions
-
publish a tagged MVP release
-
refresh demo materials
Acceptance criteria
-
with valid config, the tool completes the preflight and exits successfully
-
with an invalid App Key or forced failure, the tool exits non-zero and identifies the failed stage clearly
-
a GitHub Actions run produces saved report artifacts
-
README covers both local and CI usage
-
a tagged public release is available for review
Who is the target user for your project?
The target user is a technical builder already working with Sia, especially:
-
developers building a new application with SDKs or indexd
-
teams maintaining or refreshing an older integration
-
CI or DevOps owners who want a pre-release storage regression check
-
developers who want a small reusable harness instead of one-off debug scripts
What are your plans for this project following the grant?
Following the grant, the project will remain a small public QA tool rather than a one-off grant artifact. The immediate post-grant focus will be maintaining compatibility with current SDK/indexd flows, keeping the report schema versioned, and accepting issues and feedback through GitHub and the Sia Forum thread.
The project will be maintained for at least 3-6 months after delivery for small fixes, compatibility updates, and documentation improvements. If the workflow shows real use, the next stage would be deeper fixture coverage and a broader compatibility matrix while keeping the project repo-local and CI-focused rather than turning it into a hosted service.
Potential risks that will affect the outcome of the project:
-
External indexer availability can create noisy failures
Mitigation: clearly separate upstream availability failures from auth, upload, download, and verification failures. -
SDK or indexd changes during development can affect behavior
Mitigation: keep the flow narrow, use a versioned output schema, and add fixture-backed tests around each preflight stage. -
CI and local environments can fail differently
Mitigation: keep both local and CI runs first-class in the MVP, use explicit reason codes, and save artifacts for review.
Development Information
Will all of your project’s code be open-source?
Yes.
Leave a link where code will be accessible for review.
https://github.com/steven3002/HostaProbe
Links
-
Current MVP repo: https://github.com/steven3002/HostaProbe
-
Demo video:
https://drive.google.com/file/d/1m_yuqn2nQr9aNVjqMSPT4WSAppZ7011z/view?usp=sharing
Do you agree to submit monthly progress reports?
Yes.
Contact info
Email:
[email protected]
Any other preferred contact methods:
X/Twitter: @dappsoverapps