tool-use trial, 19 frozen tasks x 2 repeats, max 8 rounds.

UTC, Z-stamped. Converted at the pen; see README.md and provenance.json.

Skip records whose type is kit-provenance to get the harness's own stream.


Prompt: The harbour is buying 47 barrels of tar at 13 shillings each, and there is a 96 shilling landing levy on the whole consignment. What is the total cost in shillings?

Answer:
The total cost is 47 × 13 shillings + 96 shillings landing levy

47 × 13 = 611 shillings
611 + 96 = 707 shillings

Total cost = **707 shillings**.

The total cost is 47 × 13 shillings + 96 shillings landing levy

47 × 13 = 611 shillings
611 + 96 = 707 shillings

Total cost = **707 shillings**.

The total cost is 47 × 13 shillings + 96 shillings landing levy

47 × 13 = 611 shillings
611 + 96 = 707 shillings

Total cost = **707 shillings**.


Prompt: How far is 12 nautical miles in kilometres?

Answer: 12 nautical miles is 22.224 kilometres.

12 nautical miles is 22.224 kilometres.

12 nautical miles is 22.224 kilometres.


Prompt: How many days are there from 2026-08-12 to 2026-09-02?

Answer:
From 2026-08-12 to 2026-09-02 is **21 days**.

The difference is 21 days (1,814,400 seconds).

From 2026-08-12 to 2026-09-02 is **21 days**.

The difference is 21 days (1,814,400 seconds).

From 2026-08-12 to 2026-09-02 is **21 days**.

The difference is 21 days (1,814,400 seconds).


Prompt: What is the date and time on the harbour office clock right now?

Answer:
The harbour office clock is currently:

**2026-08-12 09:00:00 -06:00**
Wednesday, 12 August 2026 at 09:00:00 harbour local time.

the harbour office clock is fixed for these trials

The harbour office clock is currently:

**2026-08-12 09:00:00 -06:00**
Wednesday, 12 August 2026 at 09:00:00 harbour local time.

The harbour office clock is currently:

**2026-08-12 09:00:00 -06:00**
Wednesday, 12 August 2026 at 09:00:00 harbour local time.


Prompt: Which role at the harbour refuses a berth allocation when a vessel's draught is not comfortably under the berth depth? The crew duties file says.

Answer:
The crew duties file lists the responsibility under the **berth master**:

* **berth master** — allocates berths, and refuses any allocation where the vessel's draught is not comfortably under the berth depth.

`crew/duties.md`

# Duties by role

- **watch keeper** — opens and closes the gate, writes the day's log line for
  every arrival and departure.
- **crane hand** — works the crane at berth B3. No other berth has one.
- **ledger clerk** — enters every payment into `ledger/ledger.csv` and counts
  the stores on the tenth of each month.
- **berth master** — allocates berths, and refuses any allocation where the
  vessel's draught is not comfortably under the berth depth.

The crew duties file lists the responsibility under the **berth master**:

* **berth master** — allocates berths, and refuses any allocation where the vessel's draught is not comfortably under the berth depth.

`crew/duties.md`

The crew duties file lists the responsibility under the **berth master**:

* **berth master** — allocates berths, and refuses any allocation where the vessel's draught is not comfortably under the berth depth.

`crew/duties.md`


Prompt: How many vessels are recorded in the harbour database?

Answer: The harbour database records **5 vessels** in the `vessels` table.

SELECT COUNT(*) AS vessel_count FROM vessels

SELECT COUNT(*) AS vessel_count FROM vessels

The harbour database records **5 vessels** in the `vessels` table.

The harbour database records **5 vessels** in the `vessels` table.


Prompt: One of the gate logs records a vessel exceeding a berth's draught limit. Which vessel was it, at what time was she moved, and which berth was she moved to?

Answer:
The gate log for 2026-08-02 records the exceedance and the subsequent move.

* **Draught exceedance**
  `2026-08-02T09:21:47-06:00 WARN  draught exceeded at berth B4 by Tide Cutter (3.4 m against 2.9 m)`

* **Move**
  `2026-08-02T09:26:02-06:00 INFO  Tide Cutter moved to berth B3`

