Skip to content

feat: deploy document store command#16

Merged
rongquan1 merged 5 commits intomainfrom
feat/deploy-document-store
Feb 16, 2026
Merged

feat: deploy document store command#16
rongquan1 merged 5 commits intomainfrom
feat/deploy-document-store

Conversation

@RishabhS7
Copy link
Copy Markdown
Contributor

@RishabhS7 RishabhS7 commented Feb 13, 2026

Command to deploy document store to the blockchain.

Summary by CodeRabbit

  • New Features

    • Added Document Store functionality with three new commands: deploy, issue, and revoke.
  • Documentation

    • Updated README with Document Store command reference, usage examples, prompts, and supported networks.
  • Tests

    • Added tests covering the document-store deploy flow.
  • Chores

    • Updated project dependencies for compatibility and maintenance.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Feb 13, 2026

📝 Walkthrough

Walkthrough

Adds a new Document Store CLI feature: deploy command, helpers for connecting and deploying a DocumentStore contract (with dry-run and wallet/signature handling), OA document extraction, types and wallet signer typing updates, tests, and README documentation updates.

Changes

Cohort / File(s) Summary
Dependency Updates
package.json
Bumped @trustvc/trustvc ^2.6.0 → ^2.8.0 and adjusted ethers ^6.16.0 → ^6.15.0.
Document Store CLI
src/commands/document-store/deploy.ts, src/commands/document-store/index.ts
New CLI subcommand: deploy module implements prompts, dry-run gas estimation, wallet resolution, and contract deployment; index wires document-store <method> into yargs commandDir.
Helpers & Connectors
src/commands/helpers.ts
Added connectToDocumentStore and connectToDocumentStoreFactory; extended existing connect helpers to accept Signer; added waitForTransaction helper; removed a stray debug log.
Types & Wallet API
src/types.ts, src/utils/wallet.ts
Added DocumentStoreIssueCommand type; broadened getWalletOrSigner return type to include Signer.
CLI Utilities
src/utils/cli-options.ts
Added extractOADocumentInfo(document) to derive documentStoreAddress, tokenId, and network (with validation and logging).
Tests
tests/commands/document-store/deploy.test.ts
New test suite covering promptForInputs, deployDocumentStoreContract, and handler with extensive mocks for signale, trustvc, prompts, and wallet resolution.
Documentation
README.md
Document Store feature and commands (deploy/issue/revoke) added to features, command reference, usage examples, and project structure.

Sequence Diagram

sequenceDiagram
    actor User
    participant CLI as CLI Handler
    participant Prompts as Input Prompts
    participant WalletSvc as Wallet Resolver
    participant DryRun as Dry‑Run Estimator
    participant Deployer as DocumentStore Deployer
    participant Chain as Blockchain

    User->>CLI: run `document-store deploy`
    CLI->>Prompts: promptForInputs()
    Prompts-->>CLI: DeployDocumentStoreCommand
    CLI->>WalletSvc: resolveWallet(encrypted/key/keyFile)
    WalletSvc-->>CLI: Signer/Wallet
    CLI->>DryRun: simulate deployment (signer, params)
    DryRun->>Deployer: estimateGas & fee
    Deployer-->>DryRun: gas estimate
    DryRun-->>CLI: estimated cost
    CLI->>User: confirm deployment?
    alt confirmed
        CLI->>Deployer: deployDocumentStore(params, signer, chainId)
        Deployer->>Chain: submit tx
        Chain-->>Deployer: tx hash & receipt
        Deployer-->>CLI: contractAddress
        CLI->>User: deployment success + explorer link
    else declined
        CLI->>User: deployment cancelled
    end
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Poem

🐰 I hopped to code and found a store,

Contracts sprung up from the floor,
Dry‑run checked, then signed with care,
Deployed a home for docs to share —
Hooray! 🌿


Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

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

@rongquan1 rongquan1 merged commit bee4e7a into main Feb 16, 2026
5 checks passed
@rongquan1 rongquan1 deleted the feat/deploy-document-store branch February 16, 2026 06:21
tradetrustimda pushed a commit that referenced this pull request Mar 10, 2026
# 1.0.0 (2026-03-10)

### Bug Fixes

* add tamper check for all blockchain functions ([#21](#21)) ([ea64760](ea64760))
* base64 file format removal ([514f18b](514f18b))
* ether signer compatibility ([a3c36de](a3c36de))
* handle network selection and add new fixtures ([#15](#15)) ([62b2031](62b2031))
* one line command and interactive terminal fix ([23fb955](23fb955))
* package lock ([2e40722](2e40722))
* remove test output files ([f63a4b3](f63a4b3))
* remove the base64 encoding for the file encryption ([#23](#23)) ([d4600e4](d4600e4))
* remove unnecessary details in the readme ([6a9b8a2](6a9b8a2))
* update cli process ([#8](#8)) ([472a9e6](472a9e6))
* updated the file handling error and folder creation for outputs ([a07c6a3](a07c6a3))
* wallet creation ([#14](#14)) ([6499276](6499276))

### Features

* add mint function command ([#1](#1)) ([22ea11f](22ea11f))
* add verify command ([#7](#7)) ([da85177](da85177))
* add w3c sign function ([#4](#4)) ([ea31015](ea31015))
* added encrypt/decrypt functions to the OA feature ([6dab3e7](6dab3e7))
* added functionality for transaction cancel ([33d73f2](33d73f2))
* added husky for lint checks ([70f3ea5](70f3ea5))
* added the gracefull error handling ([27ef0cf](27ef0cf))
* credential status command ([fb83698](fb83698))
* deploy document store command ([#16](#16)) ([bee4e7a](bee4e7a))
* document store ownership ([#20](#20)) ([a3906da](a3906da))
* fixed the prettier formats ([661c27e](661c27e))
* issue and revoke command ([#17](#17)) ([1df37ff](1df37ff))
* oa sign command ([6fc14cb](6fc14cb))
* reject commands ([#5](#5)) ([f50ce1b](f50ce1b))
* remove example files ([eecf1fb](eecf1fb))
* return commands ([#6](#6)) ([d999e6c](d999e6c))
* token registry command ([#19](#19)) ([0f5c523](0f5c523))
* transfer commands ([#3](#3)) ([8414130](8414130))
* update command process and tests ([#12](#12)) ([97986f5](97986f5))
* update the transfer commands with new input process ([#10](#10)) ([603e534](603e534))
* updated package version for trustvc ([995b43f](995b43f))
* updated packages ([7f9712c](7f9712c))
* updated the readme ([8fa493a](8fa493a))
* wallet creation encryption ([#13](#13)) ([e4d368c](e4d368c))
* wrap unwrap oa command ([#9](#9)) ([4ca75f0](4ca75f0))
@tradetrustimda
Copy link
Copy Markdown

🎉 This PR is included in version 1.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants