Starbeamrainbowlabs
42aa571ae5
client route main: test new client table fetching method
2022-02-25 03:23:21 +00:00
Starbeamrainbowlabs
b1f6a44a6a
SystemQueryClient: Add generator for fetching tables via SSE
2022-02-25 03:22:58 +00:00
Starbeamrainbowlabs
a62c8e6b4e
route /api/table/table_name: Add explicit end event to end of stream
...
....othehrwise the browser will continue attempting to reconnect :-/
2022-02-25 03:22:19 +00:00
Starbeamrainbowlabs
181e3c692d
comment debug logging
2022-02-25 03:21:10 +00:00
Starbeamrainbowlabs
10f36cf3f5
client-side: go!
...
There's still a *ton* of work left, but we're (slowly) getting there
2022-02-24 03:08:21 +00:00
Starbeamrainbowlabs
ecdd52561a
routes: add /api/status
2022-02-24 01:28:03 +00:00
Starbeamrainbowlabs
19ea1ff428
SystemQueryy: Add version & commit properties
2022-02-24 01:27:41 +00:00
Starbeamrainbowlabs
c9ac3ea108
SystemQuery, Agent, PeerServer: Add listening property
2022-02-24 01:27:14 +00:00
Starbeamrainbowlabs
d5a9668e17
Serve static files
2022-02-24 00:39:33 +00:00
Starbeamrainbowlabs
b0fd916eb4
Initial CSS!
2022-02-24 00:39:27 +00:00
Starbeamrainbowlabs
5ee34ce082
Subresource integrity ftw!
2022-02-23 20:45:49 +00:00
Starbeamrainbowlabs
da819a59af
client: add todo comment
2022-02-22 03:06:26 +00:00
Starbeamrainbowlabs
119e44165a
Add initial client-side system
...
Looks like esbuild is shaping up to be just the thing we need, and wow
is it fast!
Still ned to figure out how to get it to not mangle the index.html
filename, but still!
2022-02-22 03:01:39 +00:00
Starbeamrainbowlabs
da33a146e2
Manage duplicate connections more effectively.
...
Thebroadcast function now transparently avoids sending the same message
to the same peer over multiple connections at once.
2022-02-21 21:55:20 +00:00
Starbeamrainbowlabs
e4a381b915
remove debug logging
2022-02-21 03:14:57 +00:00
Starbeamrainbowlabs
de0b5893ac
add comments
2022-02-21 03:14:41 +00:00
Starbeamrainbowlabs
3819f8c61a
It works! Wooo!
...
...almost. We still need to ask ourselves for a table too haha
2022-02-21 03:10:49 +00:00
Starbeamrainbowlabs
f320617117
Implement initial http table_fetch endpoint, but it's not working right
2022-02-12 16:27:50 +00:00
Starbeamrainbowlabs
3f26696056
Connection: Implement sequence numbering system to avoid replay attacks
2022-02-12 01:53:31 +00:00
Starbeamrainbowlabs
a01792d2d5
SystemQuery: Fix crash due to bad import for logging
2022-02-12 01:53:12 +00:00
Starbeamrainbowlabs
837804ec22
Connection: Update comment on replay attack
...
We still have the same problem, but solution do it is much simpler than
we first thought....
2022-02-11 21:23:54 +00:00
Starbeamrainbowlabs
1c5f5fb37a
Start setting things up for the HTTP subsystem, but we've got a ways to go
2022-02-10 21:42:53 +00:00
Starbeamrainbowlabs
1e76226177
Connection: the issue at hand is more complicated than it first appears, as usual
2022-02-09 03:14:26 +00:00
Starbeamrainbowlabs
a736acc1b7
SystemQuery: start filling out fetch_table properly, but it's still unfinished
...
...hey, at least we know what we're doing nwo and have a plan!
2022-02-09 03:06:52 +00:00
Starbeamrainbowlabs
97da517a0e
Connection: oops, we're vulnerable to a replay attack
2022-02-09 03:03:45 +00:00
Starbeamrainbowlabs
3bdbad150c
Fill out ItemQueue implementation
2022-02-09 01:53:29 +00:00
Starbeamrainbowlabs
44d64c09d0
Start unwinding the incoming tables from other peers, but it's gonna be a nasty and complicated business
2022-02-01 03:05:27 +00:00
Starbeamrainbowlabs
15bdcaf047
SystemQuery: layout some stuff, but it's really just scaffolding at the moment.
...
We've not even sure if this is the right way t go about tackling this
problem.
2022-01-31 03:06:34 +00:00
Starbeamrainbowlabs
9ac878f261
InfoBroker: add initial meta table.
...
This particular table contains information about the currently running
systemquery instance.
TODO: Add other interesting things such as # of connected peers etc.
2022-01-31 03:05:12 +00:00
Starbeamrainbowlabs
7e42698317
SystemQuery: Remove unnecessary import
2022-01-31 02:46:37 +00:00
Starbeamrainbowlabs
e63111e64f
Add based query response system, info broker
...
The new InfoBroker class' job is to fetch system information and return
it in a standardised format.
2022-01-30 00:51:28 +00:00
Starbeamrainbowlabs
bee1ffc2de
Remove placeholder RaftSubsystem class - we're not using Raft here
2022-01-30 00:50:40 +00:00
Starbeamrainbowlabs
1270a39808
Add new top-level class: Agent → SystemQuery
...
depth++!
2022-01-23 19:51:23 +00:00
Starbeamrainbowlabs
16f23e6b77
Agent: refactor such that it can be used as a base class
...
In the future, this will make it much easier to refactor into a
library.
The plan is to allow Agent to have subsystems, but only those which are
related to managing peer-to-peer message and not application-specific
stuff. For example, wemight have a MeshRouting subsystem that listens
for messages and conditionally forwards them based on the content of the
message.
2022-01-22 14:22:06 +00:00
Starbeamrainbowlabs
453ecb58bb
tweak logging
2022-01-20 19:28:53 +00:00
Starbeamrainbowlabs
1091f9c3c2
Exchange peerlists
2022-01-09 20:28:58 +00:00
Starbeamrainbowlabs
61b830121e
tweak comment
2022-01-09 17:47:19 +00:00
Starbeamrainbowlabs
a9a7320a1e
Make disconnects graceful
2022-01-09 17:46:43 +00:00
Starbeamrainbowlabs
43fed309dc
Disconnect duplicate connections
2022-01-09 17:37:06 +00:00
Starbeamrainbowlabs
e4c01ae828
Fix PeerServer API bugs
2022-01-09 17:02:26 +00:00
Starbeamrainbowlabs
63b698573f
Debug connectiono system
2022-01-09 16:57:07 +00:00
Starbeamrainbowlabs
53b0d661a9
replace logging system
...
...I'm so picky
2022-01-09 16:30:42 +00:00
Starbeamrainbowlabs
10cdd5be68
Add namespaced logging system, but it isn't actually used yet
2022-01-09 15:07:33 +00:00
Starbeamrainbowlabs
306180d9d8
Another day, another set of bugs
2022-01-09 00:57:06 +00:00
Starbeamrainbowlabs
c5e2d31c47
A bugfixing we are going.... not there just yet though
2022-01-08 23:47:52 +00:00
Starbeamrainbowlabs
bfdb23b935
fix moar bugz
2022-01-08 21:55:18 +00:00
Starbeamrainbowlabs
19f2003fbf
Fix some bugs, write some comments
2022-01-08 21:37:03 +00:00
Starbeamrainbowlabs
046821f0ac
add failed connection attempt logging
2022-01-08 17:29:09 +00:00
Starbeamrainbowlabs
135b2e8d1b
Write a bunch more glue code
...
....but it's all still untested. I'm getting kinda nervous here
2022-01-08 16:59:08 +00:00
Starbeamrainbowlabs
2c56514a88
add comment
2021-12-27 18:34:44 +00:00
Starbeamrainbowlabs
61bf2a27db
Implement stubs to remind us what to do next
...
We need a way to message our peers easily and flexibly.
2021-10-19 02:43:55 +01:00
Starbeamrainbowlabs
cf7451dcf2
Wire up peer handing in PeerServer
...
Going to be a heck fo a stack trace if it crashes though.....
Agent → .... → PeerServer → Peer → Connection → FramedTransport → {
rekey, StreamHelpers }
2021-10-19 02:36:22 +01:00
Starbeamrainbowlabs
32dec3049f
Peer: we can use async/await for the initial handshake
...
events.once(emitter, eventname) makes it so much more concise!
2021-10-09 18:13:34 +01:00
Starbeamrainbowlabs
6f181971e3
Implement simple peer system, but it's untested.
...
Next step is to exchange peers.
2021-10-09 18:00:54 +01:00
Starbeamrainbowlabs
0b82e34273
Connection: Comment events
...
...JSDoc's syntax is *bad* and outdated for events :-/
2021-10-09 16:31:58 +01:00
Starbeamrainbowlabs
7d3161433a
Improve unexpected socket disconnect handling
2021-10-03 12:24:32 +01:00
Starbeamrainbowlabs
b48f50e819
Tidy up logging
2021-10-03 12:14:57 +01:00
Starbeamrainbowlabs
49ca7f0a57
Fix bugs. It works!!!
...
Now we need to tidy up the logging output.....
2021-10-03 02:33:54 +01:00
Starbeamrainbowlabs
0eed69917d
Lotsa debugging, but lotsa debugging to go......
2021-10-03 00:34:55 +01:00
Starbeamrainbowlabs
6e63bb0e66
rekey: upgrade round 2 onwards
2021-10-02 17:38:24 +01:00
Starbeamrainbowlabs
93ff823827
Work on rekeying some more
2021-10-02 17:34:15 +01:00
Starbeamrainbowlabs
bbc5d54158
connection: fix some edge cases
2021-10-02 17:00:24 +01:00
Starbeamrainbowlabs
c43aeb6c3b
Implement FramedTransport to increase efficiency of transmitted encrypted messages
2021-10-02 15:56:34 +01:00
Starbeamrainbowlabs
b3da7fea17
add todo
2021-10-02 03:03:49 +01:00
Starbeamrainbowlabs
ba377874b1
Looks like upgrading to TLS isn't going to work, so we're going to implement it ourselves.
...
....this is a bad idea.
2021-10-02 03:02:49 +01:00
Starbeamrainbowlabs
c0441a1dcd
Bugfix secretbox: Fix buffer conversions
2021-10-02 02:11:26 +01:00
Starbeamrainbowlabs
a2d2b58b38
hey, we have basic starttls! Though it's not wired up yet.
2021-10-02 01:16:34 +01:00
Starbeamrainbowlabs
29799e4631
Update subcommands
2021-10-01 02:48:22 +01:00
Starbeamrainbowlabs
ab1e52417d
Setup scaffolding for Node.js based attempt
2021-10-01 02:44:50 +01:00
Starbeamrainbowlabs
cf3d3355ca
Let's start afresh
2021-09-30 21:31:38 +01:00
Starbeamrainbowlabs
12339aad90
This isn't working..... I think I've bitten off more than I can chew again with Rust :-(
2021-09-30 01:00:19 +01:00
Starbeamrainbowlabs
2e062fd78f
Start setting up a handler, but it's not working right just yet.
...
We probably want to go back and look at the tokio examples again.
2021-09-29 02:44:33 +01:00
Starbeamrainbowlabs
f55fd2f91b
Adapt settings system from woppleblox
2021-09-28 23:55:34 +01:00
Starbeamrainbowlabs
f6563932c9
Setup basic CLI
2021-09-28 23:47:52 +01:00