Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 18 additions & 7 deletions .github/workflows/greetings.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,27 @@
name: Greetings
name: Welcome first-time contributors

on: [pull_request_target, issues]
on:
issues:
types: [opened]
pull_request_target:
types: [opened]

permissions: {}

jobs:
greeting:
runs-on: ubuntu-latest
timeout-minutes: 5
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/first-interaction@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
issue-message: "Message that will be displayed on users' first issue"
pr-message: "Message that will be displayed on users' first pull request"
- uses: actions/first-interaction@1c4688942c71f71d4f5502a26ea67c331730fa4d # v3.1.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
issue-message: >-
Thanks for contributing. Please include reproducible evidence and
avoid posting secrets or security-sensitive details publicly.
pr-message: >-
Thanks for the contribution. Maintainers will review scope,
verification evidence, compatibility, security, and provenance.
40 changes: 19 additions & 21 deletions .github/workflows/node.js.yml
Original file line number Diff line number Diff line change
@@ -1,32 +1,30 @@
# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs

name: Node.js CI

on:
push:
branches: [ "main" ]
branches: [main]
pull_request:
branches: [ "main" ]
branches: [main]
workflow_dispatch:

jobs:
build:
permissions:
contents: read

jobs:
test:
name: Test on Node.js ${{ matrix.node-version }}
runs-on: ubuntu-latest

timeout-minutes: 10
strategy:
fail-fast: false
matrix:
node-version: [18.x, 20.x, 22.x]
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/

node-version: [22, 24]
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- run: npm ci
- run: npm run build --if-present
- run: npm test

- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ matrix.node-version }}
cache: npm
- run: npm ci
- run: npm audit --omit=dev --audit-level=high
- run: npm test
35 changes: 13 additions & 22 deletions .github/workflows/npm-publish-github-packages.yml
Original file line number Diff line number Diff line change
@@ -1,36 +1,27 @@
# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
# For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages

name: Node.js Package
name: Publish package

on:
release:
types: [created]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npm ci
- run: npm test
permissions: {}

publish-gpr:
needs: build
jobs:
publish:
if: vars.PACKAGE_PUBLISHING_ENABLED == 'true'
runs-on: ubuntu-latest
timeout-minutes: 15
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 20
node-version: 24
registry-url: https://npm.pkg.github.com/
cache: npm
- run: npm ci
- run: npm test
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5 changes: 1 addition & 4 deletions .husky/post-commit
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
#git push --all

git pull
git merge
# Intentionally empty. Commits must never pull, merge, or push automatically.
2 changes: 1 addition & 1 deletion .husky/post-merge
Original file line number Diff line number Diff line change
@@ -1 +1 @@
git push --all
# Intentionally empty. Merges must never push automatically.
3 changes: 1 addition & 2 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
npx biome check --write
git add .
npm test
3 changes: 1 addition & 2 deletions .husky/pre-push
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@

npm version minor
npm test
15 changes: 15 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
ISC License

Copyright (c) 2026 IPI contributors

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
39 changes: 39 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# IPI Chain Configuration

JavaScript export of a legacy IPI Cosmos-wallet chain configuration.

> **Status: unverified legacy configuration.** The values in `config.json`
> identify `ipi-mainnet-2` and historical public endpoints. They are not yet a
> canonical network release record. Verify the chain ID, genesis hash, binary
> version, endpoints, denomination metadata, and operator ownership before
> integrating this package or sending assets.

## Exported fields

The default export contains:

- Cosmos chain ID and display name;
- RPC and REST endpoints;
- BIP-44 coin type and Bech32 prefixes;
- native, fee, and staking denominations; and
- declared wallet features.

```js
import chainConfiguration from "./index.js";
```

## Canonicalization work

For a production-quality registry entry, a tagged release must bind this data
to a reviewed genesis file, reproducible node binary, documented network
environment, working health checks, and independently operated endpoints. A
change to network identity must use review and an explicit migration path; it
must never silently reuse a chain ID.

Contributions should add schema validation and automated endpoint checks that
do not require secrets. Protocol-wide changes belong in an
[IPI Improvement Proposal](https://github.com/ipicoin/.github/tree/main/ipi).

## License

Licensed under the [ISC License](LICENSE).
3 changes: 1 addition & 2 deletions index.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
// on Apache license 2.0 @ IPI DAO 2026
// maintainership by Sett Sarverott
// SPDX-License-Identifier: ISC

import chainConfiguration from "./config.json" with {type: 'json'};

Expand Down
Loading