Skip to content

[handoff] fix(staking): follow the CON-471 ValidatorStake.live -> hasUnclaimedRewards rename - #220

Draft
cgmello wants to merge 1 commit into
v2-devfrom
con-471-rename-live-hasunclaimedrewards
Draft

cgmello wants to merge 1 commit into
v2-devfrom
con-471-rename-live-hasunclaimedrewards

Conversation

@cgmello

@cgmello cgmello commented Sep 8, 2026

Copy link
Copy Markdown

Delivery context

Handoff from the consensus team. Requested owner: genlayer-js maintainers.

Problem and outcome

genlayer-consensus#1403 renames the ValidatorStake.live tuple component to hasUnclaimedRewards (the flag marks unclaimed inflation rewards, not node liveness). Named decoding of validatorView* through the ABI shipped here loses the live key once the contracts upgrade, so ValidatorView.live becomes undefined.

This PR updates the staking ABI tuple (3 components), the ValidatorView types, the view mapper in src/staking/actions.ts, and the fixtures/smoke assertion that read the old key. No behavior change.

Implementation and validation

  • npm ci && npx vitest run --typecheck: 13 files, 193 tests passed, no type errors.
  • Coordinate delivery with the consensus rename in genlayer-consensus#1595. Tuple component names are ABI metadata; the nine-field wire layout is unchanged. The selected consensus cut owns the cross-repository dependency edge.

🤖 Generated with Claude Code

https://claude.ai/code/session_01KVkzRWuHBntyhom3xqHEAG

Integration-cut relationship

The selected M2 landing cut, genlayerlabs/genlayer-consensus#1595, will include this consumer as a dependency. The rename is already in that owner composition. This PR has no reverse consensus dependency, avoiding two competing consensus refs in one resolved E2E closure. No final delivery is authorized by this metadata update.

Green consumer qualification cut

This PR is the current consumer-only full-E2E cut, including Python #116, E2E harness #781 and dev-env #147. Native SDK/harness checks and scoped dev-env validation pass. Core components come from the v0.6 matrix and are resolved to exact SHAs by the App. This run does not qualify the separate consensus #1595 M2 composition; that candidate will receive its own full E2E after current native CI is green. No merge is requested.

Depends-On: genlayerlabs/genlayer-py#116
Depends-On: genlayerlabs/genlayer-e2e#781
Depends-On: genlayerlabs/genlayer-dev-env#147

…ewards rename

genlayer-consensus renames `ValidatorStake.live` to `hasUnclaimedRewards`
(the flag marks unclaimed inflation rewards, not node liveness). Update
the staking ABI tuple, the `ValidatorView` types and the view mapper, and
the fixtures/smoke assertion that read the old key.

Depends-On: genlayerlabs/genlayer-consensus#1403

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KVkzRWuHBntyhom3xqHEAG
@cgmello cgmello self-assigned this Sep 8, 2026
@coderabbitai

coderabbitai Bot commented Sep 8, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@cgmello cgmello removed their assignment Sep 8, 2026
@cgmello

cgmello commented Sep 11, 2026

Copy link
Copy Markdown
Author

Selected consumer full-E2E cut: genlayer-js #220. Frozen direct closure:

All four PRs are mergeable. JS/Python/harness native CI is green; dev-env build/vet/tests pass and it has no native CI workflow. No existing E2E run exists for this consumer cut; its checks are unrequested placeholders. Full scope will use the v0.6 matrix for core components and all configured stacks. This is test qualification only; consensus #1595 and final delivery remain separate.

@cgmello

cgmello commented Sep 11, 2026

Copy link
Copy Markdown
Author

/run-e2e all

1 similar comment
@cgmello

cgmello commented Sep 11, 2026

Copy link
Copy Markdown
Author

/run-e2e all

@ci-core-e2e-runner

Copy link
Copy Markdown
Contributor

Test only — nothing will merge.
genlayerlabs/genlayer-dev-env#147 into genlayerlabs/genlayer-dev-env@main (v0.6).
genlayerlabs/genlayer-e2e#781 into genlayerlabs/genlayer-e2e@main (v0.6).
#220 into genlayerlabs/genlayer-js@v2-dev (v0.6).
genlayerlabs/genlayer-py#116 into genlayerlabs/genlayer-py@v0.19-dev (v0.6).
Descendants and sibling branches are not included.

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.

1 participant