Git Product home page Git Product logo

interchain_public_works's Introduction

Conforms to README.lint

🌌 Why did we create interchain_public_works?

interchain_public_works ("IPW") is a public repo which helps coordinate and aggregate backlogs across various interchain projects.

We believe that

  • people building Interchain software have a problem understanding the state of dependencies across other repos, and
  • most of the backlogs use different words and practices for what're effectively the same things

IPW can help by offering Sane Defaults (or "Convention Over Configuration") for the way we manage projects

We'll know we're right, if

  • time blocked by cross-project dependencies goes down (because everyone'll have better visibility into foreign priorities and velocity),
  • the amount of foreign Pull Requests go up (bc it'll be easier to just write some patches yrself, rather than waiting for the native team to do it).

🌌🌌 Who benefits from IPW?

Anyone who's trying to understand software at a high level across the interchain:

  • builders who're doing the work in the backlog who want to understand cross-repo dependencies and have a Sane Default for process (story types, status columns) so that backlogs may be more interoperable
  • Interchain-curious and Appchain-thesis-curious people (e.g. developers and investors from other ecosystems) who want a high-level view on the ecosystem
  • Grant-issuing and Public Goods actors who're looking to support public works

🌌🌌🌌 What exactly does IPW do?

IPW is primarily a GH Issues board, although who knows? Maybe some code will work its way in here.

🌌🌌🌌🌌 How do I use it?

The main board lives at https://github.com/orgs/interchainio/projects/${NUMBER_FOR_PROJECT_CALLED_"interchain_public_works"}.

See a record of Plans, Hypotheses, Explorations, Experiments, and Learnings at the Interchain Public Works PHEELblog.

🌌🌌🌌🌌🌌 Extras

interchain_public_works's People

Contributors

jonathanpberger avatar qx-nico avatar

Watchers

 avatar ΓΈllie avatar Carlos Rodriguez avatar  avatar

interchain_public_works's Issues

Upgrade GH plan

## Todo
- [ ] figure out the minimum number of seats needed for now
- [ ] upgrade the plan


As Interchain
We need to upgrade the Interchainio GH plan
Bc we need privs to auto-add stories from all major repos

When I go to https://github.com/orgs/interchainio/projects/3/workflows
Then I should be able to create an "Auto Add" workflow for at least one auto-add workflow for each major Cosmos repo, about ~28 repos at current count

Image

PILOT: HMW tune auto workflows so that CosmosSDK epics come through to this board?

Pull story status from CosmosSDK

  • brew install gh-cli
  • gh auth login
  • gh project list --owner cosmos --limit 11 (need explicit limit or get a pagination error from the API)

// Pull epics from foreign project
gh project item-list 26 --owner cosmos --format json -q '.items[] | select(.["story Type"] == "πŸ‘‘ Epic") | {title: .title, status: .status, storyType: .["story Type"], url: .content.url}'

// add single epic to IPW
gh project item-add 3 --owner interchainio --url https://github.com/cosmos/cosmos-sdk/issues/9958

assign "πŸ‘‘ Epic" status to Issue Story Type field in IPW

// get Issue ID
gh project item-list 3 --owner interchainio --limit 200 --format json | jq -r '.items[] | select(.content.url == "cosmos/cosmos-sdk#9958") | .id' # PVTI_lADOAsuzxc4AkKP5zgQ9Oxg

// get IPW Story Type field id

➜  dot-rot git:(master) βœ— gh project field-list --owner interchainio
? Which project would you like to use? Interchain Public Works (#3)
NAME                  DATA TYPE                   ID
Title                 ProjectV2Field              PVTF_lADOAsuzxc4AkKP5zgcaQn0
Assignees             ProjectV2Field              PVTF_lADOAsuzxc4AkKP5zgcaQn4
Status                ProjectV2SingleSelectField  PVTSSF_lADOAsuzxc4AkKP5zgcaQn8
Labels                ProjectV2Field              PVTF_lADOAsuzxc4AkKP5zgcaQoA
Linked pull requests  ProjectV2Field              PVTF_lADOAsuzxc4AkKP5zgcaQoE
Milestone             ProjectV2Field              PVTF_lADOAsuzxc4AkKP5zgcaQoI
Repository            ProjectV2Field              PVTF_lADOAsuzxc4AkKP5zgcaQoM
Reviewers             ProjectV2Field              PVTF_lADOAsuzxc4AkKP5zgcaQoc
Story Type            ProjectV2SingleSelectField  PVTSSF_lADOAsuzxc4AkKP5zgcaQoo

// get the project id

➜  dot-rot git:(master) βœ— gh project list --owner interchainio
NUMBER  TITLE                    STATE  ID
3       Interchain Public Works  open   PVT_kwDOAsuzxc4AkKP5

// get the IPW field value:

 dot-rot git:(master) βœ— gh project field-list 3 --owner interchainio --format json -q ".fields[]" | jq -r '. | select(.name == "Story Type").id'

PVTSSF_lADOAsuzxc4AkKP5zgcaQoo

// get the id of the single-select via --format json --single-select-option-id string

 dot-rot git:(master) βœ— gh project field-list 3 --owner interchainio --format json -q ".fields[]" | jq -r '. | select(.name == "Story Type").options[] | select(.name == "πŸ‘‘ Epic").id'

282f80fd

// assign "πŸ‘‘ Epic" status to Issue Story Type field in IPW

gh project item-edit --project-id PVT_kwDOAsuzxc4AkKP5 --id PVTI_lADOAsuzxc4AkKP5zgQ9Oxg --field-id PVTSSF_lADOAsuzxc4AkKP5zgcaQoo --single-select-option-id string 282f80fd


THIS SEEMS TO HAVE WORKED!!

➜  dot-rot git:(master) βœ— gh project field-list 3 --owner interchainio --format json -q ".fields[]" | jq -r '. | select(.name == "Story Type").id'

PVTSSF_lADOAsuzxc4AkKP5zgcaQoo
➜  dot-rot git:(master) βœ— gh project field-list 3 --owner interchainio --format json -q ".fields[]" | jq -r '. | select(.name == "Story Type").options[] | "\(.name): \(.id)"'

⭐️ User story: 9c507ef2
🐞 Bug: 9b62bd3f
βš™οΈ Chore: 5b9ce27f
πŸ‘‘ Epic: 282f80fd
🏁 Release Marker: bd1610fc
➜  dot-rot git:(master) βœ— gh project item-edit --project-id PVT_kwDOAsuzxc4AkKP5 --id PVTI_lADOAsuzxc4AkKP5zgQ9Oxg --field-id PVTSSF_lADOAsuzxc4AkKP5zgcaQoo --single-select-option-id 282f80fd

Edited item "EPIC: Separate x/auth and vesting"
➜  dot-rot git:(master) βœ—


EPIC: Interchain should have Sane Defaults for public project mgmt ("Backlog Interop")

### Tasks
- [x] get Ollie to create public `interchain/interchain_public_works` repo https://github.com/interchainio/interchain_public_works
- [ ] move this ticket to IPW and add Nico and Ollie
- [ ] create `interchainio/interchain_public_works` gh **project**
- [ ] create Backlog Interop Wiki
- [ ] create Interchain PHEELblog (and a few Hello World posts). GH Pages?
- [ ] ⚑️ articulate what "backlog interop" means (blog post?): story types, statuses, board automation, etc
- [ ] make projects (see list below) Backlog-Interop compliant
- [ ] do more work on Cosmos-SDK
- [ ] socialize it (PHEELblog)
- [ ] put out a call to ToT: who's in next?
### Projects to onboard to Backlog Interop
- [ ] Cosmos-SDK
- [ ] IBC-wasm
- [ ] cosmos/IBC-apps
- [ ] strangelove-ventures/horcrux
- [ ] strangelove-ventures/interchaintest, 
- [ ] abstract.money
- [ ] some informal?
- [ ] some IG?
- [ ] some other ToT?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.