Commit Graph

1593 Commits

Author SHA1 Message Date
pkova
e3d19f9e8d eyre: refactor +load to be prettier 2023-02-13 14:27:12 +02:00
pkova
9291fed27f eyre: revert +error-response refactor 2023-02-13 14:27:12 +02:00
pkova
d8ff95db84 eyre: add /~/name endpoint 2023-02-13 14:26:54 +02:00
yosoyubik
b8b7e1951f ames: add %cong task to adjust clog 2023-02-13 12:04:41 +01:00
yosoyubik
f2f339e4f3 Merge branch 'ted/ames-clog-less' into yu/adjust-clog 2023-02-12 08:36:39 +01:00
jose
a5deb3dbe2
Merge branch 'develop' into yu/clean-flows 2023-02-10 16:48:35 +01:00
yosoyubik
c92c2c9279 ames: log stale flows in closing state 2023-02-10 16:19:18 +01:00
Josh Lehman
dc664d516c
Merge branch 'develop' into jm/desk-name-sanity 2023-02-09 06:13:20 -08:00
ryjm
0497790b86 ~& -> ~| 2023-02-09 08:43:58 -05:00
yosoyubik
abbd95f2ce ames: fix typo 2023-02-09 13:12:50 +01:00
yosoyubik
dd812283ac ames: optimize memory measurement
Co-authored-by: Joe Bryan <joemfb@gmail.com>
2023-02-09 10:47:49 +01:00
yosoyubik
4bac6ea642 Merge branch 'develop' into ted/ames-clog-less 2023-02-09 10:14:02 +01:00
jose
7de9c45c38
Merge pull request #6129 from urbit/yu/clean-flows
ames: add |close-flows
2023-02-08 16:50:16 +01:00
Josh Lehman
88e853cf69
Merge branch 'develop' into i/6236/clay-cult-inspection 2023-02-08 06:42:32 -08:00
ryjm
a5512fe9bc add bad desk name to all traces 2023-02-08 07:38:44 -05:00
Jake Miller
972588e573
add bad desk name to stack trace
Co-authored-by: fang <github@fang.io>
2023-02-08 07:11:50 -05:00
ryjm
62b6e8c8f8 clay: desk name sanity check
Ensures no desk with an illegal name can be created by sanity checking
in `%fuse`, `%park`, and `%merge`.
2023-02-07 21:24:33 -05:00
fang
c5aece980e
Merge pull request #6116 from urbit/fix-host-scry
eyre: fix %host scry so it says secure even if no domains configured
2023-02-07 16:28:47 +01:00
fang
92066f3a33
Merge branch 'develop' into m/http-auth-tokens 2023-02-06 19:44:01 +01:00
yosoyubik
46c27d33cd ames: fix check for stale resubscriptions 2023-02-06 16:48:32 +01:00
yosoyubik
fbb95b0d9f ames: check if we have a flow for a nax ack bone 2023-02-06 16:39:00 +01:00
yosoyubik
1522e4ab96 ames: don't scry dudes for every peer 2023-02-06 16:39:00 +01:00
yosoyubik
108e0cd023 ames: fix syntax error 2023-02-06 16:39:00 +01:00
yosoyubik
5f9d6b23d1 ames: improve logging in dry mode for on-kroc 2023-02-06 16:39:00 +01:00
yosoyubik
24140d5f12 ames: clarify forward/backward bones 2023-02-06 16:38:59 +01:00
yosoyubik
e32c18b677 ames: style fixes and comments 2023-02-06 16:38:59 +01:00
yosoyubik
1d8214530a ames: fix |close-flows generator 2023-02-06 16:38:50 +01:00
yosoyubik
1e04e9498e ames: clean all stale %watches in on-kroc
This removes the logic from cleaning up stale subscriptions in %gall,
leaving +ap-rake as it was, and moves it to the +on-kroc arm in %ames.