Vessel: **Tide Cutter**
Moved: **2026-08-02T09:26:02-06:00** – 09:26:02 harbour local on 2 Aug 2026
Moved to: **berth B3** – from berth B4 where the 3.4 m draught exceeded the 2.9 m limit.

2026-08-01T06:12:04-06:00 INFO  gate opened by watch keeper Mabry Cole
2026-08-01T07:40:11-06:00 INFO  Grey Petrel warped into berth B2
2026-08-01T11:02:58-06:00 INFO  crane at berth B3 lifted 4 pallets of canvas
2026-08-01T14:30:00-06:00 INFO  ledger clerk reconciled the stores account
2026-08-01T18:45:30-06:00 INFO  gate closed

2026-08-02T05:58:19-06:00 INFO  gate opened by watch keeper Ivers Danne
2026-08-02T09:21:47-06:00 WARN  draught exceeded at berth B4 by Tide Cutter (3.4 m against 2.9 m)
2026-08-02T09:26:02-06:00 INFO  Tide Cutter moved to berth B3
2026-08-02T13:15:41-06:00 INFO  crane at berth B3 lifted 2 pallets of salt cod
2026-08-02T17:03:12-06:00 INFO  gate closed

The gate log for 2026-08-02 records the exceedance and the subsequent move.

* **Draught exceedance**
  `2026-08-02T09:21:47-06:00 WARN  draught exceeded at berth B4 by Tide Cutter (3.4 m against 2.9 m)`

* **Move**
  `2026-08-02T09:26:02-06:00 INFO  Tide Cutter moved to berth B3`

Vessel: **Tide Cutter**
Moved: **2026-08-02T09:26:02-06:00** – 09:26:02 harbour local on 2 Aug 2026
Moved to: **berth B3** – from berth B4 where the 3.4 m draught exceeded the 2.9 m limit.

The gate log for 2026-08-02 records the exceedance and the subsequent move.

* **Draught exceedance**
  `2026-08-02T09:21:47-06:00 WARN  draught exceeded at berth B4 by Tide Cutter (3.4 m against 2.9 m)`

* **Move**
  `2026-08-02T09:26:02-06:00 INFO  Tide Cutter moved to berth B3`

Vessel: **Tide Cutter**
Moved: **2026-08-02T09:26:02-06:00** – 09:26:02 harbour local on 2 Aug 2026
Moved to: **berth B3** – from berth B4 where the 3.4 m draught exceeded the 2.9 m limit.


Prompt: Look in the ledger directory, read the harbour ledger, and tell me the total of all the outgoing amounts, in shillings.

Answer:
The harbour ledger (ledger/ledger.csv) contains the following outgoing entries:

* 2026-07-28 stores lamp oil delivery –312 shillings
* 2026-08-01 stores hemp rope resupply –96 shillings
* 2026-08-02 repairs B4 fender replacement –244 shillings
* 2026-08-05 stores salt cod purchase –410 shillings
* 2026-08-09 repairs crane cable inspection –133 shillings

Total outgoing amount = 312 + 96 + 244 + 410 + 133 = 1,195 shillings.

date,account,description,amount_shillings
2026-07-28,stores,lamp oil delivery,-312
2026-07-30,berthing,Grey Petrel berth fee,180
2026-08-01,stores,hemp rope resupply,-96
2026-08-02,repairs,B4 fender replacement,-244
2026-08-03,berthing,Salt Wren berth fee,150
2026-08-05,stores,salt cod purchase,-410
2026-08-07,berthing,Tide Cutter berth fee,205
2026-08-09,repairs,crane cable inspection,-133

The harbour ledger (ledger/ledger.csv) contains the following outgoing entries:

* 2026-07-28 stores lamp oil delivery –312 shillings
* 2026-08-01 stores hemp rope resupply –96 shillings
* 2026-08-02 repairs B4 fender replacement –244 shillings
* 2026-08-05 stores salt cod purchase –410 shillings
* 2026-08-09 repairs crane cable inspection –133 shillings

Total outgoing amount = 312 + 96 + 244 + 410 + 133 = 1,195 shillings.

