Skip to content

chore(protos): sync to buf.build/lumera-protocol/lumera:v1.12.0#9

Open
mateeullahmalik wants to merge 1 commit into
masterfrom
chore/protos-v1.12.0
Open

chore(protos): sync to buf.build/lumera-protocol/lumera:v1.12.0#9
mateeullahmalik wants to merge 1 commit into
masterfrom
chore/protos-v1.12.0

Conversation

@mateeullahmalik
Copy link
Copy Markdown
Contributor

What

Bumps the BSR pin in package.json from the unlabeled 2025-12-19 commit (76f5a5038df84649b0b0557064206d4e) to the labeled v1.12.0 commit (e1840803ddd3435cb1a68af6ade4b2ed) and regenerates the TypeScript codegen via npm run generate.

Why

sdk-js was generating against pre-v1.11 protos. Lumera chain is now on v1.12.0, which adds the x/audit module and extends x/action / x/supernode. JS consumers cannot construct audit-module messages or call the new supernode/action endpoints until codegen catches up.

Changes

New module surface

  • lumera.audit.v1 + lumera.audit.module.v1 — audit, epoch, evidence, evidence_metadata, genesis, params, query, tx
  • New tree: src/codegen/lumera/audit/**

Updates

  • lumera.action.v1: metadata.proto additions, params.proto fields
  • lumera.supernode.v1: new params fields, new query endpoints, metrics / metrics_aggregate / supernode_state field changes
  • Stdlib (google/protobuf, cosmos descriptor) refresh from telescope

Wiring is fully automatic via telescope — verified manually:

  • src/codegen/lumera/bundle.ts exports the audit namespace
  • src/codegen/lumera/client.ts registers audit tx registry + amino converters
  • src/codegen/lumera/rpc.query.ts and rpc.tx.ts expose lumera.audit.v1

No hand-written code under src/ (outside src/codegen/) references audit yet — module is reachable but not yet adopted by sdk-js helpers. That's a follow-up.

Verification

  • npm run generate — clean (telescope codegen + post-codegen fixes)
  • npm run build — tsc ESM + CJS both clean
  • npm test81/81 vitest pass
  • BSR label v1.12.0 resolved on registry on 2026-05-14

Risk / rollback

  • Risk: low. Only generated code + one script-string + version bump. No hand-written source paths touched.
  • Rollback: revert this commit; previous codegen tree restored verbatim.

Version

Bumps 0.2.70.3.0 (new module surface = minor bump under 0.x).

Follow-ups (not in this PR)

  • proto:download:deps still pins a 2023-11-07 cosmos-sdk BSR commit while Lumera is on Cosmos SDK v0.53.5. Worth a separate PR to bump cosmos-sdk / cosmos-proto / googleapis pins.
  • Add hand-written sdk-js helpers/types for the audit module if/when product wants first-class JS access.

Bumps the BSR pin from the unlabeled 2025-12-19 commit
(76f5a5038df84649b0b0557064206d4e) to the labeled v1.12.0 commit
(e1840803ddd3435cb1a68af6ade4b2ed) and regenerates the TypeScript
codegen via 'npm run generate'.

Adds:
- x/audit module: new proto package lumera.audit.v1 plus
  lumera.audit.module.v1 (audit, epoch, evidence, evidence_metadata,
  genesis, params, query, tx) -> new src/codegen/lumera/audit/**

Updates:
- lumera.action.v1: metadata.proto additions, params.proto fields
- lumera.supernode.v1: new params fields, new query endpoints,
  metrics / metrics_aggregate / supernode_state additions
- google/protobuf, cosmos descriptor regenerated by telescope

Wiring is fully automatic via telescope:
- src/codegen/lumera/bundle.ts: exports audit namespace
- src/codegen/lumera/client.ts: registers audit tx registry + amino
- src/codegen/lumera/rpc.{query,tx}.ts: exposes lumera.audit.v1

Build: tsc esm + cjs clean
Tests: 81/81 pass (vitest)

Bumps version 0.2.7 -> 0.3.0 (new module surface).
Copy link
Copy Markdown

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 syncs the repo’s protobuf inputs and regenerated TypeScript codegen to Lumera protos v1.12.0, adding the new x/audit module surface and updating x/action / x/supernode generated clients/types to match the chain’s current API.

Changes:

  • Bump buf export pin to buf.build/lumera-protocol/lumera:v1.12.0 and bump package version to 0.3.0.
  • Regenerate src/codegen/** (telescope 2.2.4), including new lumera.audit.v1 + lumera.audit.module.v1 trees and wiring into bundle/client/rpc factories.
  • Update protos + generated types for lumera.supernode.v1 and lumera.action.v1 (new queries/params/fields).

Reviewed changes

Copilot reviewed 73 out of 75 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
src/codegen/varint.ts Regenerated header reflecting telescope version bump.
src/codegen/utf8.ts Regenerated header reflecting telescope version bump.
src/codegen/types.ts Regenerated header reflecting telescope version bump.
src/codegen/tendermint/bundle.ts Regenerated tendermint bundle export shape/order.
src/codegen/registry.ts Regenerated header reflecting telescope version bump.
src/codegen/lumera/supernode/v1/supernode_state.ts Adds new enum value + state record reason field in generated TS types/codec.
src/codegen/lumera/supernode/v1/query.rpc.Query.ts Adds new supernode query client methods (pool state, eligibility, payout history).
src/codegen/lumera/supernode/v1/query.rpc.func.ts Adds buildQuery helpers for new supernode query endpoints.
src/codegen/lumera/supernode/v1/params.ts Adds RewardDistribution and plumbs into Params.
src/codegen/lumera/supernode/v1/metrics.ts Adds cascadeKademliaDbBytes metric field.
src/codegen/lumera/supernode/v1/metrics_aggregate.ts Updates aggregate metrics structure (map → repeated entries) and codec/types.
src/codegen/lumera/supernode/v1/genesis.ts Adds lastDistributionHeight to supernode genesis state.
src/codegen/lumera/rpc.tx.ts Wires lumera.audit.v1 Msg client into RPC msg factory.
src/codegen/lumera/rpc.query.ts Wires lumera.audit.v1 Query extension into RPC query factory.
src/codegen/lumera/client.ts Registers audit tx registry + amino converters in SigningStargate client options.
src/codegen/lumera/bundle.ts Exports new lumera.audit namespace and reorders lumera bundle exports.
src/codegen/lumera/audit/v1/tx.rpc.msg.ts New generated audit Msg RPC client implementation.
src/codegen/lumera/audit/v1/tx.rpc.func.ts New generated buildTx helpers for audit Msg methods.
src/codegen/lumera/audit/v1/tx.registry.ts New generated registry entries for audit Msg types.
src/codegen/lumera/audit/v1/tx.amino.ts New generated Amino converters for audit Msg types.
src/codegen/lumera/audit/v1/query.rpc.Query.ts New generated audit gRPC query client implementation.
src/codegen/lumera/audit/v1/query.rpc.func.ts New generated buildQuery helpers for audit query endpoints.
src/codegen/lumera/audit/v1/evidence.ts New generated audit evidence types + codec.
src/codegen/lumera/audit/v1/epoch.ts New generated epoch anchor types + codec.
src/codegen/lumera/audit/module/v1/module.ts New generated audit module config types + codec.
src/codegen/lumera/action/v1/params.ts Updates action params comments + adds SVC-related fields to type guards.
src/codegen/lumera/action/v1/metadata.ts Regenerated action metadata; adds LEP-5/6 structures + hash algo enum changes.
src/codegen/lumera/action/v1/action.ts Adds appPubkey field to action type + codec/Amino mapping.
src/codegen/index.ts Reorders exports and updates generated header version.
src/codegen/helpers.ts Regenerated header reflecting telescope version bump.
src/codegen/helper-func-types.ts Regenerated header reflecting telescope version bump.
src/codegen/google/protobuf/timestamp.ts Updates comments and valid range documentation per refreshed protobufs.
src/codegen/google/protobuf/descriptor.ts Updates descriptor definitions (feature support additions).
src/codegen/google/bundle.ts Regenerated google bundle export structure/order.
src/codegen/gogoproto/bundle.ts Regenerated gogoproto bundle import index names.
src/codegen/extern.ts Regenerated header reflecting telescope version bump.
src/codegen/cosmos/rpc.tx.ts Regenerated cosmos RPC msg client factory ordering.
src/codegen/cosmos/rpc.query.ts Regenerated cosmos RPC query client factory ordering.
src/codegen/cosmos/gov/v1beta1/tx.ts Regenerated gov v1beta1 tx unions + type-url registration ordering.
src/codegen/cosmos/gov/v1beta1/gov.ts Regenerated gov v1beta1 proposal unions + registration ordering.
src/codegen/cosmos/gov/v1/tx.ts Regenerated gov v1 legacy content unions + registration ordering.
src/codegen/cosmos/client.ts Regenerated cosmos SigningStargate client registries + amino converters ordering.
src/codegen/cosmos/authz/v1beta1/authz.ts Regenerated authz union ordering + type-url registration ordering.
src/codegen/cosmos_proto/bundle.ts Regenerated cosmos_proto bundle import index names.
src/codegen/binary.ts Regenerated header reflecting telescope version bump.
src/codegen/amino/bundle.ts Regenerated amino bundle import index names.
protos/lumera/supernode/v1/supernode_state.proto Adds lifecycle state docs, new enum value, and reason field in history record.
protos/lumera/supernode/v1/query.proto Adds pool state / eligibility / payout history query RPCs and messages.
protos/lumera/supernode/v1/params.proto Adds RewardDistribution and attaches to supernode params.
protos/lumera/supernode/v1/metrics.proto Adds cascade kademlia DB bytes metric.
protos/lumera/supernode/v1/metrics_aggregate.proto Changes metrics aggregate from map to repeated message entries.
protos/lumera/supernode/v1/genesis.proto Adds last_distribution_height to supernode genesis.
protos/lumera/audit/v1/tx.proto New audit module tx service + messages.
protos/lumera/audit/v1/query.proto New audit module query service + request/response messages.
protos/lumera/audit/v1/params.proto New audit module params definitions.
protos/lumera/audit/v1/genesis.proto New audit module genesis state definitions.
protos/lumera/audit/v1/evidence.proto New audit evidence types.
protos/lumera/audit/v1/evidence_metadata.proto New audit evidence metadata message types/enums.
protos/lumera/audit/v1/epoch.proto New audit epoch anchor definition.
protos/lumera/audit/v1/audit.proto New audit core message types (host report, storage proof results, etc.).
protos/lumera/audit/module/v1/module.proto New audit module app config definition.
protos/lumera/action/v1/params.proto Adds LEP-5 SVC parameters to action module params.
protos/lumera/action/v1/metadata.proto Adds LEP-5 commitment/proofs + LEP-6 artifact counts + hash algo enum.
protos/lumera/action/v1/action.proto Adds app_pubkey to Action.
protos/google/protobuf/timestamp.proto Refreshes timestamp documentation/range text.
protos/google/protobuf/descriptor.proto Refreshes descriptor options (feature support/removal error additions).
package.json Bumps version to 0.3.0 and updates Lumera buf export pin to v1.12.0.

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

Comment on lines +189 to +194
is(o: any): o is RewardDistribution {
return o && (o.$typeUrl === RewardDistribution.typeUrl || typeof o.paymentPeriodBlocks === "bigint" && typeof o.registrationFeeShareBps === "bigint" && typeof o.minCascadeBytesForPayment === "bigint" && typeof o.newSnRampUpPeriods === "bigint" && typeof o.measurementSmoothingPeriods === "bigint" && typeof o.usageGrowthCapBpsPerPeriod === "bigint");
},
isAmino(o: any): o is RewardDistributionAmino {
return o && (o.$typeUrl === RewardDistribution.typeUrl || typeof o.payment_period_blocks === "bigint" && typeof o.registration_fee_share_bps === "bigint" && typeof o.min_cascade_bytes_for_payment === "bigint" && typeof o.new_sn_ramp_up_periods === "bigint" && typeof o.measurement_smoothing_periods === "bigint" && typeof o.usage_growth_cap_bps_per_period === "bigint");
},
Comment on lines 61 to 66
is(o: any): o is GenesisState {
return o && (o.$typeUrl === GenesisState.typeUrl || Params.is(o.params));
return o && (o.$typeUrl === GenesisState.typeUrl || Params.is(o.params) && typeof o.lastDistributionHeight === "bigint");
},
isAmino(o: any): o is GenesisStateAmino {
return o && (o.$typeUrl === GenesisState.typeUrl || Params.isAmino(o.params));
return o && (o.$typeUrl === GenesisState.typeUrl || Params.isAmino(o.params) && typeof o.last_distribution_height === "bigint");
},
Comment on lines +141 to 145
return o && (o.$typeUrl === SuperNodeStateRecord.typeUrl || isSet(o.state) && typeof o.height === "bigint" && typeof o.reason === "string");
},
isAmino(o: any): o is SuperNodeStateRecordAmino {
return o && (o.$typeUrl === SuperNodeStateRecord.typeUrl || isSet(o.state) && typeof o.height === "bigint");
return o && (o.$typeUrl === SuperNodeStateRecord.typeUrl || isSet(o.state) && typeof o.height === "bigint" && typeof o.reason === "string");
},
Comment on lines 161 to 166
is(o: any): o is MetricsAggregate {
return o && (o.$typeUrl === MetricsAggregate.typeUrl || isSet(o.metrics) && typeof o.reportCount === "bigint" && typeof o.height === "bigint");
return o && (o.$typeUrl === MetricsAggregate.typeUrl || Array.isArray(o.metrics) && (!o.metrics.length || MetricValue.is(o.metrics[0])) && typeof o.reportCount === "bigint" && typeof o.height === "bigint");
},
isAmino(o: any): o is MetricsAggregateAmino {
return o && (o.$typeUrl === MetricsAggregate.typeUrl || isSet(o.metrics) && typeof o.report_count === "bigint" && typeof o.height === "bigint");
return o && (o.$typeUrl === MetricsAggregate.typeUrl || Array.isArray(o.metrics) && (!o.metrics.length || MetricValue.isAmino(o.metrics[0])) && typeof o.report_count === "bigint" && typeof o.height === "bigint");
},
Comment on lines 20 to +26
getMetrics(request: QueryGetMetricsRequest): Promise<QueryGetMetricsResponse>;
/** PoolState queries the current state of the Everlight pool. */
poolState(request?: QueryPoolStateRequest): Promise<QueryPoolStateResponse>;
/** SNEligibility queries whether a specific SuperNode is eligible for payouts. */
sNEligibility(request: QuerySNEligibilityRequest): Promise<QuerySNEligibilityResponse>;
/** PayoutHistory returns distribution payout history for a validator. */
payoutHistory(request: QueryPayoutHistoryRequest): Promise<QueryPayoutHistoryResponse>;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants