IFT-TS 2026/09/07
top highlights
- DST team completed a Logos Delivery packet-loss study and observed a crash under load at 1,000 nodes; a fix landed upstream that day.
- NIM team merged the Nim book into the development branch and presented it at the Townhall.
- INFRA team upgraded the Rocketpool oDAO node to release 1.22.1.
- SEC team reported five high-severity and six medium-severity LEZ audit findings.
team highlights
- BI: Prepared the automatic Keycard report.
- BI: Updated log extraction for Logos Blockchain monitoring.
- BI: Fixed Status Engagement Bot bugs and worked on release preparation.
- DST: Rebuilt nim-libp2p regression nodes with reproducible builds and updated lockfiles.
- DST: Identified a potential anoncomms service-discovery issue in runs with nim-libp2p v2.3.0.
- DST: Investigated a persistent Blend bug apparently related to the number of proposed blocks.
- DST: Confirmed matching CPU configurations and tested governor changes for slow-proof workloads.
- DST: Completed a Logos Delivery packet-loss study; the supplied build crashed under load at 1,000 nodes.
- DST: Added packet-loss controls and updated log parsing for message-delivery experiments.
- INFRA: Upgraded the Rocketpool oDAO node to release 1.22.1.
- INFRA: Migrated four Lido hosts to the TYO2 data center and deployed new validator keys.
- INFRA: Deployed Nimbus execution-layer infrastructure on Sepolia for ERE file generation.
- INFRA: Deployed NBS Nim to CI hosts to reduce Status build times.
- INFRA: Worked on reinstalling compromised macOS CI hosts and developed their Wazuh monitoring role.
- INFRA: Completed Elasticsearch security and TLS transport configuration.
- NIM: Merged Nimble lockfile URL fixes and PubGrub explanations for failed dependency resolution.
- NIM: Added Chronos Win32 CI and fixed calling-convention errors on Windows i386.
- NIM: Enabled garbage-collected task results in nim-taskpools.
- NIM: Fixed a Chronos hang when waiting for child processes on Windows.
- NIM: Merged the Nim book into the development branch and presented it at the Townhall.
- P2P: Advanced nim-libp2p reliability fixes for dialing, rendezvous, message handling, and stream setup.
- P2P: Integrated Delivery-based RLN coordination into Mix-RLN components.
- P2P: Standardized nim-libp2p log fields and added a severity policy.
- P2P: Merged dialing backoffs and overlapped ranked dialing with name resolution.
- P2P: Reduced nim-ffi CI from 104 jobs to 29 and advanced generated Logos Storage bindings.
- QA: Expanded Logos Basecamp MCP tests for workspace, sidebar, app manager, and inspector behavior.
- QA: Advanced Logos Execution Zone sequencer-registration scenarios and test prerequisites.
- QA: Merged AutoTLS integration coverage and ACME request fixes.
- QA: Expanded Status Desktop Keycard coverage and fixed signing compatibility with applet 3.2.
- QA: Ran Status Mobile backend peers in containers on CI and resolved long-press test failures.
- QA: Traced a 160 MB status-go memory increase to a vendor bump.
- SEC: Closed the DPRK supply-chain incident and contained a macOS CI mining compromise.
- SEC: Surfaced 16 new audit findings, including nine rated high severity; triage remains outstanding.
- SEC: Approved the merged status-go protobuf update and downstream Status app changes.
- SEC: Reported five high-severity and six medium-severity Logos Execution Zone audit findings.
- SEC: Scoped the external Logos Blockchain audit and finalized the internal audit guideline.
ift-ts:bi:
ift-ts:bi:keycard:2026q3-keycard-social-media-analysis- Prepared the automatic Keycard report.
ift-ts:bi:logos:2026q3-logos-testnet-monitoring:blockchain- Updated log extraction for Blockchain monitoring.
ift-ts:bi:logos:2026q3-logos-movement-crm- Updated the automatic Logos report.
ift-ts:bi:status:2026q3-status-scam-detection- Fixed Status Engagement Bot bugs and worked on release preparation.
other notes- Researched bridging the Status Discourse instance with a Community.
ift-ts:dst:
other notes- Coordinated tasks with Alan and met with a Status team member.
- OOO: 2 CC days.
ift-ts:dst:ift:2026q3-libp2p-evaluation:regression-testing- Reworked nim-libp2p regression nodes for permanent and reproducible builds
- Investigated Nimble lockfile problems and identified a locked-package URL bug
- Recompiled regression nodes from v2 to v2.3
- Improved structure and dockerfile
- Split code into 2 nodes, bootstrap and node
- Created a readme with tag names and info
- Github PR: Fix regression build #54 (merged)
ift-ts:dst:logos:2026q3-anoncomms-evaluation:service-discovery-scenarios- Discovered potential new issue in new runs with v2.3.0
ift-ts:dst:logos:2026q3-blockchain-evaluation:blendnet-benchmarking- Investigated blend node issues with Gusto. A persistent bug is observed seemingly related to the number of proposed blocks.
- Agreed together to run an isolated network to investigate the bug
ift-ts:dst:ift:2026q3-dst-tooling:slow-proof-analysis- Reached 3GHZ on node-01 with CPU stress test. This confirms all the nodes have the same CPU/BIOS config.
- Hypothesis is that node-02 workloads are better distributed among physical cpus, reason why it reaches 3GHz most of the time.
- Set kubelet policy to full-pcpus on node-04 to allocate full physical cpus to workloads, but didn’t work because SMT is not enabled in the BIOS
- Set CPU governor to performance on node-04 and observed overall higher frequency around 2.5 GHZ
ift-ts:dst:logos:2026q3-messaging-evaluation:logos-delivery-node- Ran the message reliability study with packet loss injected at three levels.
- Wrote message delivery performance report under packet loss.
- The node build we were given crashes under load at 1000 nodes. The fix landed upstream the same day.
- Started the pre-regression work for Logos messaging. Read the new documentation and worked out how to run our own isolated fleet without the nodes reaching out to the public network.
ift-ts:dst:ift:2026q3-dst-tooling:general-tooling- The message delivery experiment can now inject packet loss, and exposes the settling time, the dwell after publishing, the readiness gate and the shard count as run options.
- Updated the log parser to match the log lines the current node writes.
ift-ts:infra:
develp- Fixed Dune query for validator exits by adjusting engine
- Submitted new compounding validator key for Develp staking
- Rocketpool oDAO node upgrade to
1.22.1release
lido- Migrated another 4 hosts from
tyo1totyo2data center - Deployed new Lido CMv2 keys to new
tyo2master hosts - Converted master hosts to cheaper Teraswitch servers
- Prepared Lido services migration to master nodes
- Improvements to bonded network interfaces on
tyo2hosts
- Migrated another 4 hosts from
staking- Timing games Commit-boost configuration testing prepared
- Nimbus beacon node patched to allow for timing games
nimbus- Setup of data import necessary for Nimbus-eth1 ERE files generation
- Deployed
nimbus-eth1EL to Sepolia testnet for ERE files generation - Multiple build issues resolved for
nimbus-eth1client
logos- Processed organization validation for DigiCert Logos signing cert
- Research into Logos storage setup for Logos package manager
- Research into
logos.devfleet automatic deployments
waku- Removed more Elastic IPs from Waku fleets to reduce costs
status- Status Nix PR for Linux builds finally ready to merge
- Deployed NBS Nim to CI hosts to reduce Status build times
- Deployed new protobuf needed by
status-gobuilds - Debugging Keycard build issues with Linux Docker image
- Work on Status Bot engagement feature requested by Volo
- Work on Status Bot and Discourse post bridging
- Migrated DO Status
prodstore DB to smaller host - Addition of LiFi API keys for swaps in Jenkins CI
proxy- Cleanup of Status Network configuration from proxy service
other notes- Decommissioned two unused
wakudevhosts after consulting devs
- Decommissioned two unused
sites- Permission role adjustments for Logos stewards website
- Acid Info admin panel environment adjustments
office- Research into expiring Matrix MAS auth sessions based on Keycloak status
ci- Addressing CVE-2026-65400 hack on Jenkins CI slave hosts, postmortem
- Reinstallation of compromised Jenkins MacOS CI slave hosts
- Development of Wazuh monitoring Ansible role for MacOS hosts
- Deployed Github Actions metrics exporter for new Logos enterprise
- Off-boarding for multiple former contributors and access audit
- Debugged CI GitHub pull timeouts caused by new GH rate limiting
- Added missing
keycard-techorganization to Gitea mirroring - Re-bootstrapping Windows hosts to provide more E2E runners
- Fixed broken Gitea API health check broken by upgrade and auth change
- Fixed Nix installation by locking
nixos-26.05channel
hq- Completed enabling of security and TLS transport for ElasticSearch
- Fixed broken Logstash aggregation due to missing Nimbus logs cleanup
ift-ts:nim:
ift-ts:nim:ift:2026q3-nimble:nimble-1.0.0- fix #1837: honor locked package URLs during installation (nimble#1838)
- Bridges PubGrub into nimble for error messages. When SAT fails PubGrub kicks in and explains the error. (nimble#1834)
- Updates copyright
- Helped: Fix dependency feature lists in declarative parser and SAT resolution (fixes #1832) nimble#1836
- Reviewed pull requests.
ift-ts:nim:ift:2026q3-nimble:chronos-http- Adds Win32 CI with test bug (nim-chronos#728)
- Adds failing test
- Fix RtlNtStatusToDosError() signature corrupting the stack on Windows i386
- Fix wcschr calling convention on Windows i386
- Applied requested changes to reduce per-request HTTP allocations for buffer initialization, header keys, and empty tables in nim-chronos#698.
- Adds Win32 CI with test bug (nim-chronos#728)
ift-ts:nim:ift:2026q3-nim-core-libs:thread-pool-library- status-im/nim-taskpools#67 Fix #12; Allow GC type task result
ift-ts:nim:ift:2026q3-nim-core-libs:maintenance- status-im/nim-json-rpc#296 Stdio transport
- status-im/nim-chronos#729
asyncproc: fix hang waiting for a child process to exit (Windows) - status-im/nimbus-eth1#4691 Bump nim-json-rpc to
d783a9e - status-im/nimbus-eth2#8950 Bump nim-json-rpc to
d783a9e - status-im/nim-json-rpc#297 Add missing malformed framing checks to socket transport
- status-im/nim-blscurve#192 Batch verifier explicit flowvar move
- status-im/nimbus-eth2#8973 Test taskpools move-only flowvar
- status-im/nimbus-eth1#4714 Test taskpools move-only flowvar
- Reviewed the
mawaitPR in Chronos
ift-ts:nim:ift:2026q3-nim-core-libs:docs-improvement- Docgen: Add :title: and :collapsible: options to admonitions
nim bookmerged to Nim#devel and presented at the Townhall meeting- Presto documentation
- Fix doc examples in Chronos
ift-ts:p2p:
ift-ts:p2p:ift:2026q3-nimlibp2p-maintenance- vacp2p/nim-libp2p#3035 fix(mplex): refine stream setup buffering
- vacp2p/nim-libp2p#3034 fix(crypto): improve public key parsing
- vacp2p/nim-libp2p#3007 fix(dialer): dial dnsaddr results without waiting for siblings
- vacp2p/nim-libp2p#3022 fix(dialer): preserve backoff through identify
- vacp2p/nim-lsquic#166 fix(connection): use graceful close with LSQUIC v4.9.4
- vacp2p/nim-libp2p#3020 chore(tests): use switch builder
- vacp2p/nim-libp2p#3021 chore(tests): standardize multiaddress creation
- vacp2p/nim-libp2p#3026 chore(wstransport): bump websock to 0.4.1
- vacp2p/nim-libp2p#3025 fix(rendezvous): discover no longer allocates one int per registration
- vacp2p/nim-libp2p#3037 fix(addr-mgr): count the peers which observe an address, not the reports
- vacp2p/nim-libp2p#3036 fix(floodsub): limit the entry count of the seen cache
- vacp2p/nim-libp2p#3027 fix(utils): make the offsettedseq apply and flushIf procs compile
- vacp2p/nim-libp2p#3029 fix(rendezvous): count the registrations of a peer in a table
- vacp2p/nim-libp2p#3028 fix(rendezvous): cap the namespace table and prune empty namespaces
- vacp2p/nim-libp2p#3033 fix(service-disco): cache the advertisement bytes so rotations keep the seqNo
- vacp2p/nim-libp2p#3024 chore: native hkdf and autotls pem encoding
- vacp2p/nim-libp2p#3023 fix(rendezvous): release expired registrations on the deletion heartbeat
- vacp2p/nim-libp2p#3014 chore(perf): improve ChaChaPoly and remove byte-at-a-time frame copies
- vacp2p/nim-libp2p#3017 fix(floodsub): punish nodes sending malformed messages
- vacp2p/nim-libp2p#3016 fix(gossipsub): cancel a queued relay when the peer already has the message
- vacp2p/nim-libp2p#3006 fix(cbind): guard service discovery entry points on a started switch
- nim-lang/Nim#26120 fix SIGSEGV on refc: genGenericAsgn must deep-copy from static data
- libp2p/specs#738 Add Address Manager spec
- libp2p/specs#735 gossipsub: downscore peers on protocol violations
- ipfs/specs#537 feat(kad): provider record spillover
- vacp2p/nim-libp2p#2071 chore: run cbind examples and a test_all job under AddressSanitizer
ift-ts:p2p:ift:2026q3-anoncomms-unified-networking- logos-messaging/logos-delivery#4181 feat(mix): allow spam protection injection
- logos-co/mix-rln-spam-protection-plugin#22 chore(deps): align Mix-RLN with logos-delivery
- logos-co/logos-libp2p-mix-rln#1 feat: use Delivery for RLN coordination
- logos-co/nim-libp2p-mix-rln-ffi#1 feat(ffi): use Delivery as Mix-RLN node
- logos-co/nim-libp2p-mix#58 feat(mix): expose cover scheduler and SURB replies
- logos-messaging/logos-delivery#4185 test(mix): cover Delivery Mix-RLN coordination
- logos-messaging/logos-delivery#4182 feat(mix): integrate Mix-RLN with Delivery
other notes- yorick-bot/review-agent#1 working on an automated agent for PR reviews
ift-ts:p2p:ift:2026q3-nimlibp2p-log-noise-reduction- vacp2p/nim-libp2p#3038 chore(logs): standardize log fields
- vacp2p/nim-libp2p#3032 chore(logs): add log-severity policy
ift-ts:p2p:ift:2026q3-nimlibp2p-dial-ranking-backoffs- vacp2p/nim-libp2p#3011 feat(dialer): back off the addresses and the peers that keep failing
- vacp2p/nim-libp2p#3001 feat(dialer): overlap ranked dialing with name resolution
ift-ts:p2p:ift:2026q3-logos-messaging-nim-ffi-integration:integration-support- logos-messaging/nim-ffi#163 chore(ci): collapse the duplicated job matrix (104 jobs -> 29)
- logos-messaging/nim-ffi#161 chore(ffi): render the RET codes from one source, delete the vendored logging module
- logos-co/logos-storage-module#83 feat: build against the nim-ffi generated libstorage bindings
- logos-storage/logos-storage-nim#1519 feat(library): generate the C bindings with nim-ffi
ift-ts:qa:
ift-ts:qa:logos:2026q3-logos-basecamp:mcp-tests- Test/MCP UI workspace opening an app replaces the welcome page with a dock
- Test/MCP UI workspace closing the last dock brings the welcome page back
- Test/MCP UI workspace re-clicking an open app does not create a second dock
- Test/MCP UI sidebar build label matches backend.isPortableBuild
- Test/MCP UI sidebar active tile follows currentVisibleApp
- Fix/MCP UI app manager automation object names
- Fix/MCP UI app manager empty search feedback
- Test/MCP UI app manager search narrows the grid
- Test/MCP UI app manager search with no match hides every section
- Test/MCP UI app manager search tolerates special characters
- Test/MCP UI app manager category selection filters the grid
- Test/MCP UI app manager reload settles without losing apps
- Test/MCP UI app manager context menu matches install state
- Test/MCP UI app manager Details opens the Add Application dialog
- Test/MCP UI app manager dialog wording for an installed app
- Test/MCP UI dashboard shows version, build type and commits
- Test/MCP UI apps inspector search filters the table
ift-ts:qa:logos:2026q3-lez-sequencing:cucumber-testsift-ts:qa:logos:2026q3-lez-fuzz-testing:framework-maintenanceift-ts:qa:ift:2026q3-nim-libp2p-testing:autotls- vacp2p/nim-libp2p#2997 fix(autotls): read ACME resources with POST-as-GET and CSR padding
- vacp2p/nim-libp2p#2999 test(autotls): full integration flow in docker
- vacp2p/nim-libp2p#3008 test(autotls): move integration coverage into the docker suite
- vacp2p/nim-libp2p#3010 fix(autotls): raise an http error when a request url cannot be resolved
- vacp2p/nim-libp2p#3012 chore(autotls): rename dnsServerURL to domainSuffix
- vacp2p/nim-libp2p#3013 test(autotls): reuse stub helpers and improve assertions
ift-ts:qa:ift:2026q3-nim-libp2p-testing:maintenance- vacp2p/nim-libp2p#3018 autorelay: stop leaves its reservation loops running
- vacp2p/nim-libp2p#3019 test(autorelay): stop leaves its reservation loops running - reproduction
ift-ts:qa:logos:2026q3-messaging-testing:interop-migration- logos-messaging/logos-delivery#4198 test(e2e): add REST e2e workflow and port the first smoke tests (migration 1)
ift-ts:qa:status:2026q3-status-qa-desktop:release-testing- status-im/status-app#22315 SIGSEGV: Illegal storage access when opening Messages after local pairing with message restore
- status-im/status-app#22162 fix: make Keycard work on Linux without host pcsd
ift-ts:qa:status:2026q3-status-qa-desktop:e2e-keycard-mock- status-im/status-app#22294 tests(@e2e): sign community join request with keycard
- status-im/status-app#22306 chore: bump status-keycard-qt version
- status-im/status-app#22297 chore: bump status keycard qt version
- status-im/status-keycard-qt#36 chore: bump keycard-qt
- status-im/keycard-qt#11 fix: send SIGN P2=ECDSA so applet 3.2 can sign
- status-im/status-app#22295 APDU error: SW=6a81 when entering PIN on Join community -> Share addresses request
- status-im/status-keycard-qt#35 fix: stop flooding DEBUG logs on repeated keycard events
- status-im/status-app#22160 Keycard onboarding fails with PC/SC 0x8010001d (no “plug in reader” screen) on Linux
ift-ts:qa:status:2026q3-status-qa-desktop:maintenance- status-im/status-app#22193 chore(@e2e): fix for port range and image dialog
- status-im/status-app#22312 chore(@e2e): remove custom derivation path account test
- status-im/status-app#22226 fix(@e2e): wait for wallet balance before Send; fix SignSendAdaptor NaN warnings
- status-im/status-app#22223 Balance is not showing up in Send modal
- status-im/status-app#22185 chore(@e2e): fix test for token details review
ift-ts:qa:status:2026q3-status-qa-desktop:new-tests- status-im/status-app#22197 tests(@qml): add QML tests for onboarding scenarios + pinned messages modal
- status-im/status-app#22196 Replace onboarding scenarios with QML equivalents
ift-ts:qa:status:2026q3-status-qa-desktop:windows-performance-tests- status-im/status-app-benchmarks#30 desktop: add release baseline to release pages
ift-ts:qa:status:2026q3-status-qa-mobile:backend-peer-gate- Splitting the backend peer into a stack
- Container mode proved on CI runners: two peers deliver, five run at
-n=5. - Long-press red solved — the suite scrolled its own target off screen; three xfails lifted.
ift-ts:qa:status:2026q3-status-qa-mobile:gate-health- status-im/status-app#22233 fix(e2e_appium): expand the message context menu before asserting on it
- status-im/status-app#22228 test(e2e_appium): cherry-pick the gate fixes from master
- status-im/status-app#22151 fix(e2e_appium): dismiss overlays from the top down
- status-im/status-app#22155 fix(e2e_appium): wait for the profile sheet before tapping Settings
- status-im/status-app#22154 fix(e2e_appium): pick the peer’s chat row by identity, not position
- status-im/status-app#22157 fix(e2e_appium): wait longer to find the emoji picker
- status-im/status-app#22148 fix(e2e_appium): use PROFILE_NAV_BUTTON in nav recovery
- status-im/status-app#21847 test(e2e_appium): repair message locators for ChatText
- Nightly context-menu cluster closed; the one remaining fail attributed to a test bug.
ift-ts:qa:status:2026q3-status-qa-mobile:keycard-ui- status-im/status-go#7758 test(accounts): cover cold-wallet migration and keystore guards
- status-im/status-go#7759 test(protocol): cover cold-wallet keypair sync edge paths
- status-im/status-go#7760 test(backend): cover keycard login, convert, and xpub backfill
- status-im/status-go#7761 test(pairing): cover keycard payload and keystore re-pair guards
- status-im/status-go#7804 test(backend): characterize keycard defects pending a product decision
ift-ts:qa:status:2026q3-status-qa-mobile:performance- Bracketed the +160 MB status-go memory step to a vendor bump
ift-ts:qa:status:2026q3-status-qa-mobile:maintenance- status-im/status-app#22307 test(e2e_appium): rename the utils package to support
- status-im/status-app#22150 test(e2e_appium): rename safe_click to click, add contract lint
- Sixth #7393 xfail traced to a contacts-row accessibility gap; fix drafted.
ift-ts:sec:
ift-ts:sec:ift:2026q3-ir-vulma:security-incidents- DPRK supply-chain IR (declared 2026-08-10) closed — final
radikenorphan-commit sweep, endpoint scan, and visitor risk assessment done; no longer tracked - New IR 2026-09-04: macOS CI host macm2-01.ih-eu-mda1.ci.release compromised via VNC 5900 left open publicly — commodity mining campaign (
auto.c3pool.org:443,com.apple.airportd/.config/sysmondmasquerade; IOCs confirmed with 0xM3R) - Forensics with jakubgs found matching Nix, Brew, and Qt 6.11.0 checksums against a clean host; reported no compromised CI components.
- Root cause fixed: VNC 5900 VPN-only (92e9129), MTR Exporter 8002 closed (bca5921)
- HackenProof triage — two valid Status reports: Status-476 (vote-weight unit mismatch: whole-token SNT vs raw base units), Status-479 (
finalizeVotingRoomsnapshots at executing block — flash-loan reuse across voters)
- DPRK supply-chain IR (declared 2026-08-10) closed — final
ift-ts:sec:ift:2026q3-ir-vulma:vulnerability-management- Continued triage on Dependabot, code-scanning, and secret-scanning queues
- Internal-audit backlog — #120, #121, #122, #123, #124, #125, #126, #136, #137, #138, #139, #140, #141, #142, and the LEZ line with joocho (#112, #114, #115, #129, #130); findings remain open.
- GitHub crawl surfaced 16 new audit findings (#143, #144, #145, #146, #147, #148, #149, #150, #151, #152, #153, #154, #155, #156, #157, #158), 9 rated High across logos-execution-zone, logos-blockchain, and logos-delivery; triage remains outstanding.
ift-ts:sec:ift:2026q3-ssdlc-security-keycard-vulnerability-reviews- Keycard workstream dropped — no longer tracked; open items (keycard-shell#220, audit findings #95 / #93) handed back to the Keycard team
ift-ts:sec:ift:2026q3-tr-wallet-security:audit-treasury-multisig- Recreated master-wallet-index 2026-08-30 — repo reachable again; issue #1 Missing Required License Files open
- Resumed wallet reconciliation; signatory removals remain outstanding.
ift-ts:sec:ift:2026q3-cicd-security-review:code-review-activities- Approved, all merged: status-go protobuf v36 stack (#7738, #7739, #7764, #7778) + status-app downstream (#22064, #22172)
- Security-relevant merges noted: status-go #7800, #7776, #7779, #7780, #7773; status-app #22258, #22291, #22234
- Reviewed carry-overs: status-go #7607, #7580, #7475, #7461, #7452; status-app #21421, #20971; all remain open.
ift-ts:sec:ift:2026q3-threat-intelligence:supply-chain-attack-research- Continued npm / OAuth / CI-tool supply-chain watch; folded macOS CI incident IOCs (
auto.c3pool.org:443,com.apple.airportd/.config/sysmondmasquerade) into detection notes — commodity campaign, not targeted
- Continued npm / OAuth / CI-tool supply-chain watch; folded macOS CI incident IOCs (
other notes- Offboarding: access review and revocation for new leavers (PATs, SSH keys, OAuth, Notion workspace)
- Reviewed pending PAT requests; iterated on security checklist and Copilot policy
ift-ts:sec:ift:2026q3-internal-audit:logos-execution-zone-security-reviewift-ts:sec:ift:2026q3-internal-audit:logos-blockchain-security-review- Scoped external audit
- Finalized the internal audit guideline
- Reported one finding: #155