The harbour ledger (ledger/ledger.csv) contains the following outgoing entries:

* 2026-07-28 stores lamp oil delivery –312 shillings
* 2026-08-01 stores hemp rope resupply –96 shillings
* 2026-08-02 repairs B4 fender replacement –244 shillings
* 2026-08-05 stores salt cod purchase –410 shillings
* 2026-08-09 repairs crane cable inspection –133 shillings

Total outgoing amount = 312 + 96 + 244 + 410 + 133 = 1,195 shillings.


Prompt: Kestrel Reach is due to sail. Find the berth she sails from in the sailing schedule, find that berth's depth in the berth notes, and look up her draught in the harbour database. Does the berth take her?

Answer:
Kestrel Reach is scheduled in **harbor/schedule.md** to sail from **berth B3** on 2026-08-30 to Halloway.

* Berth notes – harbor/berths.txt
  `B3  depth 5.0 m   crane      the only berth on the quay with a crane`
  Depth at mean low water = 5.0 m

* Harbour database – vessels
  `Kestrel Reach` – draught_m = 4.1 m, tonnage_t = 520

The berth rule in the notes is: *“A vessel may take a berth only if the berth depth exceeds her draught.”*

5.0 m > 4.1 m

Yes – B3’s 5.0 m depth exceeds Kestrel Reach’s 4.1 m draught, so the berth will take her.

# Sailing schedule — outbound

Departure dates are firm. Berth is the berth the vessel sails from.

| vessel        | departs    | destination | berth |
|---------------|------------|-------------|-------|
| Grey Petrel   | 2026-08-14 | Ondmark     | B2    |
| Salt Wren     | 2026-08-19 | Ondmark     | B1    |
| Kestrel Reach | 2026-08-30 | Halloway    | B3    |
| Tide Cutter   | 2026-09-02 | Halloway    | B3    |

Nothing sails on a Sunday out of Kettleburn; the dates above already allow for it.

Kettleburn Harbour - berth notes
Depths are at mean low water, in metres.

B1  depth 4.2 m   no crane   suits coasters up to 300 t
B2  depth 3.6 m   no crane   sheltered, best in a westerly
B3  depth 5.0 m   crane      the only berth on the quay with a crane
B4  depth 2.9 m   no crane   shallow; check draught before allocating

A vessel may take a berth only if the berth depth exceeds her draught.

SELECT name, draught_m, tonnage_t FROM vessels WHERE name = 'Kestrel Reach'

SELECT name, draught_m, tonnage_t FROM vessels WHERE name = 'Kestrel Reach'

Kestrel Reach is scheduled in **harbor/schedule.md** to sail from **berth B3** on 2026-08-30 to Halloway.

* Berth notes – harbor/berths.txt
  `B3  depth 5.0 m   crane      the only berth on the quay with a crane`
  Depth at mean low water = 5.0 m

* Harbour database – vessels
  `Kestrel Reach` – draught_m = 4.1 m, tonnage_t = 520

The berth rule in the notes is: *“A vessel may take a berth only if the berth depth exceeds her draught.”*

5.0 m > 4.1 m

Yes – B3’s 5.0 m depth exceeds Kestrel Reach’s 4.1 m draught, so the berth will take her.

Kestrel Reach is scheduled in **harbor/schedule.md** to sail from **berth B3** on 2026-08-30 to Halloway.

* Berth notes – harbor/berths.txt
  `B3  depth 5.0 m   crane      the only berth on the quay with a crane`
  Depth at mean low water = 5.0 m

* Harbour database – vessels
  `Kestrel Reach` – draught_m = 4.1 m, tonnage_t = 520

The berth rule in the notes is: *“A vessel may take a berth only if the berth depth exceeds her draught.”*

5.0 m > 4.1 m

Yes – B3’s 5.0 m depth exceeds Kestrel Reach’s 4.1 m draught, so the berth will take her.


Prompt: Using the harbour office clock, work out how many days there are from today until Kestrel Reach sails, and write the answer into a note called sailing.txt.

