Ted Blackman
c972c0fbe2
gall: roundtrip through arvo to revive %hood and %dojo
2022-08-16 01:37:35 +03:00
Ted Blackman
95580f7e83
gall: revive %hood and %dojo on poke
2022-08-16 00:40:38 +03:00
Ted Blackman
a70c2ffe1a
gall: now restarts %hood, but not %dojo yet
2022-08-16 00:40:38 +03:00
Ted Blackman
ac072729c2
gall: force load %hood and %dojo on poke
2022-08-16 00:40:38 +03:00
fang
81f18d13ad
gall: remove outdated fixme comment
...
This is part of the %doff work, which is getting integrated elsewhere.
2022-08-15 12:24:18 +02:00
Ted Blackman
1898483a45
gall: disable %doff for now
2022-08-12 00:55:19 +03:00
Ted Blackman
b1bab79f58
gall: add %f scry for sub-nonce's
2022-08-11 22:33:57 +03:00
fang
350f33d6ba
Merge branch 'next/arvo' into ted/doff-6
2022-08-11 21:06:30 +02:00
fang
5b4a964cdf
gall: fix the %doff conditional
...
No comment.
2022-08-11 19:48:27 +02:00
fang
06b7f52755
gall: print less during %doff
2022-08-11 17:04:44 +02:00
fang
cd0ea06ad4
gall: use a fully-formed wire when sending %cork
...
In response to clog notification from remote ames, we were sending a
%cork to clean up the flow. However, the wire we were using had the /sys
prefix already stripped off. Here, we put it back in.
2022-08-11 16:53:45 +02:00
fang
39cd895a55
gall: in +ap-doff, process oldest subs first
...
Start by killing subscription nonce 0, then work our way up instead of
down. We enhance the printf with a "total nonces" indicator so we can
still easily see the progress being made.
2022-08-10 22:51:38 +02:00
fang
2fe27bd8d7
gall: simplify +ap-doff filter conditional
2022-08-10 22:25:01 +02:00
fang
04b7b86cae
gall: support %doff-ing specific apps and/or ships
...
This gives us more control over exactly which subscriptions get culled,
which is useful in debugging and targetted recovery scenarios.
2022-08-10 20:33:07 +02:00
Ted Blackman
6b836bb56d
ames: fix no-op for messages on closing bones
2022-08-10 20:18:57 +03:00
Ted Blackman
20ccac22a2
ames: clean up closing bone check and printfs
2022-08-10 19:55:07 +03:00
Ted Blackman
9e47490c95
gall: fix %doff handling
...
Previous +ap-doff kicked the agent repeatedly. We needed to kick
it only once. Now publisher agents clear their incoming subscription
state without the subscriber making lots of new subscriptions because
of repeated kicking.
2022-08-10 19:48:39 +03:00
Ted Blackman
0baad53fb4
ames: drop pleas on dead bones
2022-08-10 19:47:59 +03:00
Ted Blackman
ef09595788
gall: update comment
2022-08-10 19:13:32 +03:00
Ted Blackman
543efac183
gall: kill old subscriptions on %doff (still has bug)
...
Squashed commit of the following:
commit 1e31ab96c14e7506d5cb746d90153cb5658df6e0
Author: Ted Blackman <ted@tlon.io>
Date: Wed Aug 10 19:08:39 2022 +0300
ames: revert prints on bad memos
commit c47f9c6053c05da0177f0c64210a88161e8adc98
Author: Ted Blackman <ted@tlon.io>
Date: Wed Aug 10 18:44:56 2022 +0300
Merge fix to +ap-kill-down and use that pattern in +mo-doff.
This doesn't seem to work properly, but I'm not sure why so far.
commit e696816b8d3ab81534de6c2910d0fd4bebcfb68a
Merge: 4edb247cd7 a5f08643ff
Author: Ted Blackman <ted@tlon.io>
Date: Wed Aug 10 18:29:42 2022 +0300
Merge branch 'next/arvo' into ted/doff-revival
commit 4edb247cd77ac988e5b11806d0d9b5e7cec4a39e
Author: Ted Blackman <ted@tlon.io>
Date: Sat Aug 6 00:09:04 2022 +0300
ames,gall: fix lopsided bitt/boar state from old doffs
commit b21ffd9cfab0987297f3ae4cd16447ed0c3a467e
Merge: 7d532afaf8 8eb8a1da29
Author: Ted Blackman <ted@tlon.io>
Date: Fri Aug 5 17:53:15 2022 +0300
Merge branch 'next/arvo' into ted/kill-subs
commit 7d532afaf80b773139b66d787c4a446e3d6a9a33
Author: Ted Blackman <ted@tlon.io>
Date: Fri Aug 5 17:52:16 2022 +0300
gall: add subscription nonce to %doff
commit f750de9aacdb19f796bff527e220df9c10e41e71
Merge: 38540658b5 aad5fa6fae
Author: Ted Blackman <ted@tlon.io>
Date: Fri Aug 5 11:24:55 2022 +0300
Merge branch 'next/arvo' into ted/kill-subs
commit 38540658b59d703b0fa162af4f958948b7ee2031
Author: fang <git@fang.io>
Date: Thu Jul 28 21:10:57 2022 +0200
gall: account for renaming of subscription state
commit c015dc8446fc02729ad492e24635c9c521f09965
Merge: 7c222e4c60 731e27d5a1
Author: Zach Alberico <git@zalberico.com>
Date: Thu Jul 28 10:14:24 2022 -0700
Merge branch 'next/arvo' into ted/kill-subs
commit 7c222e4c60d946042fd06d858086a883bf8a0f7b
Author: Ted Blackman <ted@tlon.io>
Date: Thu Jul 28 14:01:00 2022 +0200
hood: |doff generator
commit 8d00cf1bd1b304f30431614b68002827e498d97e
Author: Ted Blackman <ted@tlon.io>
Date: Thu Jul 28 13:21:45 2022 +0200
gall: fix compile errors
commit 6a1fd360ffc65d8c6f90e491bb21fa7799a98c31
Author: Ted Blackman <ted@tlon.io>
Date: Thu Jul 28 13:01:16 2022 +0200
gall: add %doff task to kill subscriptions
2022-08-10 19:09:47 +03:00
fang
a5f08643ff
Merge pull request #5932 from urbit/ted/ack-crash
...
ames: fix "ack crash"
2022-08-10 16:02:10 +02:00
fang
682dde904c
Merge pull request #5931 from urbit/m/gall-kill-down-accurately
...
gall: handle nonces in wires correctly
2022-08-10 00:04:10 +02:00
Ted Blackman
ce9f692ecd
ames: clean up %cork plea handling
...
+on-plea gets called in two very different ways:
1) handling request from local vane to send %plea to peer
2) handling %cork request from another ship, which our local ames has %pass'ed
to ourselves
In the second case, we shouldn't print misleadingly, or bind a duct in the ossuary.
2022-08-10 00:47:38 +03:00
Ted Blackman
2dc7171dfa
ames: no-op on acks on corked bones
2022-08-10 00:44:54 +03:00
fang
db1e8d1b92
gall: explain reason for strange conditional
2022-08-09 21:36:08 +02:00
fang
52d8ef6a99
gall: initialize sub-nonce as 1 during upgrade
...
This matches the bunt of 1 for the new ship case. A nonce of 0 is
semantically mapped to old-style subscriptions.
2022-08-09 21:22:40 +02:00
fang
c2d77a5d47
gall: in/exclude the nonce from the wire as needed
...
+ap-nuke was not including the nonce, but should.
+ap-handle-peers was potentially including a zero nonce.
(The latter shouldn't have been possible, but there's a bug in +load
where sub-nonce.yoke gets initialized as 0 instead of 1.)
2022-08-09 21:21:10 +02:00
fang
0a3f542fcc
gall: refactor sub-wire-with-nonce construction
...
Into +ap-nonce-wire.
2022-08-09 21:20:24 +02:00
fang
1f30dccddf
gall: use correct wires in +ap-kill-down
...
For potentially-outgoing moves, we need to make sure the nonce is in the
wire so that it gets associated with the right instance of the
subscription.
2022-08-09 20:53:43 +02:00
fang
e396ddcdaa
gall: cork a subscription's ames flow on-kick
...
Gall tells ames to %cork flows for subscriptions it has closed.
Receiving a kick also closes a subscription, but gall wasn't issuing a
%cork in that case. We correct that here.
Inlines +mo-handle-ames-response's logic at its only callsite.
2022-08-08 22:21:34 +02:00
drbeefsupreme
2b7b3266ac
clay: remove $dork
...
seems that this structure has been unused since
e75ab631a4
and confuses
newbies trying to figure out exactly what the commit
structure is (which is how I came across this)
2022-08-07 13:08:55 -04:00
Ted Blackman
da591a4078
ames: invert busted conditional in recork timer
2022-08-05 02:37:03 +03:00
Ted Blackman
56d4906a13
ames: try next recork on cork ack
...
Without this, a ship would send a cork on a max of one flow per
recork timer, which could take years to clear for some ships.
This starts a hot loop of trying the next cork once one gets
positively acked.
2022-08-05 01:35:34 +03:00
Ted Blackman
54cd1a5eca
ames: simplify recork timer
...
The previous recork timer queued up %cork messages without sending them.
It also relied on making sure pump timers didn't get set for recork bones.
This was fragile.
The new design enqueues up to one new %cork message per ship during each
recork timer, based on the state of the flow. If the flow is closing but
there are no outstanding messages in it, then it needs to be recorked.
Flows will be recorked in ascending numerical order by bone.
2022-08-05 01:13:21 +03:00
fang
9433d3354d
ames: unsent-fragments is a list, not a tree
...
Measure accordingly.
2022-08-03 21:03:49 +02:00
fang
7af527e605
ames: correctly measure queue size
2022-08-03 20:52:03 +02:00
fang
e6453bae3c
ames: more detailed "future msg" trace
...
This additional information may come in handy when debugging this crash
we shouldn't be seeing.
2022-08-03 20:46:54 +02:00
fang
e16c499724
ames: make recork timer faster
...
This will aid visibility and debugging. We'll probably want to make this
slower again later.
2022-08-03 20:33:04 +02:00
fang
7c01ee9b35
ames: account for corked flows during %stir
...
Also patches the behn scry in %stir handling to be correct for latest behn.
2022-08-03 19:37:53 +02:00
fang
b860bef066
ames: correctly avoid setting pump timer
...
The condition got butchered during refactor: instead of avoiding the creation
of pump timers during recork wake, it was setting them _exclusively_ during
recork wake.
2022-08-02 23:23:48 +02:00
Ted Blackman
e5e4c8602d
ames: properly set recork flag in +on-wake
2022-08-02 23:15:43 +03:00
Ted Blackman
67efb2ad7c
ames: don't start pump timers on recork
2022-08-02 23:03:34 +03:00
fang
289fe5ef64
Merge branch 'next/arvo' into yu/gall-rq-global-cork-timer
2022-07-25 19:50:26 +02:00
yosoyubik
c69af12a6d
gall: make spore-tag a @ud
...
TODO: still getting kiln: %base not installed
2022-07-18 13:49:16 +02:00
yosoyubik
a5aedaccc5
ames: delete naxplanation flows if bone is corked
2022-07-18 10:27:36 +02:00
yosoyubik
35c6ac416e
ames: fix predicate for detecting %cork acks
2022-07-16 07:40:05 +02:00
yosoyubik
c599e60c5b
ames: add recork set
2022-07-15 16:45:32 +02:00
yosoyubik
8712804d7f
gall: comment subscription kill
2022-07-14 07:23:39 +02:00
yosoyubik
d17fd7521a
gall: use spore tag for +molt subscription killing
...
WIP: kiln crashes after upgrade with a ! kiln: %base not installed
2022-07-13 15:52:15 +02:00
Ted Blackman
1cb2aaabbc
gall: fix +molt initialization
2022-07-13 15:52:07 +02:00
Ted Blackman
5f8378e1b7
gall: kill subscriptions after agents reload
2022-07-13 15:52:02 +02:00
yosoyubik
d9b7643b79
gall: fix condition to run +ap-kill-down
2022-07-13 15:51:46 +02:00
yosoyubik
4c8a4ecb0e
gall: run +ap-kill-down only once
2022-07-13 15:51:38 +02:00
yosoyubik
354a914c82
gall: run +ap-kill-down on +molt
2022-07-13 15:51:28 +02:00
yosoyubik
a3518ef4d6
ames: add trace for %cork plea
2022-07-13 09:17:42 +02:00
bacwyls
49b837f5e8
eyre: fix for %trim bug - addendum
...
Broader, more direct solution.
2022-07-08 17:10:41 -07:00
bacwyls
c8fafa53bd
eyre: fix for %trim bug
...
Problem:
by-channel has its own copy of server-state from line 2182. discard-channel returns an altered state, with one channel removed from the state of by-channel.
but the state of by-channel isn't changing with each iteration, so |trim is only removing one channel per invocation.
Solution:
update by-channel on each iteration.
2022-07-08 15:14:13 -07:00
yosoyubik
34a7496720
ames: clean up nack flows after a cork
2022-07-08 07:29:04 +02:00
fang
283e5ad1db
Revert "gall: exclude from traces"
...
This reverts commit b1b422ce05
.
2022-07-07 16:24:03 +02:00
fang
a1b3348cdf
Revert "clay: render syntax errors at end of file"
...
This reverts commit 7a110db60d
.
2022-07-07 16:21:43 +02:00
yosoyubik
ca1b586a46
ames: init cork timer on larval +take
2022-07-07 11:35:28 +02:00
yosoyubik
d4d443db13
ames: remove cork wire from state
2022-07-07 09:20:57 +02:00
Philip Monk
1bc0d0cd8e
gall: don't reload if code is unchanged
2022-07-07 00:12:27 -07:00
Philip Monk
a4aa835fe1
clay: add %rein move to config agents
2022-07-06 23:09:43 -07:00
Philip Monk
56ed49578f
clay: respect rein state
2022-07-06 22:26:34 -07:00
Philip Monk
71ecde32e1
clay: keep marks warm
2022-07-06 18:12:59 -07:00
Philip Monk
eb1e7dd173
clay: enable goad on every commit
2022-07-06 16:56:38 -07:00
Philip Monk
ddf13b3fb8
clay: make upgrade compile
2022-07-06 11:51:06 -07:00
fang
c437f1cdbd
Merge pull request #5855 from urbit/m/gall-quieter
...
gall: exclude from traces
2022-07-06 18:48:55 +02:00
Ted Blackman
0d4ce15780
clay: add .liv and .ren state to dome
2022-07-06 16:41:20 +01:00
yosoyubik
e366e55dbc
ames: add global daily timer for pending corks
...
WIP compiles and upgrades, and the timer gets properly reset
but untested for actual re-subscriptions with old publishers
2022-07-06 17:00:35 +02:00
yosoyubik
608aba2a87
gall: handle subscriber-side %cork
...
this also enables increasing sub-nonces for every new subscription
TODO: create one global cork timer for all peers
2022-07-06 14:44:20 +02:00
Ted Blackman
1cda56673f
gall: idle agents not in %load move
2022-07-06 12:37:17 +01:00
Philip Monk
d4f02e0a57
clay: add global %goad logic
2022-07-06 03:32:15 -07:00
yosoyubik
f3a60aef14
gall: don't send %cork when leaving a subscription
...
This is a temporary fix, and first part of the gall-request-queue-fix
release in two stages. This gives a publisher ship the ability to
understand a %cork and handle it properly, but no subscriber will
be sending %corks at this stage when leaving a subscription.
We still add a nonce to all subscription wires but it doesn't
increment it when resubscribing, allowing flows to be reused.
Tested locally with toy pub/sub agents and Group join/leaving
2022-07-06 10:59:08 +02:00
yosoyubik
76919ce07c
ames: resend %cork after a naxplanation in one day
2022-07-06 10:52:19 +02:00
Philip Monk
6d321c60cb
clay, gall: move agent build management to clay
2022-07-06 00:51:11 -07:00
yosoyubik
850de0bfd3
Revert "gall: run +ap-kill-down on +molt"
...
This reverts commit 2107240962
.
2022-07-06 09:12:30 +02:00
yosoyubik
675cf45171
Revert "gall: run +ap-kill-down only once"
...
This reverts commit cb5893ac05
.
2022-07-06 09:12:10 +02:00
yosoyubik
3560f6b7e3
Revert "gall: fix condition to run +ap-kill-down"
...
This reverts commit e5c86886e4
.
2022-07-06 09:11:22 +02:00
yosoyubik
ea4a31558f
ames: ack last fragment from closing bone
2022-07-01 09:59:24 +02:00
Philip Monk
89b9977ac8
azimuth: fetch snapshot on boot
...
Previously, the initial Azimuth snapshot was stored in Clay and shipped
in the pill. This causes several problems:
- It bloats the pill
- Updating the snapshot added large blobs to Clay's state. Even now
that tombstoning is possible, you don't want to have to do that
regularly.
- As a result, the snapshot was never updated.
- Even if you did tombstone those files, it could only be updated as
often as the pill
- And those updates would be sent over the network to people who didn't
need them
This moves the snapshot out of the pill and refactors Azimuth's
initialization process. On boot, when app/azimuth starts up, it first
downloads a snapshot from bootstrap.urbit.org and uses that to
initialize its state. As before, updates after this initial snapshot
come from an Ethereum node directly and are verified locally.
Relevant commands are:
- `-azimuth-snap-state %filename` creates a snapshot file
- `-azimuth-load "url"` downloads and inits from a snapshot, with url
defaulting to https://bootstrap.urbit.org/mainnet.azimuth-snapshot
- `:azimuth &azimuth-poke-data %load snap-state` takes a snap-state any
way you have it
Note the snapshot is downloaded from the same place as the pill, so this
doesn't introduce additional trust beyond what was already required.
When remote scry is released, we should consider allowing downloading
the snapshot in that way.
2022-06-30 23:22:50 -07:00
yosoyubik
e5c86886e4
gall: fix condition to run +ap-kill-down
2022-06-30 17:44:11 +02:00
yosoyubik
a967b42c30
ames: print bone if "hear last in-progress"
2022-06-30 17:12:07 +02:00
yosoyubik
cb5893ac05
gall: run +ap-kill-down only once
2022-06-30 17:06:22 +02:00
yosoyubik
2107240962
gall: run +ap-kill-down on +molt
2022-06-30 15:57:02 +02:00
yosoyubik
b0766c2f53
ames: remove misleading trace printf
2022-06-30 10:46:02 +02:00
yosoyubik
27ac0b601e
ames: use %$ as recipient vane for %corks
2022-06-30 10:18:37 +02:00
yosoyubik
17d52b8535
ames: handle bounce %cork from old publisher
...
Because the publisher will send the cork plea back to the subscriber on
the next bone, we are not able to know the bone for the original cork.
To handle it, we add the cork bone to the plea path
still wip: it keeps resending the cork plea faster than its ~h1 timer
2022-06-28 12:48:07 +02:00
yosoyubik
070d0a7d4b
Merge branch 'jb/behn-fix1' into yu/gall-rq-wire-ames-flow-kill
2022-06-28 10:47:50 +02:00
yosoyubik
7de9c72f36
ames: add rift when inserting new peer state
2022-06-27 13:55:07 +02:00
Joe Bryan
6b99b154d6
behn: cleans up comments
2022-06-17 22:20:16 -04:00
Joe Bryan
1b6d4f0fc5
behn: refactor to use +abet pattern
2022-06-17 10:27:27 -04:00
Joe Bryan
5482d3ff93
behn: emit %doze on any rescheduling of the next timer
2022-06-17 10:27:27 -04:00
Joe Bryan
bf8114a29d
behn: don't compare pending timers to now
2022-06-17 10:27:27 -04:00
Joe Bryan
1843df6cde
behn: unconditionally clear runtime timer state on %wake
2022-06-17 10:27:27 -04:00
fang
b1b422ce05
gall: exclude from traces
...
Removes the !: at the top of gall, so that it no longer gets included in traces about agent builds or crashes.
We also refine intentional crashes with ~_s, so that we still see a crash reason even if we don't get a full trace.
Lastly, flops the trace for +on-load crashes, which were getting printed bottom-first.
2022-06-17 14:08:47 +02:00
yosoyubik
2e92331a0b
Merge branch 'next/arvo' into yu/gall-rq-wire-ames-flow-kill
2022-06-16 08:54:24 +02:00
Ted Blackman
0190a477f5
ames: adjust comments
2022-06-15 15:35:41 -06:00
Ted Blackman
1380e83b55
ames: clog on 5 messages and 100kB
2022-06-15 15:28:34 -06:00
Ted Blackman
d2ea33ddfe
ames: condense message size calculation
...
Co-authored-by: fang <git@fang.io>
2022-06-05 08:49:47 -05:00
Ted Blackman
953273004a
ames: clog at 100kB instead of 5 messages
2022-06-04 17:18:21 -05:00
fang
43dff9c279
ames: do not use old lanes during stateful forward
...
As 999f0e8
, but for the stateful code path in +send-blob.
2022-06-01 21:47:15 +02:00
fang
999f0e84e9
ames: do not produce stale forward lanes
...
Stale lanes may cause forwarding loops. Imagine the following:
1) Planet A is live. Galaxy B, its indirect sponsor, learns of its route.
2) A goes offline. Another ship, C, is started in its place, at the same route.
3) B receives a packet for A, forwards it to the known route.
4) C received the packet, forwards it to B.
5) Repeat from 3.
Here, we update the forward lane(s) scry used by the runtime to not produce a
peer's lane if they haven't communicated with us in the last hour. Everyone's
supposed to ping their sponsorship chain every 30 seconds. If those aren't
going through, you shouldn't expect to be reachable anyway.
We may or may not want to update +send-blob to match.
2022-06-01 17:17:37 +02:00
fang
ac90c2a602
Merge pull request #5812 from urbit/m/eof-syntax-error
...
clay: render syntax errors at end of file
2022-05-31 16:58:46 +02:00
fang
e9a0c8543e
Merge pull request #5811 from ynx0/patch-1
...
eyre: Modify landing title from "OS1" to "Urbit"
2022-05-31 16:56:15 +02:00
fang
7a110db60d
clay: render syntax errors at end of file
...
Previously, if the pointer for a syntax error pointed to the end of the file
(and the file ended in a newline) the code snippet rendering would try to
display a line _beyond_ the end of the file, causing a crash.
Here, we detect that case, and display `<<end of file>>` instead.
2022-05-30 16:08:59 +02:00
Yaseen
c94fea25da
eyre: Modify landing title from "OS1" to "Urbit"
2022-05-29 16:22:20 -04:00
Philip Monk
5b773723b3
Merge remote-tracking branch 'origin/yu/ames-fixes' into next/arvo
2022-05-20 22:52:00 -07:00
Philip Monk
ac64f44538
clay: update tests
2022-05-20 20:03:34 -07:00
Philip Monk
b914fbaedc
clay: add logging commands
2022-05-20 17:01:50 -07:00
Philip Monk
f16abbd992
ames: fix comet communication with breached ship
2022-05-19 20:20:00 -07:00
Philip Monk
7f63f548f5
clay: don't add lobe to wire to avoid flow leak
2022-05-18 20:54:10 -07:00
yosoyubik
16920a894e
Merge branch 'yu/ames-fixes' into yu/gall-rq-wire-ames-flow-kill
2022-05-18 17:37:24 +02:00
yosoyubik
c2576cdc46
ames: handle +call moves if re-evolving from larva
2022-05-18 17:36:40 +02:00
yosoyubik
fe412b1ca7
gall: remove $watches from egg/yoke
...
Also renames $beat to $boar so it signifies more its closeness to $boat
2022-05-18 15:27:17 +02:00
Philip Monk
201cb7290f
clay: add tomb scry
2022-05-18 02:12:35 -07:00
Philip Monk
6cae525464
clay: make trim clear ford cache
2022-05-18 00:35:23 -07:00
Philip Monk
61c1e19db5
clay: progress download when receiving tombstone
2022-05-18 00:11:16 -07:00
Philip Monk
4051d182ee
clay: fetch entire latest foreign commit
2022-05-17 22:07:53 -07:00
Philip Monk
9548f8333a
clay: don't require head of foreign desks
2022-05-17 17:06:03 -07:00
Philip Monk
9f0e8294db
clay: fixes
2022-05-17 16:02:15 -07:00
Philip Monk
c440a333d3
clay: tweaks from walkthrough
2022-05-17 14:17:53 -07:00
Philip Monk
7e4ad62a51
Merge remote-tracking branch 'origin/yu/ames-fixes' into philip/tomb
2022-05-17 14:07:05 -07:00
yosoyubik
c8f50ff2e6
gall: increment nonce after leaving pre-nonce subs
2022-05-17 15:37:33 +02:00
yosoyubik
7166e4c7cf
gall: skip nonce in pre-nonce subs wires
2022-05-17 14:29:13 +02:00
yosoyubik
4dae3ae3e2
ames: indent
2022-05-17 07:49:15 +02:00
yosoyubik
f81061fe40
Merge branch 'yu/ames-fixes' into yu/gall-cork-wip
2022-05-17 07:47:58 +02:00
yosoyubik
2553573be0
ames: start drainage timer if regressed from adult
...
This accounts for a possible race condition where ames expects a
response, but regresses into the larval state. Upon receiving the
$sign on +take, we would remain stuck as a larva. Now we check
that we have enough information to re-evolve and then start a
/larval timer to begin draining the queue.
2022-05-17 07:11:09 +02:00
yosoyubik
586fecef10
gall: add %gn to scry the nonce of a subscription
2022-05-16 10:27:36 +02:00
yosoyubik
83356f02ca
gall: add $beat map for subscription nonces
...
Previously we stored the nonce in $boat, which changed the $bowl of each
agent. This compiles and all agents reload, but more testing is needed.
It also renames inbound/outbound watches to $bitt/$boat.
2022-05-16 09:13:40 +02:00
yosoyubik
a1dcc5a8cd
gall: print trace logs by agent
...
This uses the same patterns found in %ames. We add an %odd flag
for logs related to the gall-rq PR, and leave it open for other flags
2022-05-15 17:16:18 +02:00
Philip Monk
9c7c776fd8
clay: fix stack while building directories
2022-05-15 02:27:49 -07:00
Philip Monk
d25194c7a3
arvo: reduce priority of lifecycle printfs
2022-05-14 23:59:21 -07:00
Philip Monk
c091ec92eb
various: make all files build correctly
2022-05-14 22:49:10 -07:00
Philip Monk
8a2eac7c70
Merge remote-tracking branch 'origin/ted/ames-prod-2' into philip/tomb
2022-05-14 21:17:10 -07:00
Philip Monk
c9a8933628
Merge remote-tracking branch 'origin/lf/eyre-mark-desk' into philip/tomb
2022-05-14 21:04:26 -07:00
Philip Monk
2e31f87068
Merge branch 'pr' into philip/tomb
2022-05-14 20:59:01 -07:00
Philip Monk
8f96e8402b
Merge remote-tracking branch 'origin/jo/lull-bump' into philip/tomb
2022-05-14 20:36:14 -07:00
Philip Monk
d50d3915b8
Merge remote-tracking branch 'origin/yu/ames-fixes' into philip/tomb
2022-05-14 19:28:30 -07:00
yosoyubik
350636fe2a
ames: don't relay acks for naxplanations of %corks
...
This avoids closing a subscription prematurely, before the
server ames has had time to process the innitial %cork.
2022-05-14 10:52:45 +02:00
Philip Monk
32ff1417a7
clay: only maintain mime cache if mounted
2022-05-10 20:33:01 -07:00
Philip Monk
3b0c2dac9c
clay: validate files in separate roads
2022-05-10 20:32:11 -07:00
Philip Monk
7f573cb357
clay: tweak |mass output
2022-05-10 03:24:58 -07:00
yosoyubik
76ddc359f5
ames: fixt 6-to-7 state update
2022-05-09 14:17:27 +02:00
yosoyubik
a2b771f704
Merge branch 'yu/ames-fixes' into yu/gall-cork-wip
2022-05-09 14:16:07 +02:00
yosoyubik
5d6b2d8997
ames: fix 4-to-5 state migration
2022-05-09 14:13:51 +02:00
yosoyubik
a278b63c66
ames: add tracing printf
2022-05-06 09:47:19 +02:00
yosoyubik
6318aa283b
ames: retry sending a %cork if publisher is behind
2022-05-05 14:04:18 +02:00
yosoyubik
06883b617e
ames: add new state version in +stay
2022-05-05 13:00:23 +02:00
Philip Monk
591bdf458c
Merge branch 'next/arvo' into philip/tomb
2022-05-04 00:45:57 -07:00
Philip Monk
4760e4e158
clay: fix |pick
2022-05-04 00:22:00 -07:00
Philip Monk
c995f04474
clay: comment
2022-05-03 22:09:36 -07:00
Philip Monk
53353cde11
clay: add %sweep scry to verify refcounts
2022-05-03 21:59:56 -07:00
Philip Monk
d59fb3a82b
clay: address review comments
2022-05-03 19:17:39 -07:00
Philip Monk
a3a2934d53
clay: add dependencies to stack on sprig hit
2022-05-03 16:47:48 -07:00
Philip Monk
c96e5bbf09
clay: reduce printfs
2022-05-03 16:20:36 -07:00
Philip Monk
7e17ae25fb
clay: rename poor->mist
2022-05-03 16:17:28 -07:00
yosoyubik
53e1c86833
Merge remote-tracking branch 'origin/yu/ames-fixes' into yu/gall-rq-wire-ames-flow-kill
2022-05-03 13:57:39 +02:00
yosoyubik
ec60399cdf
ames: restore previous +decode-shut-packet
2022-05-03 12:49:10 +02:00
yosoyubik
3f7f4dbd5a
gall: handle %kicks for nonexistent subscriptions
2022-05-03 12:49:10 +02:00
yosoyubik
a288d455c3
ames: remove %cork from |ack-meat
2022-05-03 12:49:10 +02:00
yosoyubik
c380cf3f42
gall: add %cork to remote-request action
2022-05-03 12:49:10 +02:00
yosoyubik
0a96d69785
gall: include sub-nonce in unsubscribe wire
2022-05-03 12:49:10 +02:00
yosoyubik
674c9e95a0
gall: style indentation
2022-05-03 12:49:09 +02:00
yosoyubik
8be9257164
ames: style indentation
2022-05-03 12:49:09 +02:00
yosoyubik
52ef6ba08e
ames: handles decoding old-format shut-packets
2022-05-03 12:49:09 +02:00
h5gq3
c95cce4404
style fixes
2022-05-03 12:49:09 +02:00
h5gq3
5583fc1320
ames-flow-kill
2022-05-03 12:49:09 +02:00
Ted Blackman
fdd2067e75
gall: review cleanups
2022-05-03 12:49:09 +02:00
Ted Blackman
edf5ec9123
gall: upgrades almost smoothly
2022-05-03 12:49:09 +02:00
Ted Blackman
a4ae79e794
gall: compiles with nonce in wire
2022-05-03 12:49:08 +02:00
yosoyubik
0252d71553
gall: WIP added sub-nonce to state and wire
2022-05-03 12:49:08 +02:00
Philip Monk
53a417dc43
clay: add sprig cache
2022-05-03 01:32:40 -07:00
Philip Monk
21cc132884
clay: rename ford-cache->flow
2022-05-03 00:17:30 -07:00
Philip Monk
8bab16d448
clay: remove -k arms
2022-05-01 17:03:17 -07:00
Philip Monk
0b72164740
clay: remove +build-leak
2022-05-01 16:36:45 -07:00
Philip Monk
c2754662b8
clay: new ford cache
2022-05-01 03:54:03 -07:00
Philip Monk
7219b7e58f
clay: collapse version 12 into 11
2022-04-29 20:44:42 -07:00
Philip Monk
5a5de05518
clay: enable mounting revisions of desks
2022-04-29 18:50:30 -07:00
Philip Monk
a7eaddfdc7
clay: remove ankh
...
ankh was a cache of the current validated blobs, which is no longer
necessary
2022-04-29 17:29:50 -07:00
Philip Monk
60950ade08
clay: cleanup
2022-04-29 15:05:53 -07:00
yosoyubik
02806f63a1
ames: hardcode rift for comets in state upgrade
2022-04-27 06:24:55 +02:00
Philip Monk
ac6e793aa2
arvo: rename +de to +of
2022-04-22 17:55:42 -07:00
yosoyubik
9cb425e0ef
ames: remove unused ames-to-ames %plea logic
...
This seems to have been used in the past for pinging the ship's
sponsor, but was later removed when the :ping app was introduced
2022-04-22 15:49:15 +02:00
yosoyubik
087f24e931
ames: use +trace to print logs
2022-04-22 12:29:16 +02:00
yosoyubik
e2f8e21529
ames: remove sigwut
2022-04-22 12:26:53 +02:00
yosoyubik
471b9be22d
ames: fix emit of parsing old wire log
2022-04-22 12:26:24 +02:00
yosoyubik
91435a92ca
ames: don't drop events with old wires
...
Previously we were dropping events that used old
wires that lacked a rift in them. This seems a
bad behavior because we don't want to destroy a
flow that has not been processed by both ends.
Note: pending a fix to test-old-ames-wire
2022-04-22 12:26:14 +02:00
yosoyubik
6cdebea1af
ames: address review
2022-04-22 12:26:08 +02:00
yosoyubik
60cc44e961
ames: fix cached state in larval upgrade
2022-04-22 12:26:02 +02:00
yosoyubik
1b01455fe5
ames: fix dangling-bone error
2022-04-22 12:25:55 +02:00
Philip Monk
dfd4fc1028
clay: wip
2022-04-19 20:03:32 -07:00
Philip Monk
3b337a14ce
Merge branch 'philip/direct' into philip/tomb
2022-04-13 15:01:25 -07:00
Philip Monk
3a04dc3160
clay: address review comments
2022-04-13 15:00:59 -07:00
Philip Monk
10a2acdcc1
clay: use old requests for now when backfilling
2022-04-13 01:12:05 -07:00
Philip Monk
ce5ef26202
Merge branch 'philip/direct' into philip/tomb
2022-04-13 01:00:23 -07:00
Philip Monk
8805e0ee85
clay: convert all blobs to pages
...
This converts the blob store from having deltas, directs, and
tombstones, to just having direct pages. This simplifies a lot of code,
since we don't have to constantly ensure that deltas always have their
parent available.
This removes the hardcoded text diff logic from clay, which was
previously required for bootstrapping.
Over the wire, we handle both old and new requests and responses
transparently, so communication is normal in both directions across
ships which do or do not have this change.
2022-04-13 00:35:58 -07:00
Philip Monk
bb14c495da
clay: seek wip
2022-04-12 21:02:50 -07:00
Philip Monk
72fa850912
clay: don't download unneeded blobs
2022-04-12 18:31:55 -07:00
Philip Monk
ed00d38166
clay: add |tomb
2022-04-08 21:20:02 -07:00
Philip Monk
78d2d12cca
clay; fix overly cautios tombstoning
2022-04-08 17:28:42 -07:00
Philip Monk
39b7b0a96b
clay: add %tako scry
2022-04-08 16:21:19 -07:00
Philip Monk
07d8187fcc
clay: allow to set norm for past revision
2022-04-08 15:50:35 -07:00
Philip Monk
d71a685b91
clay: add norm to +pick cache
2022-04-07 18:10:00 -07:00
Philip Monk
6dc20bfa7f
clay: trying to find %dead bug
2022-04-07 00:44:49 -07:00
Philip Monk
7482717c02
clay: make +pick fast
2022-04-06 23:16:26 -07:00
Philip Monk
84ccf60b19
clay: add gc routines
2022-04-06 21:45:30 -07:00
Philip Monk
8084200f81
clay: add norm state, remove mark from %delta blobs
2022-04-06 21:44:50 -07:00
Philip Monk
a51152d1a4
clay: address review comments
2022-04-06 12:16:22 -07:00
Philip Monk
4131821b4f
clay: unify all trie implementations
...
We had trie operations independently implemented in +de in arvo,
+an:cloy in zuse, +zu in clay, lib/trie, and app/spider. This unifies
them all into +de in arvo, aggregating the used operations.
2022-04-06 00:19:38 -07:00
Philip Monk
0f6f2d6321
clay: bump kelvin, refactor
2022-04-06 00:18:23 -07:00
Philip Monk
90a2625016
clay: style
2022-04-05 20:30:52 -07:00
lukechampine
8399b7b96c
ames: add resend timer for attestation requests
2022-04-04 00:19:55 -04:00
Philip Monk
90098067f2
clay: extend %tomb to delete all unneeded blobs
2022-03-26 14:37:46 -07:00
Jōshin
29a6692784
khan: minor whitespace cleanup
2022-03-26 09:17:38 -06:00
Philip Monk
ee3951e2df
clay: require non-dead files at head of remote
2022-03-25 22:15:53 -07:00
Philip Monk
6e641005a0
clay: add upgrade to %11
2022-03-25 18:02:22 -07:00
Philip Monk
fb3f74f639
clay: prefer life
2022-03-25 15:32:38 -07:00
Philip Monk
ef9521272a
Merge remote-tracking branch 'origin/lf/ford-memory-shit' into philip/tomb
2022-03-25 13:13:24 -07:00
Philip Monk
c5fda496ac
clay: add basic %tomb
2022-03-25 13:13:09 -07:00
Philip Monk
99a10aa7a8
clay: use XX for things that really need to change
2022-03-25 12:33:48 -07:00
Philip Monk
0c3eee07b5
Merge remote-tracking branch 'origin/master' into philip/tomb
2022-03-25 12:21:56 -07:00
Philip Monk
5ff4cc7f66
Merge pull request #5612 from ynx0/story
...
clay: add `story`, a set of tools to support commit messages
2022-03-22 21:49:16 -07:00
Liam Fitzgerald
dd70856188
clay: be careful with subject in ford results
...
This fixes a space leak where the entire ford/clay core would be
included in the ford cache. Heavily reduces memory usage by clay,
reducing total usage from 100-200MB to around 10MB.
2022-03-21 13:02:36 -06:00
Liam Fitzgerald
2def946ded
clay: break out ford memory usage in more detail
...
Instead of reporting a single memory size for built files, marks and
conversions, we now report memory size per path, mark name and mark
pair, respectively.
2022-03-21 12:21:38 -06:00
fang
8906d1c17d
dill: move %mor case into $blit
...
This lets us send a single blit around, instead of sending facts for
every individual blit in a draw event.
2022-03-05 18:17:48 -06:00
Jōshin
0139550c79
khan: saner tic rollover, remove our
2022-03-02 20:15:44 -06:00
Jōshin
e54e92cfa9
khan: docs
2022-03-02 18:02:20 -06:00
Jōshin
0b507cf498
khan: don't reset tic
...
instead make it a rolling 128-bit integer. 128 bits is the same size as
the +sham space, so is one natural choice for "big enough to never have
to think about this." 64, 32, 16, even 8 bits would probably be fine.
2022-03-02 17:28:10 -06:00
fang
998f7d081a
dill: fix %shut session deletion
...
+abet would re-insert the session into state, so we just pull the
deletion logic outside of the main core.
2022-03-02 17:24:54 -06:00
Jōshin
18274090b2
khan: handle multiple %fards in one event
2022-03-02 16:37:46 -06:00
Jōshin
5d7321385f
khan: separate arms by blank comments
2022-03-02 15:09:01 -06:00
Jōshin
1ef958ea25
khan: use +en-beam / +de-beam, wide form
2022-03-02 15:07:38 -06:00
Jōshin
91d390d529
khan: update docs
2022-03-02 13:23:06 -06:00
Jōshin
340f4d5b6c
khan: %fard/%arow use $cage, not $vase
...
Threads should eventually take and produce $cage instead of $vase. Since
%khan is likely to be used by third parties, we write to the eventual
intended API. We ignore the mark on the input $cage (it is safe to
always specify %noun), and we always use %noun as the output mark.
%fyrd now makes more sense. It was previously discarding the type of the
output %arow and re-encoding the raw noun as a vase of the output mark;
it is now performing mark conversion from the mark of the output $cage
to the originally requested output mark.
2022-03-02 13:07:52 -06:00
lukechampine
53a0c87cdb
ames: add sendkeys-packet
2022-03-02 00:56:57 -05:00
lukechampine
df6318acd0
ames: fix comet self-attestation handling
2022-03-02 00:52:48 -05:00
lukechampine
1044d42a15
ames: don't enqueue blobs sent to unknown comets
2022-03-02 00:46:18 -05:00
Jōshin
f5fb214939
khan: initial state version is %0
2022-03-01 23:38:55 -06:00
Jōshin
6ce6e4f504
khan: structural slap, not general slam
2022-03-01 19:34:56 -06:00
Jōshin
2e9b4f5a94
khan: better wire production
...
runs afoul of a likely hoon bug and/or use case for dependent hoon.
2022-03-01 19:33:54 -06:00
Yaseen
70afcbd642
clay: fix bug in fuse
...
Co-authored-by: Philip Monk <phil@pcmonk.me>
2022-02-25 16:34:44 -05:00
Jōshin
a9442040be
khan: alignment
2022-02-25 11:16:47 -08:00
Joe Bryan
9c93068835
gall: adds verbose arg to agent scry implementation
2022-02-23 00:15:37 -05:00
Joe Bryan
92779d8179
gall: updates agent /whey scry to produce %mass mark
2022-02-23 00:14:44 -05:00
Joe Bryan
20c4645727
gall: adds optional agent integration with |mass
2022-02-22 13:07:01 -05:00
Jōshin
d771a4b9ef
khan: randomize tids
...
tid was accidentally getting set to the name of the output mark. As we
don't currently support cancelling threads, there is no reason to
maintain the originally-intended correspondence between tid and conn
request-id.
Take the opportunity to clean up indentation somewhat.
2022-02-19 02:18:49 -08:00
Yaseen
3d006d60ad
clay: add scry for case existence check
2022-02-18 17:43:38 -05:00
Jōshin
470ae80d4b
khan: cleanup
2022-02-15 22:32:52 -08:00