Skip to content

dgb: AutoRatchet 95/50/2x threshold seam (slice #2, SAFE-ADDITIVE, fenced) - #108

Merged
frstrtr merged 1 commit into
dgb/pool-pillars-portfrom
dgb/auto-ratchet-seam
Jun 16, 2026
Merged

dgb: AutoRatchet 95/50/2x threshold seam (slice #2, SAFE-ADDITIVE, fenced)#108
frstrtr merged 1 commit into
dgb/pool-pillars-portfrom
dgb/auto-ratchet-seam

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 16, 2026

Copy link
Copy Markdown
Owner

DGB pillar 1 — slice #2: AutoRatchet threshold seam (SAFE-ADDITIVE, single-coin)

Ports the ltc::AutoRatchet threshold surface into dgb::AutoRatchet as a structural seam only. No transition state machine is authored in this slice.

Scope

  • Single file: src/impl/dgb/auto_ratchet.hpp (+49/-7). src/impl/dgb/ only — no ltc/, doge/, btc/, or shared-base touch.

What it carries (byte-for-byte from ltc/auto_ratchet.hpp == p2pool-merged-v36 data.py AutoRatchet)

  • ACTIVATION_THRESHOLD = 95 (VOTING -> ACTIVATED)
  • DEACTIVATION_THRESHOLD = 50 (ACTIVATED -> VOTING)
  • CONFIRMATION_MULTIPLIER = 2 (confirm after 2x CHAIN_LENGTH)
  • SWITCH_THRESHOLD = 60 (tail-guard floor)
  • RatchetState enum + ratchet_state_str

What stays fenced (NOT in this slice)

  • The transition state machine (get_share_version / load / save) remains a TODO behind the existing F10 version-acceptance gate AND the post-soak-freeze fence (per share.hpp conformance note).
  • No share_check version-acceptance path is authored. Do not read the fenced TODO as live transition logic.

Compat

p2pool-merged-v36 compatibility preserved — DGB-Scrypt shares LTC ratchet math, so this is a namespace change, not a re-derivation.

Base: dgb/pool-pillars-port (stacked; auto_ratchet.hpp base exists only on that branch). Operator merges.

Port ltc::AutoRatchet threshold surface into dgb::AutoRatchet without
authoring the transition state machine. Carries, byte-for-byte from
ltc/auto_ratchet.hpp (== p2pool-merged-v36 data.py AutoRatchet):
  ACTIVATION_THRESHOLD    = 95   (VOTING -> ACTIVATED)
  DEACTIVATION_THRESHOLD  = 50   (ACTIVATED -> VOTING)
  CONFIRMATION_MULTIPLIER = 2    (confirm after 2x CHAIN_LENGTH)
  SWITCH_THRESHOLD        = 60   (tail-guard floor)
plus RatchetState enum + ratchet_state_str.

The state machine (get_share_version / load / save) stays a fenced TODO
behind the EXISTING F10 version-acceptance gate AND the post-soak-freeze
fence (share.hpp conformance note): the share_check version-acceptance
path is NOT authored here. DGB-Scrypt shares LTC ratchet math, so the
deferred port is a namespace change, not a re-derivation. Compat with
p2pool-merged-v36 preserved.
@frstrtr
frstrtr merged commit d61ffe8 into dgb/pool-pillars-port Jun 16, 2026
13 checks passed
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