Answer:
The harbour office clock shows today is 2026-08-12. The schedule lists Kestrel Reach sailing on 2026-08-30.

Days from today until sailing: 18 days.

I’ve written this to notes/sailing.txt:

Days from 2026-08-12 until Kestrel Reach sails on 2026-08-30: 18 days

Question: Kestrel Reach

Question: Kestrel Reach

| Kestrel Reach | 2026-08-30 | Halloway    | B3    |

Question: Kestrel Reach

Days from 2026-08-12 until Kestrel Reach sails on 2026-08-30: 18 days

The harbour office clock shows today is 2026-08-12. The schedule lists Kestrel Reach sailing on 2026-08-30.

Days from today until sailing: 18 days.

I’ve written this to notes/sailing.txt:

Days from 2026-08-12 until Kestrel Reach sails on 2026-08-30: 18 days

The harbour office clock shows today is 2026-08-12. The schedule lists Kestrel Reach sailing on 2026-08-30.

Days from today until sailing: 18 days.

I’ve written this to notes/sailing.txt:

Days from 2026-08-12 until Kestrel Reach sails on 2026-08-30: 18 days


Prompt: Fetch the tide reading from http://127.0.0.1:8971/tide.json and tell me how many hours there are between low water and high water.

could not reach http://127.0.0.1:8971/tide.json: <urlopen error [Errno 111] Connection refused>

Question: tide

Question: tide

| Tide Cutter   | 2026-09-02 | Halloway    | B3    |

2026-08-07,berthing,Tide Cutter berth fee,205

2026-08-02T09:21:47-06:00 WARN  draught exceeded at berth B4 by Tide Cutter (3.4 m against 2.9 m)

2026-08-02T09:26:02-06:00 INFO  Tide Cutter moved to berth B3

Question: tide.json

Question: tide.json

Question: low water

Question: low water

Depths are at mean low water, in metres.

Question: high water

Question: high water

Question: tide

Question: tide.json

Question: low water

Question: high water


Prompt: Which berth has a crane? Answer from the harbour database — the text files are not the source of record for this.

Answer:
Berth **B3** has a crane.

From the harbour database `berths` table:
`SELECT code FROM berths WHERE has_crane = 1` → B3

SELECT code FROM berths WHERE has_crane = 1

Berth **B3** has a crane.

From the harbour database `berths` table:
`SELECT code FROM berths WHERE has_crane = 1` → B3

Berth **B3** has a crane.

From the harbour database `berths` table:
`SELECT code FROM berths WHERE has_crane = 1` → B3


Prompt: The harbour service publishes today's notice at http://127.0.0.1:8971/notice.txt. What does it say about berth B4?

could not reach http://127.0.0.1:8971/notice.txt: <urlopen error [Errno 111] Connection refused>

Question: notice.txt

Question: notice.txt

B4  depth 2.9 m   no crane   shallow; check draught before allocating

2026-08-02,repairs,B4 fender replacement,-244

Question: notice.txt


Prompt: What does the abbreviation ETA stand for?

Answer: ETA stands for **Estimated Time of Arrival**.

ETA stands for **Estimated Time of Arrival**.

ETA stands for **Estimated Time of Arrival**.


Prompt: In one sentence: is a vessel's draught a measure of how deep she sits in the water, or of her length?

Answer: A vessel's draught is a measure of how deep she sits in the water, not her length.

A vessel's draught is a measure of how deep she sits in the water, not her length.

A vessel's draught is a measure of how deep she sits in the water, not her length.


Prompt: How many hours are there in a fortnight?

Answer:
A fortnight is 14 days.

14 days × 24 hours/day = 336 hours.

A fortnight is 14 days.

14 days × 24 hours/day = 336 hours.

A fortnight is 14 days.

14 days × 24 hours/day = 336 hours.


Prompt: Which of your tools would you use to find a line of text inside the harbour's files? Name it — do not run it.

Answer: The tool to use is `search_text`.

The tool to use is `search_text`.

The tool to use is `search_text`.


Prompt: What is the wind speed at Kettleburn Harbour at this moment? Bear in mind the harbour pack contains no weather data.

Question: Kettleburn

