confium 0.4.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,43 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Confium::TC::SessionStub — placeholder for the multi-party TC session
4
- # interface. The full Session implementation wraps
5
- # confium_tc::session::Session which drives 3-round FROST/CMP20/GG18
6
- # signing ceremonies.
7
- #
8
- # This stub provides the interface shape so consumers can write code
9
- # against it. The actual session orchestration will be wired through
10
- # magnus in a future PR (TODO.completion/009-multi-party-tc-sessions.md).
11
-
12
- module Confium
13
- module TC
14
- class SessionStub
15
- attr_reader :scheme, :threshold, :party_count, :this_party_idx, :round
16
-
17
- def initialize(scheme:, threshold:, party_count:, this_party_idx:)
18
- @scheme = scheme
19
- @threshold = threshold
20
- @party_count = party_count
21
- @this_party_idx = this_party_idx
22
- @round = 0
23
- @complete = false
24
- end
25
-
26
- def complete?
27
- @complete
28
- end
29
-
30
- # Stub: returns an empty RoundResult. Real implementation will
31
- # call confium_tc::session::Session::round_step.
32
- def round_step(_incoming_messages)
33
- @round += 1
34
- @complete = @round >= 3 # FROST is 3 rounds
35
- { outgoing: [], complete: @complete }
36
- end
37
-
38
- def result
39
- nil # Real implementation returns the signature/secret bytes.
40
- end
41
- end
42
- end
43
- end