Vac 2025/08/18

highlights

  • P2P: Universal Connectivity App work’s been completed
    • Achieved interop between diff implementations
    • Kademlia support will be added once Kademlia commitment is completed so in the meantime, connection to peers must be done manually
  • TKE: Waiting for libp2p reviews on UC nim-peer and AutoTLS client spec
  • QA: Merged multiple Status accounts service test PRs and logged new issues
  • QA: Keycard Shell OS v0.10 retest completed with 3rd party wallets and SLIP39
  • QA: Waku interop REST API tests finalized and PR #134 ready for merge; issues logged for WebSocket failures
  • QA: Status Desktop maintenance tasks fixed multiple failing tests; backlog cleanup ongoing
  • QA: Initial Status mobile framework merged with additional test fixtures and documentation PRs submitted
  • DST: Discovered potential connectivity issue in js-waku
  • DST: Discovered malfunctioning metrics in Quic
  • DST: Created docker utility for nwaku interaction
  • SC: Found a couple of security bugs in light of the latest changes done to the Staking protocol
  • SC: Upgraded the testnet stake manager to allow for setting rewards while a reward period is pending
  • ACZ: Released first version of de-MLS RFC on rfc.vac.dev/eth-mls-offchain
  • NES: Finished implementing the public and private components of NSSA v0.1 protocol

vac:p2p:

  • vac:p2p:ift:2025q3-nimlibp2p-mix:mix-core
    • vacp2p/mix#73 feat: create surbs and send response back
      • From the flow described in #41 implemented:
        • Sender-side flow (Entry)
        • Exit-side flow (Sending Reply)
        • Currently working on Sender-Side Flow (Receiving Reply)
      • Refactor the entry layer to make it easier to understand whether exit is destination or not
      • Added proc registerFwdBehavior*(mixProto: MixProtocol, codec: string, fwdBehavior: fwdBehaviorCb) which lets you customize the read behavior in the exit node, for cases in which exit is not destination.
  • vac:p2p:ift:2025q3-nimlibp2p-maintenance:maintenance
    • QUIC improvements
    • QUIC debugging
      • FIN flag not received by FrameSorter nim-quic#100
        • found easier test case where this issue could be reproduced (integration with nim-libp2p not needed)
        • identified some clues that are hopefully narrowing down source of the issue
  • vac:p2p:ift:2025q3-nimlibp2p-universal-connectivity-app
  • vac:p2p:ift:2025q3-nimlibp2p-autonat-v2
  • misc/admin
    • 1 CC 5d off
    • 1 CC 5d off

vac:tke:

  • admin
    • 2 CC day off + 1 day sick leave
  • vac:tke:nomos:stress-test::review-block-rewards
    • addressed all comments from the Nomos team and adapted the text accordingly
  • vac:tke:nomos:stress-test::review-nomos-da
    • addressed all comments from the Nomos team and adapted the text accordingly
  • vac:tke:nomos:stress-test::review-blockspace
    • addressed all comments from the Nomos team and adapted the text accordingly
  • vac:tke:nomos:stress-test::review-cryptoeconomics
    • reviewed Nomos cryptoeconomic review and suggested modifications
  • vac:tke:ift:logos-token:logos-strategy
    • review Frederico’s doc and catch up on recent progress
    • ad-hoc research
    • Read Logos docs
  • vac:tke:waku:services-incentive
    • catching up on latest developments
    • mapping open questions and kicking off research
  • vac:tke:status:karma-incentives
    • review and check staking system’s docs
    • catch up on the latest StakeManager & StakeVault refactor
  • vac:tke:status:cf
    • Met with Matt to discuss GTM
  • vac:tke:ift:tokenomics-research-forum::control
    • Kept pushing reserch on Control Problem

vac:qa:

vac:dst:

  • admin/misc
    • Created requested VM for ACZ
    • Created job description for DevOps
  • vac:dst:ift:2025q3-dst-tooling:python-uv
    • Was finished, only closing PR was missing
  • vac:dst:status:2025q3-status-go-chat-protocol-benchmarks:delay-and-store
    • Status-waku discovered an issue with bootstraping. Trying to get more info
  • vac:dst:vac:2025q3-libp2p-evaluation:regression-testing
    • Final adjustments to the lab, weird results came up again.
  • vac:dst:vac:2025q3-libp2p-evaluation:evaluate-quic-v0.2.9
    • Did new experiments with suggested PR
    • Connectivity and delays looks more stable, but cant give accurate results because metrics missbehaving.
  • vac:dst:vac:2025q3-libp2p-evaluation:mix-re-evaluation
    • Coordinated with Pearson for help
    • “Only” rerun and analysis is needed.
  • vac:dst:waku:2025q3-waku-evaluation:js-waku
  • vac:dst:ift:2025q3-dst-tooling:workdir-experiments-track
  • vac:dst:waku:2025q3-dst-tooling:improve-tooling
  • vac:dst:ift:2025q3-dst-tooling:shadow-integration-scaffold
    • Extract and log nim-libp2p prometheus metrics in shadow
    • Able to extract binaries from nimlibp2p docker image and run in shadow.
      • Running existing docker images still requires addressing at-least two issues.
        • nimp2p-service (discovery) not available in shadow. Supporting this can allow running existing docker images as well.
        • prometheus metrics are exposted to server in existing images. Still need to try curl/other options to use these metrics.
    • New shadow release failing many compatibility tests on my machine (probably an issue with hypervisor)

