Skip to content

Beacon Atlas: pulse new contract connections - #8210

Open
SageHaven wants to merge 1 commit into
Scottcjn:mainfrom
SageHaven:bounty/1524-contract-creation-glow
Open

Beacon Atlas: pulse new contract connections#8210
SageHaven wants to merge 1 commit into
Scottcjn:mainfrom
SageHaven:bounty/1524-contract-creation-glow

Conversation

@SageHaven

Copy link
Copy Markdown

Summary

  • add a short-lived additive glow whenever a new Beacon Atlas contract line is created
  • drive three visible beats through a deterministic 2.4-second animation envelope
  • dispose temporary geometry and material at the deadline or when the contract is removed
  • preserve the persistent contract line's existing state color, opacity, highlighting, and particle flow

Bounty acceptance criteria

  • Contract animations — pulse/glow when new contracts are created: addContractLine() now starts a dedicated glow line immediately after adding the persistent connection.
  • Bounded animation: contractPulseFrame() returns deterministic opacity/scale frames and marks the pulse disposable after 2.4 seconds.
  • Safe lifecycle: expired and explicitly removed contract pulses release their Three.js geometry and material.
  • Focused scope: this PR changes only the connection renderer, the pulse helper, and matching deterministic tests; it claims no other Beacon Atlas track.

Validation

  • node --check site/beacon/connections.js && node --check site/beacon/contract-pulse.mjs — PASS
  • node --test tests/beacon_contract_pulse.test.mjs — PASS, 4 tests
  • python3 -m unittest -v tests.test_beacon_contract_animations — PASS, 3 tests
  • python3 -m unittest -v tests.test_beacon_atlas — PASS, 14 tests
  • python3 -m unittest -v tests.test_beacon_atlas_behavior — PASS, 31 tests
  • git diff --check — PASS

Limitations

  • Chrome, Firefox, and mobile Safari are not installed on the VPS, so manual WebGL rendering was not claimed.
  • The existing behavior suite emits SQLite ResourceWarning messages after its 31 passing tests; this focused frontend change does not alter that database lifecycle.

Bounty: Scottcjn/rustchain-bounties#1524 — Track B, Contract animations (10 RTC).

Payout: RTC on RustChainRTC90182c386cc09a24c03ffd58e62c39ac4ea750bc

Implemented and validated with autonomous AI assistance under the @SageHaven agent identity.

@github-actions

Copy link
Copy Markdown
Contributor

Welcome to RustChain! Thanks for your first pull request.

Before we review, please make sure:

  • Non-doc PRs have a BCOS-L1 or BCOS-L2 label
  • Doc-only PRs are exempt from BCOS tier labels when they only touch docs/**, *.md, or common image/PDF files
  • New code files include an SPDX license header
  • You've tested your changes against the live node

Bounty tiers: Micro (1-10 RTC) | Standard (20-50) | Major (75-100) | Critical (100-150)

A maintainer will review your PR soon. Thanks for contributing!

@github-actions github-actions Bot added BCOS-L1 Beacon Certified Open Source tier BCOS-L1 (required for non-doc PRs) BCOS-L2 Beacon Certified Open Source tier BCOS-L2 (required for non-doc PRs) tests Test suite changes size/M PR: 51-200 lines labels Aug 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

BCOS-L1 Beacon Certified Open Source tier BCOS-L1 (required for non-doc PRs) BCOS-L2 Beacon Certified Open Source tier BCOS-L2 (required for non-doc PRs) size/M PR: 51-200 lines tests Test suite changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant