Skip to content

Commit 42ac757

Browse files
committed
docs: add the Track C findings to the agent guide
Track C finished: 13 of 16 implementation attempts passed. Its report proposed three more changes, applied here: - Codex opened the agent guide in 1 of 8 attempts. The README now names the agent guide at the start of Installation. - One attempt computed expiry from the clock in a query, so a hold read as released before the reminder ran. The agent guide now says that a reminder changes state only when it runs and that a query must read the committed state. - The current-release note now also appears where Track C pointed.
1 parent 9f1c072 commit 42ac757

4 files changed

Lines changed: 11 additions & 1 deletion

File tree

‎CHANGELOG.md‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
## Unreleased
44

5+
- The README names the agent guide at the start of Installation, and the agent
6+
guide says that a reminder changes state only when it runs under
7+
`solid_objects start`, so a query must not compute expiry from the clock.
58
- `docs/agents.md` now tells agents to install the current release instead of
69
a remembered version, says that step 5 is required before the first call,
710
shows the two arguments of `reject`, and lists four API mistakes from

‎README.md‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ And so much more.
4444

4545
## Installation
4646

47-
Solid Objects requires Ruby 3.3 or newer and Rails 7.1 or newer.
47+
Solid Objects requires Ruby 3.3 or newer and Rails 7.1 or newer. Coding agents
48+
should follow the [agent guide](docs/agents.md), which gives each step in order.
4849

4950
```bash
5051
bundle add solid_objects

‎docs/agents.md‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,9 @@ Obey these rules in actor code:
166166
write in the same database.
167167
- Do not call an external API in a handler. Use `emit` and an effect handler.
168168
- Write each handler so that it can run again. Delivery is at least once.
169+
- A reminder changes state only when it runs, and it runs only while
170+
`solid_objects start` runs. Do not compute expiry from the clock in a query;
171+
read the state that the reminder committed.
169172

170173
Avoid these mistakes:
171174

‎examples/quickstart/README.md‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,9 @@ bin/rails db:migrate
4646
bin/rails solid_objects:doctor
4747
```
4848

49+
`bundle add solid_objects` installs the current release. Do not pin an older
50+
version from memory; the API changed between releases.
51+
4952
The generator writes `config/initializers/solid_objects.rb` and copies the
5053
migrations. The migrations add the Solid Objects tables to the application's
5154
existing database.

0 commit comments

Comments
 (0)