Repository navigation
feat: responsive focal-crop, churn winback, ve-locking, and gauge voting - #563
Merged
Darkvader-ship-it merged 4 commits intoOct 17, 2026
Conversation
|
@privexlabs Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Resolves four architecture and integration spike tracks (#551, #552, #553, #554) behind dedicated feature flags (
phase-142,phase-143,phase-144,phase-145) following the repository's modular rolling-delivery convention:phase-142.phase-143.phase-144.phase-145.Changes
lib/feature-flags.ts: registered flagsphase-142,phase-143,phase-144, andphase-145.lib/security-counters.ts: added closed-cardinality observability counters for variants, crops, winback dispatches, ve-locks, and gauge votes.lib/sqlite-db.ts: addedve_locks,ve_fee_distribution,gauge_votes, andgauge_epoch_aggregatestables with indexed lookups.lib/server-data-paths.ts: registeredwinbackExperimentssidecar path.lib/focal-crop.ts: focal point normalization, aspect crop rectangle math, and artifact metadata variant generation.lib/churn-winback.ts: wallet dormancy classifier, cohort assignment, fatigue cooldown checks, and winback campaign evaluator.lib/ve-phaselq.ts: ve-weight calculation, lock creation/decay tracking, fee distribution, and pro-rata claim settlement.lib/gauge-voting.ts: epoch gauge voting, aggregate ve-weight tallies, and quest emission budget allocation.app/api/ipfs/[...cid]/route.ts: added support for focal-crop variant transform query parameters.components/ipfs-display-img.tsx: addedvariantandfocalPointsupport for bandwidth-efficient responsive rendering.lib/forge/ipfs-publisher.ts: enriched forge metadata with artifact variants when publishing.app/api/notifications/winback/route.ts: GET and POST endpoints for winback campaign evaluation and dispatch.app/api/governance/ve-lock/route.ts: governance endpoint for locking, claimable fee calculations, and fee claims.app/api/governance/gauge/route.ts: gauge voting and epoch emission distribution endpoint.docs/spikes/688-thumbnail-crop-generation-findings.md: findings and architecture report for spike 688.docs/spikes/689-dormant-winback-experiments-findings.md: findings and architecture report for spike 689.docs/spikes/690-ve-phaselq-locking-fee-share-findings.md: findings and architecture report for spike 690.docs/spikes/691-gauge-voting-quest-emissions-findings.md: findings and architecture report for spike 691.PROJECT_ARCHITECTURE.md: updated §10 Feature Flags table forphase-142throughphase-145.docs/TECHNICAL.md: updated flag-gated extensions table.tests/focal-crop.test.ts: test suite for focal cropping, clamping, and URL transformation.tests/churn-winback.test.ts: test suite for dormancy tiers, deterministic cohorts, fatigue caps, and hook selection.tests/ve-phaselq-lock.test.ts: test suite for duration decay, lock extension, fee distribution, and expiry gating.tests/gauge-voting.test.ts: test suite for ve-weighted voting, 100% cap validation, epoch distribution, and ballot replacement.Issues
Resolves #551
Resolves #552
Resolves #553
Resolves #554
Verification
git status,git diff --stat, and the fullgit diff.cargo buildwas not run.cargo testwas not run.