paritytech / paritytech/dotns

[Feat]: A live deployment should record its addresses in this repository automatically

Open
#245 0 comments 0 reactions 1 assignee View on GitHub

@re-gius is already working on this.

Since Aug 21, 2026.

P2 type: feature
Dominant language
Solidity
Stars
4
Forks
2
Avg merge
1d 18h
Merged PRs (30d)
24

Description

Component

Other

Priority

P2

Summary

No live deployment updates deployments/<network>/<chain-id>.json. dotns-releases runs the pipeline against a checkout of this repository, but commits only its markdown report; the manifest the pipeline writes is discarded with the runner's checkout. So after every deployment someone copies addresses out of a report table by hand.

That was a documentation problem before #118. Now that a release publishes those addresses, a manifest that lags a deployment ships wrong data to consumers instead of merely reading wrong in a doc.

The implementation lives in dotns-releases, but the issue belongs here: the manifest and the published artifact are in this repository.

Proposal

After a successful live deploy, dotns-releases opens a pull request here with the manifest it produced.

  • Live only. Rehearsals deploy against an ephemeral network, so their addresses are not a fact about any lasting chain.
  • Every live deploy, not only when something moved. Otherwise "the manifest reflects the last deployment" is only true of deployments that happened to move an address. If the file is unchanged, skip the PR and say so in the run summary.
  • Record the deployed commit as _deployedFrom in the manifest. The _ prefix means the release generator already drops it, so it stays out of the published artifact: it is provenance, not an address. Today the report records a ref such as master, which identifies nothing.
  • Restrict live deploys to tags. The release flow in RELEASE_ARTIFACTS.md already asks for one, and a tag makes _deployedFrom reproducible where a branch does not.
  • Never auto-merge, and fail soft: if the write-back cannot run, comment on the triggering issue and leave the deploy green. The deploy succeeded; bookkeeping failing afterwards must not report it as broken.
Acceptance criteria
  • A live deploy opens a PR here with the manifest it produced, carrying the expected-versus-actual table, the network, the chain id, the deployed commit, and links to the triggering issue and run.
  • A live deploy that changes nothing opens no PR and says so in the run summary.
  • A rehearsal opens no PR and pushes nothing.
  • _deployedFrom is recorded, and absent from the published deployments.json.
  • The live deploy template accepts only a tag; rehearsals still accept any ref.
  • A write-back failure leaves the deploy reported as successful and comments on the issue.
  • Exercised end to end on a testnet before the first mainnet deployment.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.