@open-tomato/rafa 0.26.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -175,11 +175,12 @@ the next one, so you rarely have to remember it.
175
175
  ### Tracking effort and learning from skills
176
176
 
177
177
  Each run records what it cost in time, tokens and work, and which skills
178
- were offered, invoked and worked. Two commands read that record:
178
+ were offered, invoked and worked. Key commands for the effort record:
179
179
 
180
180
  ```bash
181
181
  rafa effort collect # gather and store session logs
182
182
  rafa effort report # per-plan summary: sessions, tasks, costs
183
+ rafa effort merge <file> # join another device's store into this one
183
184
  ```
184
185
 
185
186
  `rafa effort report` shows the per-plan tables (sessions by status and
@@ -210,6 +211,26 @@ The report opens with a fixed line explaining that it shows co-occurrence,
210
211
  not causation: a skill can be invoked and its failure recur for reasons the
211
212
  skill does not cover.
212
213
 
214
+ ### Starting a second device
215
+
216
+ To run rafa on a second device for the same project, bring the effort
217
+ store over consistently:
218
+
219
+ 1. On the new device, check for an existing `.rafa/effort/` store and set
220
+ it aside (rename or back up).
221
+ 2. From the primary device, make a consistent copy:
222
+ ```bash
223
+ rafa effort copy --to=<path>
224
+ ```
225
+ Or use `sqlite3 .rafa/effort/effort.sqlite ".backup <path>"`, but never
226
+ a plain file copy during a write.
227
+ 3. Transfer the copied store and `.rafa/config.yaml` to the new device's
228
+ `.rafa/` directory.
229
+ 4. After both devices have recorded effort, bring them back together with:
230
+ ```bash
231
+ rafa effort merge <copied-store-file>
232
+ ```
233
+
213
234
  ### Which agents and skills are involved
214
235
 
215
236
  A task line may end with a declaration, for example
@@ -376,6 +397,19 @@ from GitHub Issues:
376
397
  file `.rafa/position.json` holds your current place, where you were, and
377
398
  where you came from — the same two-slot pattern as `cd -` and
378
399
  `git checkout -`, plus a home anchor.
400
+ - **Hopping between epics with `rafa next --roadmap`.** When your epic's
401
+ work is blocked by an issue in another epic, `rafa next --roadmap`
402
+ reaches for that blocker, works it, and comes home. You hold two slots:
403
+ home (your anchor) and current (the work in hand). Reaching for a third
404
+ would mean letting go of home, so rafa halts if a blocker is itself
405
+ blocked. The pattern keeps unattended work safe: a hop into another
406
+ team's epic asks for that team's review before it changes their code.
407
+ Solo projects see a dry hop — the useful part without the permission
408
+ check. One team hops between its own epics. Several teams open a pull
409
+ request when a hop crosses to another board, and `rafa status` says
410
+ `waiting on #C (owner review)` until the team reviews and approves. The
411
+ hop record (`.rafa/hop.json`) tracks where home is and what rafa works.
412
+ When `rafa next` finishes, it deletes the record and returns home.
379
413
  - **Other trackers.** GitHub Issues is what works today. Linear support
380
414
  is being ported from the project rafa grew out of, as an optional
381
415
  add-on in a later version. For anything else, open or upvote a request