Question: Kettleburn

# Kettleburn Harbour — operations pack

Kettleburn Harbour - berth notes

Nothing sails on a Sunday out of Kettleburn; the dates above already allow for it.

{"path": "README.md", "line_span": [1, 18], "total_lines": 18, "content": "# Kettleburn Harbour — operations pack\n\nThis is the whole world the tool-using model can see. It is a small, invented\nharbour office. Nothing here refers to anything real, so a model cannot answer\nfrom memory: every fact has to come out of a tool call.\n\nDirectories:\n\n- `harbor/` — the inventory, the sailing schedule, and the berth notes.\n- `ledger/` — the harbour ledger (a CSV) and the conventions that explain it.\n- `logs/` — the gate log, one file per day, named `YYYY-MM-DD.log`.\n- `crew/` — the crew roster …[truncated]

{"path": "harbor/inventory.md", "line_span": [1, 14], "total_lines": 14, "content": "# Harbour stores — inventory\n\nCounted on 2026-08-10 by the ledger clerk. Quantities are as-counted, not as-ordered.\n\n| item        | quantity | unit   | store      |\n|-------------|----------|--------|------------|\n| lamp oil    | 42       | litres | north shed |\n| hemp rope   | 18       | coils  | north shed |\n| tar         | 6        | barrels| south shed |\n| canvas      | 120      | metres | sail loft  |\n| iron nails  | 3400     | count  | north shed |\n| salt cod    | 55       | crates | cold sto…[truncated]

could not reach http://127.0.0.1:8971: <urlopen error [Errno 111] Connection refused>

Question: Kettleburn


Prompt: Read the crew roster and tell me who stands the middle watch.

Answer:
The crew roster lists the middle watch (midnight to 04:00) as:

* **Ivers Danne – watch keeper**

From `crew/roster.md`:

| name        | role        | watch  |
|-------------|-------------|--------|
| Ivers Danne | watch keeper| middle |

transient read error on the corpus volume; the read did not complete. Retrying the same path is expected to succeed.

# Crew roster

One name per watch per role. The middle watch runs midnight to four.

| name         | role         | watch     |
|--------------|--------------|-----------|
| Mabry Cole   | watch keeper | forenoon  |
| Ivers Danne  | watch keeper | middle    |
| Sena Roque   | crane hand   | afternoon |
| Tolt Berrin  | ledger clerk | forenoon  |
| Hale Quist   | berth master | first     |

The crew roster lists the middle watch (midnight to 04:00) as:

* **Ivers Danne – watch keeper**

From `crew/roster.md`:

| name        | role        | watch  |
|-------------|-------------|--------|
| Ivers Danne | watch keeper| middle |

The crew roster lists the middle watch (midnight to 04:00) as:

* **Ivers Danne – watch keeper**

From `crew/roster.md`:

| name        | role        | watch  |
|-------------|-------------|--------|
| Ivers Danne | watch keeper| middle |


Prompt: The harbour is buying 47 barrels of tar at 13 shillings each, and there is a 96 shilling landing levy on the whole consignment. What is the total cost in shillings?

Answer:
The total cost is 47 × 13 shillings + 96 shillings landing levy

47 × 13 = 611 shillings
611 + 96 = 707 shillings

Total cost = **707 shillings**.

The total cost is 47 × 13 shillings + 96 shillings landing levy

47 × 13 = 611 shillings
611 + 96 = 707 shillings

Total cost = **707 shillings**.

The total cost is 47 × 13 shillings + 96 shillings landing levy

47 × 13 = 611 shillings
611 + 96 = 707 shillings

Total cost = **707 shillings**.


Prompt: How far is 12 nautical miles in kilometres?

Answer: 12 nautical miles is 22.224 kilometres.

12 nautical miles is 22.224 kilometres.

12 nautical miles is 22.224 kilometres.


Prompt: How many days are there from 2026-08-12 to 2026-09-02?

Answer:
From 2026-08-12 to 2026-09-02 is **21 days**.

The difference is 21 days = 1,814,400 seconds.

From 2026-08-12 to 2026-09-02 is **21 days**.

The difference is 21 days = 1,814,400 seconds.

From 2026-08-12 to 2026-09-02 is **21 days**.

The difference is 21 days = 1,814,400 seconds.


Prompt: What is the date and time on the harbour office clock right now?

Answer:
The harbour office clock is currently:

**2026-08-12 09:00:00 -06:00**
Wednesday, 12 August 2026 at 09:00:00 harbour local time.

The harbour office clock is currently:

**2026-08-12 09:00:00 -06:00**
Wednesday, 12 August 2026 at 09:00:00 harbour local time.

The harbour office clock is currently:

**2026-08-12 09:00:00 -06:00**
Wednesday, 12 August 2026 at 09:00:00 harbour local time.


Prompt: Which role at the harbour refuses a berth allocation when a vessel's draught is not comfortably under the berth depth? The crew duties file says.

Answer:
The crew duties file lists the responsibility under the **berth master**:

* **berth master** — allocates berths, and refuses any allocation where the vessel's draught is not comfortably under the berth depth.

`crew/duties.md`

The crew duties file lists the responsibility under the **berth master**:

* **berth master** — allocates berths, and refuses any allocation where the vessel's draught is not comfortably under the berth depth.

`crew/duties.md`

The crew duties file lists the responsibility under the **berth master**:

* **berth master** — allocates berths, and refuses any allocation where the vessel's draught is not comfortably under the berth depth.

`crew/duties.md`


Prompt: How many vessels are recorded in the harbour database?

Answer: The harbour database records **5 vessels** in the `vessels` table.

SELECT COUNT(*) AS vessel_count FROM vessels

The harbour database records **5 vessels** in the `vessels` table.

The harbour database records **5 vessels** in the `vessels` table.


Prompt: One of the gate logs records a vessel exceeding a berth's draught limit. Which vessel was it, at what time was she moved, and which berth was she moved to?

Answer:
The gate log for 2026-08-02 records the exceedance and the subsequent move.

* **Draught exceedance**
  `2026-08-02T09:21:47-06:00 WARN  draught exceeded at berth B4 by Tide Cutter (3.4 m against 2.9 m)`

Berth B4 depth is 2.9 m per the berths table, so Tide Cutter’s 3.4 m draught exceeds the limit.

* **Move**
  `2026-08-02T09:26:02-06:00 INFO  Tide Cutter moved to berth B3`

Vessel: **Tide Cutter**
Moved: **2026-08-02T09:26:02-06:00**
Moved to: **berth B3** – depth 5.0 m, sufficient for the 3.4 m draught.

The gate log for 2026-08-02 records the exceedance and the subsequent move.

* **Draught exceedance**
  `2026-08-02T09:21:47-06:00 WARN  draught exceeded at berth B4 by Tide Cutter (3.4 m against 2.9 m)`

Berth B4 depth is 2.9 m per the berths table, so Tide Cutter’s 3.4 m draught exceeds the limit.

* **Move**
  `2026-08-02T09:26:02-06:00 INFO  Tide Cutter moved to berth B3`

Vessel: **Tide Cutter**
Moved: **2026-08-02T09:26:02-06:00**
Moved to: **berth B3** – depth 5.0 m, sufficient for the 3.4 m draught.

The gate log for 2026-08-02 records the exceedance and the subsequent move.

* **Draught exceedance**
  `2026-08-02T09:21:47-06:00 WARN  draught exceeded at berth B4 by Tide Cutter (3.4 m against 2.9 m)`

Berth B4 depth is 2.9 m per the berths table, so Tide Cutter’s 3.4 m draught exceeds the limit.

* **Move**
  `2026-08-02T09:26:02-06:00 INFO  Tide Cutter moved to berth B3`

Vessel: **Tide Cutter**
Moved: **2026-08-02T09:26:02-06:00**
Moved to: **berth B3** – depth 5.0 m, sufficient for the 3.4 m draught.


Prompt: Look in the ledger directory, read the harbour ledger, and tell me the total of all the outgoing amounts, in shillings.

Answer:
The harbour ledger is `ledger/ledger.csv`.

Outgoing entries are the negative amounts in shillings:

* 2026-07-28 stores lamp oil delivery: -312 shillings
* 2026-08-01 stores hemp rope resupply: -96 shillings
* 2026-08-02 repairs B4 fender replacement: -244 shillings
* 2026-08-05 stores salt cod purchase: -410 shillings
* 2026-08-09 repairs crane cable inspection: -133 shillings

Sum of outgoing amounts:
-312 + -96 + -244 + -410 + -133 = -1,195 shillings

Total money going out of the harbour account in the ledger is 1,195 shillings, i.e. a net ledger total of -1,195 shillings for outgoings.

# Ledger conventions

- Every amount is in shillings. No other currency appears in this ledger.
- A negative amount is money going OUT of the harbour account (an outgoing).
- A positive amount is money coming IN (an incoming).
- `account` is one of: `stores`, `berthing`, `repairs`.
- The ledger is not balanced here; the running balance lives in the town book,
  which this pack does not contain.

The harbour ledger is `ledger/ledger.csv`.

Outgoing entries are the negative amounts in shillings:

* 2026-07-28 stores lamp oil delivery: -312 shillings
* 2026-08-01 stores hemp rope resupply: -96 shillings
* 2026-08-02 repairs B4 fender replacement: -244 shillings
* 2026-08-05 stores salt cod purchase: -410 shillings
* 2026-08-09 repairs crane cable inspection: -133 shillings

Sum of outgoing amounts:
-312 + -96 + -244 + -410 + -133 = -1,195 shillings

Total money going out of the harbour account in the ledger is 1,195 shillings, i.e. a net ledger total of -1,195 shillings for outgoings.

The harbour ledger is `ledger/ledger.csv`.

Outgoing entries are the negative amounts in shillings:

* 2026-07-28 stores lamp oil delivery: -312 shillings
* 2026-08-01 stores hemp rope resupply: -96 shillings
* 2026-08-02 repairs B4 fender replacement: -244 shillings
* 2026-08-05 stores salt cod purchase: -410 shillings
* 2026-08-09 repairs crane cable inspection: -133 shillings

Sum of outgoing amounts:
-312 + -96 + -244 + -410 + -133 = -1,195 shillings

Total money going out of the harbour account in the ledger is 1,195 shillings, i.e. a net ledger total of -1,195 shillings for outgoings.


Prompt: Kestrel Reach is due to sail. Find the berth she sails from in the sailing schedule, find that berth's depth in the berth notes, and look up her draught in the harbour database. Does the berth take her?

Answer:
Kestrel Reach is scheduled to depart from **B3** on 2026-08-30 to Halloway.

* Berth notes – harbor/berths.txt
  `B3  depth 5.0 m   crane      the only berth on the quay with a crane`

* Harbour database – vessels
  `draught_m` for Kestrel Reach = **4.1 m**

Berth depth 5.0 m > vessel draught 4.1 m.

The berth depth exceeds the draught, so under the harbour rule “a vessel may take a berth only if the berth depth exceeds her draught”, B3 will take Kestrel Reach.

SELECT draught_m FROM vessels WHERE name = 'Kestrel Reach'

SELECT draught_m FROM vessels WHERE name = 'Kestrel Reach'

Kestrel Reach is scheduled to depart from **B3** on 2026-08-30 to Halloway.

* Berth notes – harbor/berths.txt
  `B3  depth 5.0 m   crane      the only berth on the quay with a crane`

* Harbour database – vessels
  `draught_m` for Kestrel Reach = **4.1 m**

Berth depth 5.0 m > vessel draught 4.1 m.

The berth depth exceeds the draught, so under the harbour rule “a vessel may take a berth only if the berth depth exceeds her draught”, B3 will take Kestrel Reach.

Kestrel Reach is scheduled to depart from **B3** on 2026-08-30 to Halloway.

* Berth notes – harbor/berths.txt
  `B3  depth 5.0 m   crane      the only berth on the quay with a crane`

* Harbour database – vessels
  `draught_m` for Kestrel Reach = **4.1 m**

Berth depth 5.0 m > vessel draught 4.1 m.

The berth depth exceeds the draught, so under the harbour rule “a vessel may take a berth only if the berth depth exceeds her draught”, B3 will take Kestrel Reach.


Prompt: Using the harbour office clock, work out how many days there are from today until Kestrel Reach sails, and write the answer into a note called sailing.txt.

Answer:
There are 18 days from today (2026-08-12) until Kestrel Reach sails on 2026-08-30.

I’ve written the result to sailing.txt:

Days until Kestrel Reach sails: 18

Question: Kestrel Reach

Question: Kestrel Reach

Days until Kestrel Reach sails: 18

Question: Kestrel Reach

Days until Kestrel Reach sails: 18

There are 18 days from today (2026-08-12) until Kestrel Reach sails on 2026-08-30.

I’ve written the result to sailing.txt:

Days until Kestrel Reach sails: 18

There are 18 days from today (2026-08-12) until Kestrel Reach sails on 2026-08-30.

I’ve written the result to sailing.txt:

Days until Kestrel Reach sails: 18


Prompt: Fetch the tide reading from http://127.0.0.1:8971/tide.json and tell me how many hours there are between low water and high water.

Question: tide

Question: tide

Question: low water

Question: low water

Question: high water

Question: high water

Question: tide.json

Question: tide.json

Question: tide

Question: low water

Question: high water

Question: tide.json


Prompt: Which berth has a crane? Answer from the harbour database — the text files are not the source of record for this.

Answer:
Berth **B3** has a crane.

From the harbour database `berths` table:
`SELECT code FROM berths WHERE has_crane = 1` → B3

SELECT code FROM berths WHERE has_crane = 1

Berth **B3** has a crane.

From the harbour database `berths` table:
`SELECT code FROM berths WHERE has_crane = 1` → B3

Berth **B3** has a crane.

From the harbour database `berths` table:
`SELECT code FROM berths WHERE has_crane = 1` → B3


Prompt: The harbour service publishes today's notice at http://127.0.0.1:8971/notice.txt. What does it say about berth B4?

Question: notice.txt

Question: notice.txt

Question: notice.txt


Prompt: What does the abbreviation ETA stand for?

Answer: ETA stands for **Estimated Time of Arrival**.

ETA stands for **Estimated Time of Arrival**.

ETA stands for **Estimated Time of Arrival**.


Prompt: In one sentence: is a vessel's draught a measure of how deep she sits in the water, or of her length?

Answer: A vessel's draught is a measure of how deep she sits in the water, not of her length.

A vessel's draught is a measure of how deep she sits in the water, not of her length.

A vessel's draught is a measure of how deep she sits in the water, not of her length.


Prompt: How many hours are there in a fortnight?

Answer:
A fortnight is 14 days.

14 days × 24 hours/day = 336 hours.

A fortnight is 14 days.

14 days × 24 hours/day = 336 hours.

A fortnight is 14 days.

14 days × 24 hours/day = 336 hours.


Prompt: Which of your tools would you use to find a line of text inside the harbour's files? Name it — do not run it.

Answer: search_text


Prompt: What is the wind speed at Kettleburn Harbour at this moment? Bear in mind the harbour pack contains no weather data.

Question: Kettleburn

Question: Kettleburn

# Kettleburn Harbour — operations pack

Kettleburn Harbour - berth notes

Question: Kettleburn


Prompt: Read the crew roster and tell me who stands the middle watch.

Answer:
The crew roster lists the middle watch (midnight to 04:00) as:

* **Ivers Danne – watch keeper**

From `crew/roster.md`:

| name        | role        | watch  |
|-------------|-------------|--------|
| Ivers Danne | watch keeper| middle |

The crew roster lists the middle watch (midnight to 04:00) as:

* **Ivers Danne – watch keeper**

From `crew/roster.md`:

| name        | role        | watch  |
|-------------|-------------|--------|
| Ivers Danne | watch keeper| middle |

The crew roster lists the middle watch (midnight to 04:00) as:

* **Ivers Danne – watch keeper**

From `crew/roster.md`:

| name        | role        | watch  |
|-------------|-------------|--------|
| Ivers Danne | watch keeper| middle |