Skip to content

Conversation

@thekidnamedkd
Copy link
Contributor

@thekidnamedkd thekidnamedkd commented Jan 7, 2026

Description

Implement IPFS pinning on download in proposal action composition.

The goal here is to create an accurate and usable JSON file on download, whereas previously we didn't get a IPFS CID until after the proposal was published.

Type of Change

  • Minor: Feature (non-breaking change which adds new functionality)

Developer Checklist:

  • Manually smoke tested the functionality in a preview or locally
  • Confirmed there are no new warnings or errors in the browser console
  • (For User Stories only) Double-checked that all Acceptance Criteria are satisfied
  • Confirmed there are no new warnings on automated tests
  • Merged and published any dependent changes in downstream modules
  • Selected the correct base branch
  • Commented the code in hard-to-understand areas
  • Followed the code style guidelines of this project
  • Reviewed that the Files Changed in Github’s UI reflect my intended changes
  • Confirmed the pipeline checks are not failing

Review Checklist:

  • (For User Stories only) Tested in a preview or locally that all Acceptance Criteria are satisfied
  • Confirmed that changes follow the code style guidelines of this project

@linear
Copy link

linear bot commented Jan 7, 2026

@github-actions
Copy link

github-actions bot commented Jan 7, 2026

🚀 Preview Deployment: View Here

Copy link
Contributor

@milosh86 milosh86 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey great work ... I left a couple of larger comments, because there is an overlap with decoding of uploaded actions and I'm looking how best to align those 2 PRs.

@milosh86 milosh86 marked this pull request as ready for review January 12, 2026 10:46
Copilot AI review requested due to automatic review settings January 12, 2026 10:46
milosh86
milosh86 previously approved these changes Jan 12, 2026
Copy link
Contributor

@milosh86 milosh86 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks much simpler now 👍 Left a couple of minor comments, but you can skip 'em if not relevant.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements IPFS metadata pinning during the download of proposal actions. When users download actions as JSON, metadata actions (DAO and plugin updates) are now pinned to IPFS and their encoded transaction data is included in the export.

Changes:

  • Added IPFS pinning logic to the download actions flow for metadata update actions
  • Extracted setMetadata ABI definition to a shared constant file
  • Added UI support for loading and error states during the download/pinning process

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
wizardPageStep.tsx Added disableNext prop for future use in disabling next button
proposalActionsImportExportUtils.ts Simplified JSDoc comments to be more concise
createProposalPageClientSteps.tsx Removed outdated comment
setMetadataAbi.ts New constant file for setMetadata ABI definition, extracted from action components
updatePluginMetadataAction.tsx Refactored to use shared setMetadataAbi constant
updatePluginMetadataAction.api.ts Extended type definition to optionally include encoded data field
updateDaoMetadataAction.tsx Refactored to use shared setMetadataAbi constant and updated type
createProposalFormActions.tsx Implemented IPFS pinning and encoding logic in download handler with error handling
actionComposer.tsx Added UI support for pinning states (loading, error, retry) in download dropdown
en.json Added translation keys for download pinning UI states
.changeset/nine-bees-poke.md Documented the feature as a minor version change

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@thekidnamedkd thekidnamedkd changed the title feat(APP-385): Implement background IPFS pinning on proposal action composition feat(APP-385): Implement IPFS pinning on download in proposal action composition Jan 13, 2026
Copy link
Contributor

@milosh86 milosh86 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@thekidnamedkd thekidnamedkd merged commit fc28a5c into main Jan 13, 2026
11 checks passed
@thekidnamedkd thekidnamedkd deleted the app-385-pinning-exploration branch January 13, 2026 17:51
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