Commit Graph

530 Commits

Author SHA1 Message Date
pkova
45924f7571 ames: store dead flow consolidation timer in state 2023-07-28 16:33:34 +03:00
pkova
d2956a3233 ames: consolidate dead flows to a single behn timer 2023-07-28 16:33:34 +03:00
Pyry Kovanen
897d00334f
Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-07-24 16:58:13 +03:00
pkova
8565fb5f8b Merge branch 'develop' into next/kelvin/412 2023-07-24 14:58:31 +03:00
Pyry Kovanen
efb92ad0c0 ames: ignore old rifts in +on-take-flub 2023-07-18 19:35:03 +03:00
pkova
985350d2b5 ames: address style nits 2023-07-11 18:32:19 +03:00
pkova
a5f88cb24e ames: use abet pattern for flubbing 2023-07-11 18:19:56 +03:00
pkova
4fe9de8194 lull, gall, hoon: drop pokes for non-running agents 2023-07-11 17:36:09 +03:00
yosoyubik
f56db0f460 ames: better naming in queued event migrations 2023-06-30 15:26:20 +02:00
yosoyubik
c4e5d3c963 Merge branch 'yu/fix-drop-nack-state' into yu/enable-close-flows 2023-06-30 14:54:30 +02:00
yosoyubik
3b9a22bb5c Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-30 14:32:13 +02:00
yosoyubik
437f943fbd ames: update pill 2023-06-30 14:31:36 +02:00
yosoyubik
f89045364b Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-30 12:21:15 +02:00
yosoyubik
48a4b9ad32 ames: add 15-to-16 state migration
The 14-to-15 state migration was released in urbit-os-v2.142
so we add a new ames-state-16 to account for the removal of
.num-live from $pump-metrics.

This also adds several `$+` shorthand type name for better
prettyprinting in nest-fails situations, all related to the types in
$ames-state.

(note: ames states 14 and 15 are the same, ane tha migration
 just re-retrieved our own %rift—first introduced in state-12-to-13)
2023-06-30 12:15:38 +02:00
yosoyubik
57308e22ef ames: clean up %kroc tasks in old ames-state
The %kroc task was introduced in ames-state-10. The way the
migration works, is that queued-events are transformed right
away into the latests version, and the state is done step-wise in
different arms, but in one go as part of the +molt arm.

This means that all states from %10 need to handle cleaning up
the %kroc task, with the addition that we were already handling
another tasks, %snub, from ames-state-9 until ames-state-11.
This means that we need to handle both tasks in two different
ames-states, and from them only the %kroc task.

This also adds several $+ to the ames types, that make nest-failures
easier to read.
2023-06-29 15:25:18 +02:00
yosoyubik
5fd372dfcb ames: don't crash if flow for a target bone is ~
The fact that the target bone of a flow that we have received is a
naxplanation doesn't guarantee that there will be a naxplanation
flow (i.e. we have actually sent one) so instead of crashing, we just
continue processing the next bone.
2023-06-29 10:49:51 +02:00
yosoyubik
235bfb6b8b ames: re-add +on-deep:ev
probably removed in one of the merges(?)
2023-06-29 09:58:01 +02:00
yosoyubik
2d31adb4a3 Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-06-29 09:27:48 +02:00
yosoyubik
5bcf7b70c3 ames: add provenance path to the sock 2023-06-28 17:48:07 +02:00
Joe Bryan
d280fbcdbb
Merge branch 'develop' into next/kelvin/412 2023-06-28 11:19:32 -04:00
yosoyubik
20cb84d037 Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-06-28 15:51:37 +02:00
yosoyubik
a20a2fffc8 Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-28 15:47:06 +02:00
yosoyubik
b359239f3d Merge branch 'develop' into next/kelvin/412 2023-06-28 12:52:18 +02:00
Philip Monk
90333c2e91 ping: rewrite to add non-NAT mode 2023-06-26 21:18:04 -07:00
fang
c33ddfa101
Merge branch 'next/kelvin/412' into m/eyre-mirage 2023-06-26 13:47:39 +02:00
Joe Bryan
28f2cddf8e ames: reinitialize rift for all ranks, not just moons 2023-06-22 11:14:34 -04:00
Philip Monk
74ed6daa02 fine: use %q, and don't interpret null as tombstoned 2023-06-15 18:44:05 -07:00
Philip Monk
238a36de1d fine: actively fetch rift for moons 2023-06-14 23:28:37 -07:00
Philip Monk
f68f3dc833 fine: use progressive insertion sort instead of quicksort to assemble fragments 2023-06-14 21:46:29 -07:00
Philip Monk
4a8c0b2d6c fine: fix pathological congestion control case with large windows 2023-06-13 23:06:51 -07:00
Philip Monk
3c3f59a2ac ames: rewrite +fi-on-ack to not use +dip 2023-06-13 22:13:38 -07:00
Ted Blackman
6153f8c7e3
Merge pull request #6609 from urbit/yu/remove-num-live
ames: remove num-live from pump-metrics
2023-06-12 11:50:15 -04:00
fang
ef89cf2410
eyre: rework eauth to be client-initiated
Instead of doing formal network traffic on the host-side whenever a
login attempt gets initiated, we now do it no earlier than when we're on
the client-side. This has the important property that network traffic
can only be initiated by authenticated HTTP requests. The previous
implementation, where hosts sent pleas when an unauthenticated HTTP
client said then wanted to log in, was vulnerable to abuse.

