Admin & HPX
Runtime administration, the HPX node distribution, and operational controls for Paxeer X.
Paxeer-X-Network/admin/HPX:
Paxeer-X-Network/hpx/Operating the unified network
The HPX distribution runs the Paxeer X chain node, including EVM, Cosmos, custody, anchor, exchange, bridge, launchpad, and XWeb modules. HyperPax identifiers remain in binary configuration and historical chain identity. Paxeer X is the unified product name.
Runtime logging administration is separate from economic and security administration. Chain governance controls packaged LayerX parameter and admin messages through modules/layerxgov/. Custody authority, checkpoint thresholds, guarantor bonds, bridge attestors and caps, launchpad fee configuration, and XWeb attestors each belong to their module’s authorization model.
Monitor consensus health together with checkpoint finality, availability attestations, custody claims and exits, exchange intents, bridge pause and cap state, and XWeb request delivery. The parameter reference, settlement lifecycle, and kernel architecture explain those responsibilities. Application operators integrate through the platform API.
Admin gRPC Service
The Admin service provides runtime log level control for paxd without restarting the node. It runs on a dedicated loopback-only gRPC server for security.
Configuration
Enable in app.toml:
[admin_server]
admin_enabled = true
admin_address = "127.0.0.1:9095"The address must be a loopback address (127.0.0.1 or ::1). Binding to external interfaces is rejected at startup.
gRPC Methods
| Method | Request | Response | Purpose |
|---|---|---|---|
SetLogLevel | pattern, level | affected count | Change log level for loggers matching pattern |
GetLogLevel | logger | level | Get current log level for a logger |
ListLoggers | prefix (optional) | List of loggers | List all loggers and their levels |
SetLogLevel Pattern Matching
The pattern parameter supports:
- Exact match:
"evm"(sets log level for the EVM logger only) - Glob:
"evm*"(sets log level for all loggers starting with "evm") - All loggers:
"*"(sets log level for every logger)
Log Levels
| Level | Purpose |
|---|---|
debug | Verbose debugging information |
info | General operational information |
warn | Warning messages (potential issues) |
error | Error messages (failures) |
Example: Using grpcurl
# List all loggers
grpcurl -plaintext localhost:9095 \
paxprotocol.paxchain.admin.v0.AdminService/ListLoggers
# Set EVM logger to debug
grpcurl -plaintext -d '{"pattern":"evm","level":"debug"}' \
localhost:9095 \
paxprotocol.paxchain.admin.v0.AdminService/SetLogLevel
# Get log level for a specific logger
grpcurl -plaintext -d '{"logger":"evm"}' \
localhost:9095 \
paxprotocol.paxchain.admin.v0.AdminService/GetLogLevelSecurity
The Admin service is loopback-only by design:
- No authentication required (loopback is trusted)
- Cannot be bound to external interfaces
- Must access from the same machine as
paxd
For remote access, use SSH port forwarding:
ssh -L 9095:127.0.0.1:9095 user@node-ipPaxeer-X-Network/api/pax/admin/v0/admin.protoImplementation:
Paxeer-X-Network/admin/server.go, service.go, config.goHPX: HyperPax Node Distribution
HPX is the public installer, node manager, and peer registry for HyperPax (hyperpax_125-1). Nodes run a native paxd binary under systemd. All artifacts are published outside Git.
Chain Identifier
hyperpax_125-1 (Cosmos-style, EVM chain ID 125)
Install a Node
curl -sSL https://node.hyperpaxeer.com/get-hpx.sh | sudo bashThe installer:
- Downloads and verifies the HPX CLI against
checksums.txt - Places
hpxin/usr/local/bin/
Setup a Node
# Set node type (fullnode or validator)
export HPX_TYPE=fullnode
# Run setup
hpx setupThe setup flow:
- Downloads
paxd,libwasmvmruntimes, genesis, and configuration - Verifies all artifacts against
checksums.txt - Installs artifacts to
/root/.paxeer/ - Configures systemd service
- Starts
paxd
HPX CLI Commands
| Command | Purpose |
|---|---|
hpx status | Show node sync status |
hpx info | Show node configuration |
hpx logs | Tail paxd logs |
hpx update | Update paxd and libraries |
hpx peers show | Show known peers |
hpx peers refresh | Fetch latest peer list from registry |
hpx register | Announce node to public registry |
hpx statesync | Enable state-sync for fast bootstrap |
hpx remove | Uninstall node and clean up |
Node Types
| Type | Purpose | Config |
|---|---|---|
fullnode | Non-validating full node (RPC, indexing) | /config/fullnode/ |
validator | Validating node (must register validator key) | /config/validator/ |
Public Registry
The HPX registry at https://node.hyperpaxeer.com provides:
| Endpoint | Purpose |
|---|---|
GET /healthz | Registry liveness, chain and source revision |
GET /checksums.txt | SHA-256 checksums for all artifacts |
GET /chain-info.json | Chain metadata (chain ID, genesis hash) |
GET /paxd | Native paxd binary |
GET /lib/*.so | Architecture-specific libwasmvm runtimes |
GET /genesis.json | Chain genesis file |
GET /config/<type>/<file> | Node configuration files (config.toml, app.toml) |
GET /api/myip | Caller's public IP address |
POST /api/register | Announce node's public peer address |
GET /api/peers | JSON list of registered peers |
GET /api/peers.txt | Text list of peer addresses (Tendermint format) |
GET /api/nodes | Detailed node metadata |
GET /api/statesync | Current state-sync trust parameters |
Artifact Publishing
To publish a new paxd release or chain configuration:
# From the monorepo root
sudo Paxeer-X-Network/hpx/publish.shThis script:
- Collects
paxdbinary frombuild/paxd - Collects native libraries from
wasm-runtime/andwasm/x/wasm/artifacts/ - Collects live chain configuration from
/root/.paxeer/config/(or$SRC_CFG) - Stages artifacts in
/srv/hpx/artifacts/releases/<release-id>/ - Generates
checksums.txt - Atomically moves
currentsymlink to new release
Failed staging runs never change the served release.
Registry Runtime Deployment
Changes to the registry service under Paxeer-X-Network/hpx/registry/ trigger the GitHub workflow Paxeer / HPX Registry, which:
- Builds Linux executables (x86-64, AArch64)
- Publishes them as GitHub release assets
- Publishes a multi-architecture GHCR image
Deploy the registry on the public origin host:
sudo Paxeer-X-Network/hpx/hosting/deploy.shThis script:
- Downloads and verifies the latest registry executable
- Installs it as a systemd service (loopback-only)
- Obtains a Let's Encrypt certificate for
node.hyperpaxeer.com - Configures Nginx reverse proxy with rate-limiting
Registry state is persisted at /srv/hpx/data/registry.json.
Registry Authentication
Registration is public by default. To require a token:
export HPX_REGISTER_TOKEN=your-secret-token
sudo Paxeer-X-Network/hpx/hosting/deploy.shThe registry will then require X-HPX-Token: your-secret-token header on POST /api/register.
Using an Alternate Mirror
Set HPX_MIRROR only when operating an explicitly trusted alternate mirror:
export HPX_MIRROR=https://your-mirror.example.com
hpx setupNative Libraries
HPX distributes architecture-specific libwasmvm runtimes:
libwasmvm.x86_64.so— x86-64 Linuxlibwasmvm.aarch64.so— AArch64 Linuxlibwasmvm_muslc.x86_64.so— x86-64 musl (Alpine)libwasmvm_muslc.aarch64.so— AArch64 musl
The installer detects the host architecture and installs the correct library.
State Sync
New nodes can bootstrap from a recent state snapshot instead of replaying full history:
hpx statesyncThis fetches trust parameters from /api/statesync and updates config.toml to enable state-sync.
Uninstall
hpx removeThis stops paxd, removes the systemd service, and deletes /root/.paxeer/.
Paxeer-X-Network/hpx/README.md, Paxeer-X-Network/hpx/hosting/