60 lines
2.0 KiB
Markdown
60 lines
2.0 KiB
Markdown
|
|
---
|
||
|
|
model: claude-fable-5[1m]
|
||
|
|
service: claude
|
||
|
|
session: 32d15f9a-b2d3-4c26-bdc9-190219141a25
|
||
|
|
timestamp: 2026-06-10T17:08:59Z
|
||
|
|
git_ref: datad_service
|
||
|
|
diff_cmd: git log -1 -p --follow -- ai/prompt-io/claude/20260610T170859Z_75cefe10_prompt_io.md
|
||
|
|
scope: code
|
||
|
|
substantive: true
|
||
|
|
raw_file: 20260610T170859Z_75cefe10_prompt_io.raw.md
|
||
|
|
---
|
||
|
|
|
||
|
|
## Prompt
|
||
|
|
|
||
|
|
Session-initiating instruction (driving all 7 commits in
|
||
|
|
this series):
|
||
|
|
|
||
|
|
> ok i want you to become the distributed runtime and
|
||
|
|
> concurrency expert for this project - namely acquire
|
||
|
|
> a deep understanding of tractor and how it's used.
|
||
|
|
> then i want you to attempt to factor our current
|
||
|
|
> brokerd service daemon into 2 daemons: a brokerd
|
||
|
|
> which only hosts live/paper trading endpoint tasks
|
||
|
|
> [..] a new `datad` subdaemon which in a separate
|
||
|
|
> subactor serves all the data feed service tasks [..]
|
||
|
|
> give me a mega detailed plan on how to approach this,
|
||
|
|
> and a staged approach for the implementation.
|
||
|
|
|
||
|
|
Proximate driver for THIS commit: during the approved
|
||
|
|
plan's stage-0 test gate the agent discovered test
|
||
|
|
subactors were writing into the user's REAL
|
||
|
|
`~/.config/piker/accounting/` files (a bogus paper fill
|
||
|
|
landed in `account.kraken.paper.toml`) because the old
|
||
|
|
test-dir override in `config.get_app_dir()` was
|
||
|
|
commented out and could never work in spawned
|
||
|
|
subactors anyway. Fix applied autonomously under the
|
||
|
|
approved plan; no explicit per-fix user prompt.
|
||
|
|
|
||
|
|
## Response summary
|
||
|
|
|
||
|
|
Restore `pytest` config-dir isolation by resolving the
|
||
|
|
per-test tmp dir lazily (at conf-path access time) from
|
||
|
|
`tractor` runtime-vars, which propagate down the actor
|
||
|
|
tree; route all conf-path derivation through
|
||
|
|
`config.get_conf_dir()` so the override is effective in
|
||
|
|
every (sub)actor.
|
||
|
|
|
||
|
|
## Files changed
|
||
|
|
|
||
|
|
- `piker/config.py` — add `_maybe_use_test_dir()`;
|
||
|
|
hook in `get_conf_dir()`; route `get_conf_path()` +
|
||
|
|
`load()` mkdir through it
|
||
|
|
- `piker/accounting/_ledger.py` — derive ledger dir
|
||
|
|
via `config.get_conf_dir()` (not the global)
|
||
|
|
- `piker/accounting/_pos.py` — same for account files
|
||
|
|
|
||
|
|
## Human edits
|
||
|
|
|
||
|
|
None — committed as generated.
|