Failed subscriptions from nacking a %watch plea that were
not properly corked (fixed in https://github.com/urbit/urbit/pull/6102)
are a subset of the more general "stale re-subscription" issue, so
we take care of all stale flows at the same time, by focusing on the
current  subscription—leaving all others to be corked automatically—and
checking if it received a nack, to subsequently cork it.
2023-02-06 16:38:04 +01:00
yosoyubik
ad712caccf ames, gall: move |close-flows logic to vanes
This modifies the %rake task in %gall, to select what kind of
subscriptions we try to close:

=mode %o: kill old pre-nonce subscriptions
=mode %z: kill old pre-nonce subscriptions, including sub-nonce = 0
=mode %r: kills all stale resubscription flows

It also adds a dry-run option to both tasks (%kroc in ames, %rake in gall)
2023-02-06 16:36:32 +01:00
yosoyubik
872db0efcc ames, +close-flows: combine stale flows
This combines two types of flows that can be closed:

- nacking %watch pleas
- resubscriptions that were not properly corked
2023-02-06 16:36:31 +01:00
yosoyubik
7d4959db2e ames: don't send %kroc cards in |close-flows 2023-02-06 16:36:30 +01:00
yosoyubik
7c26716bab ames: remove stale comment 2023-02-06 16:36:29 +01:00
yosoyubik
05582d12c2 ames: refactor +on-krock 2023-02-06 16:36:28 +01:00
yosoyubik
3a7bd3a67f ames: add tool for removing failed %watch flows 2023-02-06 16:36:27 +01:00
Ted Blackman
2bae8127bf
Merge branch 'develop' into i/6236/clay-cult-inspection 2023-02-03 15:31:08 -06:00
Ted Blackman
09a0da4c84 clay: refuse %cs subs scry unless at now 2023-02-03 12:33:27 -06:00
bacwyls
4c2e5460bd
clay: revise /subs %cs scry again
return an empty set instead of crashing if desk doesn't exist
2023-02-03 11:46:54 -06:00
Josh Lehman
3ec1172c5b
Merge branch 'develop' into fix-host-scry 2023-02-03 07:50:27 -08:00
bacwyls
3c7ff0c1f2
Merge branch 'develop' into bwyl/clay-subs 2023-02-03 09:47:04 -06:00
bacwyls
f75e52b9ff clay: revise scry for subscribers to a desk
Address PR6136 comments to improve the interface to this scry.
Now it looks like .^((set ship) %cs /=landscape=/subs)
  instead of .^((set ship) %cs %/subs/landscape)
2023-02-02 17:20:21 -06:00
tadad
ae6187dd06
Merge branch 'develop' into da/flow-scry 2023-02-01 15:35:15 -06:00
Philip Monk
fa451613ec
Merge pull request #6246 from urbit/i/6245/is-ok
ames: put "is ok"/"not responding" behind |ames-verb
2023-02-01 14:07:38 -07:00
fang
faa16a1811
eyre: provide proper secure flag in %host scry 2023-01-27 14:37:56 +01:00
fang
eab40abcc9
Merge branch 'develop' into fix-host-scry 2023-01-27 11:54:28 +01:00
tadad
a5e0356fd6
Merge branch 'develop' into da/flow-scry 2023-01-26 17:10:11 -06:00
dachus
9e9fdeb2c6 flow scry added, moved to lull 2023-01-26 17:04:08 -06:00
Philip Monk
8609599035 ames: put "is ok"/"not responding" behind |ames-verb
Fixes #6245
2023-01-24 13:07:19 -07:00
fang
c61a9f8bd7
clay: update %prep task for pages instead of blobs 2023-01-23 21:10:28 +01:00
fang
f2d3a64d9c
clay: add /cs/===/bloc scry for all desk blobs
Lets you retrieve all blobs from the blob store that are in use by the
desk, both presently and in all its history.
2023-01-23 20:39:18 +01:00
fang
3fa5856f94
clay: add %prep task for priming the blob store 2023-01-23 20:36:34 +01:00
fang
b3b5400cec
boot: partial prop support
Doesn't yet support pre-userspace props, and the code might need to be
shuffled around a bit, but what's here works already.
2023-01-23 20:34:56 +01:00
fang
50cfdb0f2a
clay: allow scrying out of pending requests
Implements a /cx/[our]//[now]/cult/[desk] endpoint, for getting a set of
pending requests for any given desk. We don't give the $cult for the
desk as-is, but instead slim the $roves back down into $raves, remove
clay protocol version metadata, and make sure to put our @p in place of
empty "for" fields.
2023-01-22 21:42:57 +01:00
Philip Monk
9d56637916 clay: Drop foreign %wris responses
This flow is not supported, and it was causing issues releasing
416.  This change just drops the responses to avoid crashing, but at
some point we should either support this flow or reject the request in
the first place.
2023-01-18 17:28:51 -07:00
Philip Monk
8a013d147d Merge remote-tracking branch 'origin/master' into next/arvo 2023-01-18 16:13:44 -07:00
Philip Monk
77616520c3 ames: add logging for snubbing 2023-01-17 15:16:35 -07:00
Philip Monk
ecdd16dcf3 Merge remote-tracking branch 'origin/next/arvo' into lf/ames-snub 2023-01-17 15:06:11 -07:00
fang
0556e30e08
dill: clean up old-style userspace subscriptions
As of version %5, dill uses a new wire format for its userspace
subscriptions. Its existing subscriptions (read: the one subscription
into %hood for the default session) was never updated to use this new
style.

We observed a bug on one ship, where it had both old-style and new-style
subscriptions into hood, resulting in output being rendered twice. How
exactly this happened remains as of yet unclear.

Here, we forcefully clean up the old-style subscription, and
(re)establish the equivalent new-style subscription. This will prevent
issues like this from reoccurring.
2023-01-17 19:07:57 +01:00
fang
b78902c30e
Merge branch 'next/dill' into next/arvo 2023-01-10 20:22:29 +01:00
fang
db3fcdf4d5
Merge branch 'next/arvo' into fix-host-scry 2023-01-05 13:35:22 +01:00
fang
a15111a35c
Merge branch 'next/arvo' into m/drum-sessions 2023-01-03 17:19:32 +01:00
Zach Alberico
34e8ff7616
Merge branch 'next/arvo' into ted/ames-clog-less 2022-12-15 19:17:45 -08:00
Zach Alberico
a2173f1eb3
Merge branch 'next/arvo' into lf/ames-snub 2022-12-15 17:40:04 -08:00
Liam Fitzgerald
14baf6f3d6 ames: add %snub functionality
Adds .snub to ames-state, a global blocklist for ships. If a packet is
received from a ship that is in the .snub set, it is immediately
dropped. Adds %snub to ames' $task, to allow manipulating this list
2022-12-15 13:37:14 -06:00
fang
94dd77bb0e
jael: also send %ruin breaches to catch-all subs
Previously, fake breaches triggered by a %ruin task would only get sent to
subscribers watching for the affected ship specifically. Now, we send them to
both those subscribers, and the ones watching for pubkey changes on all ships.
2022-12-13 23:52:10 +01:00
bacwyls
94519cbfbf clay: add scry for subscribers of a desk
This data is valuable for app developers and %base OTA providers
2022-12-07 17:16:11 -06:00
Tinnus Napbus
3f60cd9f90 eyre: fix %host scry so it still says secure if localhost 2022-12-01 14:17:23 +13:00
Philip Monk
c23fec3e70 Merge remote-tracking branch 'origin/next/417' into next/arvo 2022-11-28 18:32:05 -07:00
Philip Monk
4e95a45dab clay: don't clear ford cache on %trim
Most of the memory stays in gall anyway, and this means you need to
recompile everything the next time anything changes, which could be
counterproductive.  It's important that %trim not make things worse.

The functionality is moved to the debug %stir task.
2022-11-28 16:17:41 -07:00
Philip Monk
cb0bbf1e32 clay: don't eagerly build marks
Building the marks adds 50% to the memory requirements for reloading
clay on ~wicdev, from 320MB to 470MB.  This isn't worth it for now.
2022-11-28 16:11:34 -07:00
Philip Monk
38a26041c2 clay: don't add road transitions in clay
These were originally added because they reduced memory usage, primarily
by clearing the memoization cache.  Now that the memoization cache is
no longer used, we use less memory without them.  On ~wicdev-wisryt with
~30 apps, updating Clay now takes ~320MB.
2022-11-28 16:08:41 -07:00
Ted Blackman
35194a6a08
Merge pull request #6102 from urbit/yu/kill-nack-flows
ames, gall: send a %cork if getting a %nack for a %watch
2022-11-28 11:57:07 -06:00
Ted Blackman
da4046a859
Merge pull request #6076 from urbit/yu/remove-num-live
ames: remove num-live from pump-metrics
2022-11-28 11:50:01 -06:00
yosoyubik
a7eee8ae6b Merge branch 'next/arvo' into yu/kill-nack-flows 2022-11-28 17:22:15 +01:00
yosoyubik
403b3eef82 ames, gall: address feedback 2022-11-28 17:21:41 +01:00
fang
3ef5260efc
Merge branch 'next/arvo' into pkova/ruin-comets 2022-11-25 12:20:46 +01:00
Ted Blackman
fc32dde010
Merge pull request #6059 from urbit/ames-verb-fixes
ames: debug print msg formatting fixes
2022-11-23 17:23:16 -06:00
Philip Monk
c4eb399839
Merge pull request #6094 from urbit/m/jael-broader-subs
jael: send updates to all "general" pubkey subs
2022-11-22 17:27:25 -07:00
Philip Monk
15c5447a05 Merge branch 'philip/agent-clay' into next/arvo 2022-11-22 17:24:15 -07:00
fang
95e7b8598e
jael: send updates to all "general" pubkey subs
Subscribing with `[%public-keys ~]` should give updates for all ships we know
about, including moons.
2022-11-22 23:11:39 +01:00
Philip Monk
280c1cb19a clay: crash if conflicting agent names 2022-11-21 11:05:55 -07:00
yosoyubik
430233a3de ames, gall: cork flow if getting %nack for %watch 2022-11-21 14:23:19 +01:00
Philip Monk
a600ca0663 clay: don't re-commit %base during kelvin upgrade 2022-11-20 22:06:29 -07:00
Philip Monk
d5ecc3c053 lull: bump to 328 2022-11-20 20:58:39 -07:00
Philip Monk
8376a759ae clay: make compile 2022-11-20 18:41:00 -07:00
Philip Monk
45b5257c04 clay: document [tare] invariant 2022-11-17 19:32:40 -07:00
Philip Monk
8255dcd4bd clay: document [goad] invariant 2022-11-17 17:45:19 -07:00
Philip Monk
54c2b652e5 clay: document [wick] invariant 2022-11-17 17:30:06 -07:00
Philip Monk
3ec3516ccb clay: document [ergo] invariant 2022-11-17 17:19:02 -07:00
Philip Monk
df130fc015 clay: document [wake] invariant 2022-11-17 16:47:56 -07:00
yosoyubik
012c1e19bf ames: don't use num-live from pump-metrics 2022-11-17 08:38:50 -08:00
yosoyubik
8bb969c2ec Revert "ames: remove num-live from pump-metrics"
This reverts commit b2a0f2fd304f961e4db89499aedefe0be95e6239.
2022-11-17 08:38:50 -08:00
yosoyubik
a3e8607cb1 ames: remove num-live from pump-metrics 2022-11-17 08:38:50 -08:00
yosoyubik
4b0c1fab3b ames: count in flight packets in packet pump
num-live is still used—the state update will be addressed later, as well as the update in %lull
2022-11-17 08:38:50 -08:00
fang
2027907db5
Merge branch 'master' into next/arvo 2022-11-16 16:11:53 +01:00
Philip Monk
57be9e28bc clay: light cleanup 2022-11-14 16:12:20 -07:00
Philip Monk
c382eb14f9 clay: call +tare when tire might have changed 2022-11-14 14:59:44 -07:00
yosoyubik
3b5110ed1d ames: enqueue %cork in alien-agenda 2022-11-09 16:05:45 +01:00
Tinnus Napbus
d3c2c734e3 ames: debug print msg formatting fixes
- fix `fragment-num` and `num-fragments` having duplicate faces
- fix faces being wrapped around wrong things in various places
- fix `bone` not being printed in "hear last in-progess" message
- make pretty tape interpolation style more uniform
2022-11-07 21:46:15 +13:00
Liam Fitzgerald
26aac7581a ames: prevent crashes when corking an alien flow
The +on-cork handler asserts that the peer is known to us. This is the
incorrect behaviour, because it will crash when corking a flow to a peer
that is still an %alien. This can happen, for instance, when making a
gall subscription for the first time and then corking it before the
alien naturalises.
2022-11-01 15:50:10 +10:00
Philip Monk
ebf09bd248 clay: defer all calls to %wick 2022-10-26 22:09:53 -07:00