So now, formally, the eauth flow starts at the client's confirmation
screen. There is an optional step preceding this, where an attempt is
started on the host (and data is still stored for this), but to get the
redirect target, the host uses remote scry to get the eauth URL out of
the client ship.

Hosts now also give attempt-specific return URLs, useful in case they
are accessible (or even serving different content) from different
hostnames.
2023-06-09 15:46:04 +02:00
yosoyubik
623e0eafb2 Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-06-08 06:40:39 +02:00
yosoyubik
405f3d21ac Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-08 06:38:31 +02:00
yosoyubik
68db0b4e03 ames: move +on-kroc logic to |close-flows
+on-kroc was cluttered with ad-hoc logic to indentify stale flows from
failed resubscriptions that were not properly %corked. Here we move
that logic to a generator that, if not in dry mode, will call %ames with a
(list  [ship bone]) to %cork them.

Another option would be to move the logic in the generator to a state
update in ames, which will trigger possibly thousands of %ames messages
to be sent, on every ship that runs the state migration—these flows are
not causing a problem that neds to be addressed, and only take extra
space.

If we decide that this needs to be run by everyone, one solution could be
to set up a timer (maybe taking advantage of the fact that ships don't get
the OTA a the same time) that will eventually poke %hood with a
%helm-ames-kroc task.
2023-06-07 15:55:50 +02:00
Tinnus Napbus
7c3a1c4d7c Merge branch 'next/kelvin/412' into tinnus/local-provenance 2023-06-07 20:38:05 +12:00
Ted Blackman
fc5598718b Merge branch 'develop' into next/kelvin/412 2023-06-06 12:50:11 -04:00
yosoyubik
d5bc16ee3e ames: don't crash if sndr/rcvr lifes mismatch 2023-06-05 11:06:22 +02:00
yosoyubik
2c854d1285 ames: remove space leak for outbound naxplanations
Companion to https://github.com/urbit/urbit/pull/6607, where the space leak was fixed
2023-06-05 10:01:44 +02:00
yosoyubik
65b83a3318 Merge branch 'develop' into yu/remove-num-live 2023-06-05 09:47:39 +02:00
Tinnus Napbus
0105be6459 Merge branch 'develop' into tinnus/local-provenance 2023-05-31 12:52:53 +12:00
yosoyubik
96e3bdcf11 Merge branch 'develop' into i/6103/abet-pure 2023-05-30 10:38:39 +02:00
yosoyubik
d3489cc8db ames: generalize $deep tasks
currently all $deep tasks are focused on a particular ship but future
 ones might not, so we move $ship to each individual task
2023-05-30 10:33:13 +02:00
yosoyubik
7ce74f36c6 ames: add %deep task to handle deferred calls
note: %ames tests have not been updated to account for this change
2023-05-30 10:33:13 +02:00
Joe Bryan
d4b900bf3f
Merge pull request #6612 from urbit/i/6611/lose-boon
ames: correctly %lose a %boon we crashed on
2023-05-26 11:19:57 -04:00
Ted Blackman
7d9df71d5e
Merge pull request #6613 from urbit/i/6608/skip-corks
ames: skip corks if pending acks for naxplanations
2023-05-26 10:51:33 -04:00
Ted Blackman
d234b3205f
Merge pull request #6607 from urbit/yu/fix-drop-nack
ames: don't no-op if getting %ack on nack bone
2023-05-26 10:19:31 -04:00
yosoyubik
6528c62b1f Merge branch 'develop' into i/6608/skip-corks 2023-05-26 10:17:19 +02:00
yosoyubik
1e74e8d19a ames: simplify pending-acks conditional 2023-05-26 10:09:44 +02:00