flwr-nightly 1.26.0.dev20260116__py3-none-any.whl → 1.26.0.dev20260117__py3-none-any.whl
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.
- flwr/supercore/state/schema/README.md +86 -0
- flwr/supercore/state/schema/corestate_tables.py +1 -0
- flwr/supercore/state/schema/linkstate_tables.py +152 -0
- {flwr_nightly-1.26.0.dev20260116.dist-info → flwr_nightly-1.26.0.dev20260117.dist-info}/METADATA +1 -1
- {flwr_nightly-1.26.0.dev20260116.dist-info → flwr_nightly-1.26.0.dev20260117.dist-info}/RECORD +7 -6
- {flwr_nightly-1.26.0.dev20260116.dist-info → flwr_nightly-1.26.0.dev20260117.dist-info}/WHEEL +0 -0
- {flwr_nightly-1.26.0.dev20260116.dist-info → flwr_nightly-1.26.0.dev20260117.dist-info}/entry_points.txt +0 -0
|
@@ -9,6 +9,62 @@
|
|
|
9
9
|
layout: elk
|
|
10
10
|
---
|
|
11
11
|
erDiagram
|
|
12
|
+
context {
|
|
13
|
+
INTEGER run_id FK "nullable"
|
|
14
|
+
BLOB context "nullable"
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
logs {
|
|
18
|
+
INTEGER run_id FK "nullable"
|
|
19
|
+
VARCHAR log "nullable"
|
|
20
|
+
INTEGER node_id "nullable"
|
|
21
|
+
FLOAT timestamp "nullable"
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
message_ins {
|
|
25
|
+
INTEGER run_id FK "nullable"
|
|
26
|
+
BLOB content "nullable"
|
|
27
|
+
FLOAT created_at "nullable"
|
|
28
|
+
VARCHAR delivered_at "nullable"
|
|
29
|
+
INTEGER dst_node_id "nullable"
|
|
30
|
+
BLOB error "nullable"
|
|
31
|
+
VARCHAR group_id "nullable"
|
|
32
|
+
VARCHAR message_id UK "nullable"
|
|
33
|
+
VARCHAR message_type "nullable"
|
|
34
|
+
VARCHAR reply_to_message_id "nullable"
|
|
35
|
+
INTEGER src_node_id "nullable"
|
|
36
|
+
FLOAT ttl "nullable"
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
message_res {
|
|
40
|
+
INTEGER run_id FK "nullable"
|
|
41
|
+
BLOB content "nullable"
|
|
42
|
+
FLOAT created_at "nullable"
|
|
43
|
+
VARCHAR delivered_at "nullable"
|
|
44
|
+
INTEGER dst_node_id "nullable"
|
|
45
|
+
BLOB error "nullable"
|
|
46
|
+
VARCHAR group_id "nullable"
|
|
47
|
+
VARCHAR message_id UK "nullable"
|
|
48
|
+
VARCHAR message_type "nullable"
|
|
49
|
+
VARCHAR reply_to_message_id "nullable"
|
|
50
|
+
INTEGER src_node_id "nullable"
|
|
51
|
+
FLOAT ttl "nullable"
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
node {
|
|
55
|
+
FLOAT heartbeat_interval "nullable"
|
|
56
|
+
VARCHAR last_activated_at "nullable"
|
|
57
|
+
VARCHAR last_deactivated_at "nullable"
|
|
58
|
+
INTEGER node_id UK "nullable"
|
|
59
|
+
TIMESTAMP online_until "nullable"
|
|
60
|
+
VARCHAR owner_aid "nullable"
|
|
61
|
+
VARCHAR owner_name "nullable"
|
|
62
|
+
BLOB public_key UK "nullable"
|
|
63
|
+
VARCHAR registered_at "nullable"
|
|
64
|
+
VARCHAR status "nullable"
|
|
65
|
+
VARCHAR unregistered_at "nullable"
|
|
66
|
+
}
|
|
67
|
+
|
|
12
68
|
object_children {
|
|
13
69
|
VARCHAR child_id PK,FK
|
|
14
70
|
VARCHAR parent_id PK,FK
|
|
@@ -21,6 +77,29 @@ erDiagram
|
|
|
21
77
|
INTEGER ref_count
|
|
22
78
|
}
|
|
23
79
|
|
|
80
|
+
<<<<<<< HEAD
|
|
81
|
+
run {
|
|
82
|
+
INTEGER bytes_recv "nullable"
|
|
83
|
+
INTEGER bytes_sent "nullable"
|
|
84
|
+
FLOAT clientapp_runtime "nullable"
|
|
85
|
+
VARCHAR details "nullable"
|
|
86
|
+
VARCHAR fab_hash "nullable"
|
|
87
|
+
VARCHAR fab_id "nullable"
|
|
88
|
+
VARCHAR fab_version "nullable"
|
|
89
|
+
VARCHAR federation "nullable"
|
|
90
|
+
BLOB federation_options "nullable"
|
|
91
|
+
VARCHAR finished_at "nullable"
|
|
92
|
+
VARCHAR flwr_aid "nullable"
|
|
93
|
+
VARCHAR override_config "nullable"
|
|
94
|
+
VARCHAR pending_at "nullable"
|
|
95
|
+
INTEGER run_id UK "nullable"
|
|
96
|
+
VARCHAR running_at "nullable"
|
|
97
|
+
VARCHAR starting_at "nullable"
|
|
98
|
+
VARCHAR sub_status "nullable"
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
=======
|
|
102
|
+
>>>>>>> main
|
|
24
103
|
run_objects {
|
|
25
104
|
VARCHAR object_id PK,FK
|
|
26
105
|
INTEGER run_id PK
|
|
@@ -32,6 +111,13 @@ erDiagram
|
|
|
32
111
|
VARCHAR token UK
|
|
33
112
|
}
|
|
34
113
|
|
|
114
|
+
<<<<<<< HEAD
|
|
115
|
+
run ||--o| context : run_id
|
|
116
|
+
run ||--o{ logs : run_id
|
|
117
|
+
run ||--o{ message_ins : run_id
|
|
118
|
+
run ||--o{ message_res : run_id
|
|
119
|
+
=======
|
|
120
|
+
>>>>>>> main
|
|
35
121
|
objects ||--o| object_children : parent_id
|
|
36
122
|
objects ||--o| object_children : child_id
|
|
37
123
|
objects ||--o| run_objects : object_id
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# Copyright 2026 Flower Labs GmbH. All Rights Reserved.
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
# ==============================================================================
|
|
15
|
+
"""SQLAlchemy Core Table definitions for LinkState."""
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
from sqlalchemy import (
|
|
19
|
+
TIMESTAMP,
|
|
20
|
+
Column,
|
|
21
|
+
Float,
|
|
22
|
+
ForeignKey,
|
|
23
|
+
Index,
|
|
24
|
+
Integer,
|
|
25
|
+
LargeBinary,
|
|
26
|
+
MetaData,
|
|
27
|
+
String,
|
|
28
|
+
Table,
|
|
29
|
+
UniqueConstraint,
|
|
30
|
+
)
|
|
31
|
+
|
|
32
|
+
linkstate_metadata = MetaData()
|
|
33
|
+
|
|
34
|
+
# ------------------------------------------------------------------------------
|
|
35
|
+
# Table: node
|
|
36
|
+
# ------------------------------------------------------------------------------
|
|
37
|
+
node = Table(
|
|
38
|
+
"node",
|
|
39
|
+
linkstate_metadata,
|
|
40
|
+
Column("node_id", Integer, unique=True),
|
|
41
|
+
Column("owner_aid", String),
|
|
42
|
+
Column("owner_name", String),
|
|
43
|
+
Column("status", String),
|
|
44
|
+
Column("registered_at", String),
|
|
45
|
+
Column("last_activated_at", String, nullable=True),
|
|
46
|
+
Column("last_deactivated_at", String, nullable=True),
|
|
47
|
+
Column("unregistered_at", String, nullable=True),
|
|
48
|
+
Column("online_until", TIMESTAMP, nullable=True),
|
|
49
|
+
Column("heartbeat_interval", Float),
|
|
50
|
+
Column("public_key", LargeBinary, unique=True),
|
|
51
|
+
# Indexes
|
|
52
|
+
# Used in delete_node and get_node_info (security/filtering)
|
|
53
|
+
Index("idx_node_owner_aid", "owner_aid"),
|
|
54
|
+
# Used in get_nodes and activation checks (frequent filtering)
|
|
55
|
+
Index("idx_node_status", "status"),
|
|
56
|
+
# Used in heartbeat checks to efficiently find expired nodes
|
|
57
|
+
Index("idx_online_until", "online_until"),
|
|
58
|
+
)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
# ------------------------------------------------------------------------------
|
|
62
|
+
# Table: run
|
|
63
|
+
# ------------------------------------------------------------------------------
|
|
64
|
+
run = Table(
|
|
65
|
+
"run",
|
|
66
|
+
linkstate_metadata,
|
|
67
|
+
Column("run_id", Integer, unique=True),
|
|
68
|
+
Column("fab_id", String),
|
|
69
|
+
Column("fab_version", String),
|
|
70
|
+
Column("fab_hash", String),
|
|
71
|
+
Column("override_config", String),
|
|
72
|
+
Column("pending_at", String),
|
|
73
|
+
Column("starting_at", String),
|
|
74
|
+
Column("running_at", String),
|
|
75
|
+
Column("finished_at", String),
|
|
76
|
+
Column("sub_status", String),
|
|
77
|
+
Column("details", String),
|
|
78
|
+
Column("federation", String),
|
|
79
|
+
Column("federation_options", LargeBinary),
|
|
80
|
+
Column("flwr_aid", String),
|
|
81
|
+
Column("bytes_sent", Integer, server_default="0"),
|
|
82
|
+
Column("bytes_recv", Integer, server_default="0"),
|
|
83
|
+
Column("clientapp_runtime", Float, server_default="0.0"),
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
# ------------------------------------------------------------------------------
|
|
88
|
+
# Table: logs
|
|
89
|
+
# ------------------------------------------------------------------------------
|
|
90
|
+
logs = Table(
|
|
91
|
+
"logs",
|
|
92
|
+
linkstate_metadata,
|
|
93
|
+
Column("timestamp", Float),
|
|
94
|
+
Column("run_id", Integer, ForeignKey("run.run_id")),
|
|
95
|
+
Column("node_id", Integer),
|
|
96
|
+
Column("log", String),
|
|
97
|
+
# Composite PK
|
|
98
|
+
UniqueConstraint("timestamp", "run_id", "node_id"),
|
|
99
|
+
)
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
# ------------------------------------------------------------------------------
|
|
103
|
+
# Table: context
|
|
104
|
+
# ------------------------------------------------------------------------------
|
|
105
|
+
context = Table(
|
|
106
|
+
"context",
|
|
107
|
+
linkstate_metadata,
|
|
108
|
+
Column("run_id", Integer, ForeignKey("run.run_id"), unique=True),
|
|
109
|
+
Column("context", LargeBinary),
|
|
110
|
+
)
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
# ------------------------------------------------------------------------------
|
|
114
|
+
# Table: message_ins
|
|
115
|
+
# ------------------------------------------------------------------------------
|
|
116
|
+
message_ins = Table(
|
|
117
|
+
"message_ins",
|
|
118
|
+
linkstate_metadata,
|
|
119
|
+
Column("message_id", String, unique=True),
|
|
120
|
+
Column("group_id", String),
|
|
121
|
+
Column("run_id", Integer, ForeignKey("run.run_id")),
|
|
122
|
+
Column("src_node_id", Integer),
|
|
123
|
+
Column("dst_node_id", Integer),
|
|
124
|
+
Column("reply_to_message_id", String),
|
|
125
|
+
Column("created_at", Float),
|
|
126
|
+
Column("delivered_at", String),
|
|
127
|
+
Column("ttl", Float),
|
|
128
|
+
Column("message_type", String),
|
|
129
|
+
Column("content", LargeBinary, nullable=True),
|
|
130
|
+
Column("error", LargeBinary, nullable=True),
|
|
131
|
+
)
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
# ------------------------------------------------------------------------------
|
|
135
|
+
# Table: message_res
|
|
136
|
+
# ------------------------------------------------------------------------------
|
|
137
|
+
message_res = Table(
|
|
138
|
+
"message_res",
|
|
139
|
+
linkstate_metadata,
|
|
140
|
+
Column("message_id", String, unique=True),
|
|
141
|
+
Column("group_id", String),
|
|
142
|
+
Column("run_id", Integer, ForeignKey("run.run_id")),
|
|
143
|
+
Column("src_node_id", Integer),
|
|
144
|
+
Column("dst_node_id", Integer),
|
|
145
|
+
Column("reply_to_message_id", String),
|
|
146
|
+
Column("created_at", Float),
|
|
147
|
+
Column("delivered_at", String),
|
|
148
|
+
Column("ttl", Float),
|
|
149
|
+
Column("message_type", String),
|
|
150
|
+
Column("content", LargeBinary, nullable=True),
|
|
151
|
+
Column("error", LargeBinary, nullable=True),
|
|
152
|
+
)
|
{flwr_nightly-1.26.0.dev20260116.dist-info → flwr_nightly-1.26.0.dev20260117.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: flwr-nightly
|
|
3
|
-
Version: 1.26.0.
|
|
3
|
+
Version: 1.26.0.dev20260117
|
|
4
4
|
Summary: Flower: A Friendly Federated AI Framework
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Keywords: Artificial Intelligence,Federated AI,Federated Analytics,Federated Evaluation,Federated Learning,Flower,Machine Learning
|
{flwr_nightly-1.26.0.dev20260116.dist-info → flwr_nightly-1.26.0.dev20260117.dist-info}/RECORD
RENAMED
|
@@ -354,9 +354,10 @@ flwr/supercore/primitives/asymmetric.py,sha256=1643niHYj3uEbfPd06VuMHwN3tKVwg0uV
|
|
|
354
354
|
flwr/supercore/primitives/asymmetric_ed25519.py,sha256=eIhOTMibQW0FJX4MXdplHdL3HcfCiKuFu2mQ8GQTUz8,5025
|
|
355
355
|
flwr/supercore/sqlite_mixin.py,sha256=ZvtqDLRwCMzyrPsOTpAwJeHSpthrrtvEfUmWZmss6OA,5317
|
|
356
356
|
flwr/supercore/state/__init__.py,sha256=FkKhsNVM4LjlRlOgXTz6twINmw5ohIUKS_OER0BNo_w,724
|
|
357
|
-
flwr/supercore/state/schema/README.md,sha256
|
|
357
|
+
flwr/supercore/state/schema/README.md,sha256=-0QrXDhnv30gEYoIUJo7aLUolY0r_t_nC24yk7B2agM,2892
|
|
358
358
|
flwr/supercore/state/schema/__init__.py,sha256=Egnde6OY01wrpT4PuhL4NGn_NY4jdAH7kf7ktagN4Ws,724
|
|
359
|
-
flwr/supercore/state/schema/corestate_tables.py,sha256=
|
|
359
|
+
flwr/supercore/state/schema/corestate_tables.py,sha256=EEVz9lMCFES8y87nTTmU8X6sH7_FIlGZQ_3rUo0JI6Y,1252
|
|
360
|
+
flwr/supercore/state/schema/linkstate_tables.py,sha256=pJ0y-83TYTBJzkcxd6a9CJiNCk72eW7pB91Awg2nwuk,5186
|
|
360
361
|
flwr/supercore/state/schema/objectstore_tables.py,sha256=cCayjB9J1k9j4mcCQnl6Y-U68c__DMg_DUQxtaZRnpE,2637
|
|
361
362
|
flwr/supercore/superexec/__init__.py,sha256=XKX208hZ6a9gZ4KT9kMqfpCtp_8VGxekzKFfHSu2esQ,707
|
|
362
363
|
flwr/supercore/superexec/plugin/__init__.py,sha256=GNwq8uNdE8RB7ywEFRAvKjLFzgS3YXgz39-HBGsemWw,1035
|
|
@@ -398,7 +399,7 @@ flwr/supernode/servicer/__init__.py,sha256=lucTzre5WPK7G1YLCfaqg3rbFWdNSb7ZTt-ca
|
|
|
398
399
|
flwr/supernode/servicer/clientappio/__init__.py,sha256=7Oy62Y_oijqF7Dxi6tpcUQyOpLc_QpIRZ83NvwmB0Yg,813
|
|
399
400
|
flwr/supernode/servicer/clientappio/clientappio_servicer.py,sha256=rRL4CQ0L78jF_p0ct4-JMGREt6wWRy__wy4czF4f54Y,11639
|
|
400
401
|
flwr/supernode/start_client_internal.py,sha256=BYk69UBQ2gQJaDQxXhccUgfOWrb7ShAstrbcMOCZIIs,26173
|
|
401
|
-
flwr_nightly-1.26.0.
|
|
402
|
-
flwr_nightly-1.26.0.
|
|
403
|
-
flwr_nightly-1.26.0.
|
|
404
|
-
flwr_nightly-1.26.0.
|
|
402
|
+
flwr_nightly-1.26.0.dev20260117.dist-info/METADATA,sha256=IuT7FnpFScBkGOQJlpTXFUh3_kSZyt1HKQ0yZ7gjKds,14398
|
|
403
|
+
flwr_nightly-1.26.0.dev20260117.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
|
404
|
+
flwr_nightly-1.26.0.dev20260117.dist-info/entry_points.txt,sha256=hxHD2ixb_vJFDOlZV-zB4Ao32_BQlL34ftsDh1GXv14,420
|
|
405
|
+
flwr_nightly-1.26.0.dev20260117.dist-info/RECORD,,
|
{flwr_nightly-1.26.0.dev20260116.dist-info → flwr_nightly-1.26.0.dev20260117.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|