feat: add aviation and satellite tools

Add aircraft_in_area, find_aircraft, get_aircraft_track and
get_aircraft_info over the live aircraft sources, with an optional
military feed, and next_satellite_pass and satellites_overhead over the
satellite catalog and the existing pass predictor.

Source failures from the live contract now become tool errors with the
matching code, so a rate limit reaches clients as retry_later with a
wait time. Tool schemas may use pattern.
This commit is contained in:
Sameh Khamis committed 2026-10-01 12:05:50 -07:00
1 parent 9895942633
commit 22c3fe40b0
16 files changed
+1111 -16

No files matched your search

+11 -1
View File
@@ -68,7 +68,17 @@ test('the stdio server answers newline-delimited requests using only its data so
assert.equal(byId.get(null).error.code, -32700);
assert.deepEqual(
byId.get(2).result.tools.map((tool) => tool.name),
['get_earthquakes', 'get_active_fires', 'get_recent_launches'],
[
'get_earthquakes',
'get_active_fires',
'get_recent_launches',
'aircraft_in_area',
'find_aircraft',
'get_aircraft_track',
'get_aircraft_info',
'next_satellite_pass',
'satellites_overhead',
],
);
assert.equal(
byId.get(3).result.content[0].text,