vac:sc:

  • vac:sc:ift:2025q3-fv-tools-research
    • trying Kontrol with our repos tests
    • trying the opensource version of certora in local
  • vac:sc:status:2025q3-maintaining-status-contracts
    • Review of staking system
      • Found bug in leave system: withdraw allows immediate release of funds after leave #247
      • Found bug in leave system: withdrawFromVault allows withdraw after lockEnd without StakeManager notification (no leave precondition) #248
    • Improve coverage of staking system
      • Added tests that find the bugs above
    • Implemented change in stakemanager to allow for setting rewards when reward period is already pending
    • Upgrade testnet deployment
    • PR: https://github.com/vacp2p/staking-reward-streamer/pull/251
  • ift:2025q3-sc-learnup-sessions

vac:acz:

  • ift:2025q3-de-mls-tesnet:consensus-layer
    • Added real voting into PoC and made consensus service as event-based PR
  • ift:2025q3-zerokit:merkle-tree-revising
    • Merged this PR (completed task)
    • Reviewed PR
  • ift:2025q3-libp2p-mix-testnet:update-rfc
    • Resumed Section 8 refactor in PR PR #173.
    • Began adding payload encryption and handler logic (WiP).
  • ift:2025q3-libp2p-mix-testnet:multi-surb-design
    • Encountered issues running Mixnet with nim-libp2p v2.2.4.
    • Debugged Sphinx reply processing: destination was incorrectly embedded in final hop.
    • Implemented SURB handling changes in feat/surbs-process branch.
    • Identified issue behind SURB test failing — identifier I must be non-zero.
  • ift:2025q3-zerokit:libp2p-mix-repo
    • Synced with P2P team on achieving uniform behavior in Mix core regardless of exit != destination or not.
    • Aligned that hop selection remains a challenge: in exit == destination, the last hop must be the destination, which introduces a special case.
    • Discussed options: either expose hop selection to top-level applications or allow Mix core to be aware of the destination — both are not desirable.
    • Explored possibility of defining a custom client-relay protocol for GossipSub (suggested by Richard) to avoid this.
  • ift:2025q3-zerokit:pmtree-config-builder
    • Addressed PR review feedback on PR.
  • ift:2025q3-rln-status-l2:maintaining
  • ift:2025q3-rln-status-l2:stress-test
  • ift:2025q3-zerokit:zerokit-maintaining
  • ift:2025q3-rln-status-l2:rln-spec-maintain
    • Drafted decentralizes slashing doc and discuss it. Option two looks reasonable.
    • Researched current existing Web2 solutions for DDoS protection for the Linea Network.
  • nes:2025q3-nescience-consulting:dex-research
  • ift:2025q3-de-mls-tesnet:multi-steward-rfc
    • Merged PR.
  • ift:2025q3-de-mls-tesnet:consensus-rfc
    • Applied feedbacks to the PR ready to merge.
  • nes:2025q3-nescience-consulting:privacy-projects-analysis
    • Review notes on existigng projects.
    • Continued write up for privacy-preserving projects with focus on how Nescience compares; some projects took longer than expected to understand
  • admin/misc

vac:rfc:

vac:sec:

  • ift:2025q3-wallet-policy-update:write-and-review-new-version
    • Drafted and reviewed the runbook proposal for onboarding new signatories (identity verification)
  • ift:2025q3-awareness-program:web3-security-essentials
    • Shared web3 news about crime, phishing, malware, hacks and IoC with Finance
  • ift:2025q3-multisig-secondary-interface-deployment:write-guides-and-best-practices
    • Started writing the guidelines to use Onchain Den when required
  • ift:2025q3-cicd-security-review:status-design-reviews
    • Performed secure code review on the latest Status wallet PRs (authentication, key management, storage handling)
    • Audited CI pipeline secrets usage and validated enforcement of rotation policies
    • Held architecture discussion with Status team on wallet security design and integration boundaries
  • ift:2025q3-vulma-and-ir:incidents
    • Ran endpoint scans on impacted accounts/devices to confirm containment and verified antivirus presence
  • ift:2025q3-finance-automation
    • Updated processes with changes in Iplicit API
  • ift:2025q3-security-automation:automatic-wallet-index-updates
    • Started testing for Etherscan API integration
  • ift:2025q3-security-automation
    • Finalized 1st version of workflow for web3 security news alert

vac:nes:

  • vac:nes:2025q3:state-separation-architecture-poc:specs
  • vac:nes:2025q3:state-separation-architecture-poc:token-design
  • vac:nes:2025q3:state-separation-architecture-poc:fee
  • state-separation-architecture-poc:wallet
    • Returned and updated PR 101 for CLI expansion.
  • state-separation-architecture-poc:specs-impl
    • Finished key protocol update public part. PR 104
    • Finished implementing privacy-preserving components of NSSA v0.1 in the testnet (PR 103 draft).

vac:nim:

  • ift:2025q3-nimble
    • MacOs random CI failure (https://github.com/nim-lang/nimble/pull/1453)
    • WIP Support for filepath in requires (https://github.com/nim-lang/nimble/pull/1452)
      • WIP Support for filepath
      • Dont install filePath packages
      • Adds tfilepathrequires suite. Fixes minor issues
      • Disables unrelated failing test. Will be fixed in a following PR
      • fileUrl packages takes precedence over published packages, even if the version dont meet the requirements
      • Autoenable patch feature for toplevel packages
      • Adds various tests
      • Removes debug line
      • Only allow filepath requires inside the patch feature when in a nimble file
      • adds alias patchtofeatures “patch”:
  • vac:nim:ift:2025q3-nim-core-libs:add-cbor-support-to-json