]> git.giacomolli.uk - onechat/blobdiff - README.rst
Import WhatsApp history into a child
[onechat] / README.rst
index 7912d0daa3c618ac8bc0f412ed8eeeacdcd8b624..7ca3d74315c900dd4a41e61dfab3b03ef8ba9211 100644 (file)
@@ -556,21 +556,34 @@ first:
 
    onechat import -n CHAT.zip OTHER.zip
    onechat import CHAT.zip OTHER.zip
 
    onechat import -n CHAT.zip OTHER.zip
    onechat import CHAT.zip OTHER.zip
-
-``-n`` makes no model call and prints the chats, chat-day batches, local
-dates, cutoff, text bytes, merged message count, and estimated calls.
-The import keeps multiline text, system lines, and omitted-media
-markers. It maps the session's profile name to ``You``. Without that
-name, it keeps the senders as written and says so in the plan. An exact,
-unambiguous local contact or batch name supplies the chat ID when known.
-No network lookup is made.
+   onechat import -n --agent House CHAT.zip OTHER.zip
+   onechat import --agent House CHAT.zip OTHER.zip
+
+The target is the root unless ``--agent NAME`` selects an existing
+direct child. A missing child is refused. The rebuild uses the target's
+log, prompt, cache key, and usage records. The root keeps its history
+when the target is a child. An import or plan is refused while the
+target has pending agent deliveries. Start the daemon and let those
+turns finish before you stop it and try again. This keeps their saved
+log IDs valid.
+
+``-n`` makes no model call and prints the target name, chats, chat-day
+batches, local dates, cutoffs, text bytes, merged message count, and
+estimated calls. The import keeps multiline text, system lines, and
+omitted-media markers. It maps the session's profile name to ``You``.
+Without that name, it keeps the senders as written and says so in the
+plan. An exact, unambiguous local contact or batch name supplies the
+chat ID when known. No network lookup is made.
 
 Each chat and local day becomes one work message marked ``(imported)``.
 
 Each chat and local day becomes one work message marked ``(imported)``.
-Only messages before the first message of the earliest live WhatsApp
-batch enter the import. Live times have minute precision, so the cutoff
-excludes that whole minute. A chat-day already imported is skipped.
-Overlapping chat-days in the supplied ZIPs are refused. Review the
-exports before import: their text goes to the model as chat history.
+For each chat, the cutoff is the first message time of its earliest live
+WhatsApp batch across the root and target logs. Only messages before
+that cutoff enter the import. Live times have minute precision, so the
+cutoff excludes that whole minute. A chat-day already imported into the
+target is skipped. An imported day held only by the root does not skip
+that day for a child. Overlapping chat-days in the supplied ZIPs are
+refused. Review the exports before import: their text goes to the model
+as chat history.
 
 The import merges the full log in date order and builds its tree with
 real compactor calls, the agent prompt, and the agent cache key. It uses
 
 The import merges the full log in date order and builds its tree with
 real compactor calls, the agent prompt, and the agent cache key. It uses
@@ -579,9 +592,11 @@ the same usage report. Its estimate is about 1.3 calls per merged
 message, not a cost guarantee. A stopped or failed run leaves the agent
 unchanged. A new run starts over. Success keeps the other agent files
 and renames the old directory to ``agent-backup-TIMESTAMP`` before it
 message, not a cost guarantee. A stopped or failed run leaves the agent
 unchanged. A new run starts over. Success keeps the other agent files
 and renames the old directory to ``agent-backup-TIMESTAMP`` before it
-installs the new one. Keep the backup until the new memory is checked,
-then start the daemon. Message IDs change to their positions in the
-merged log.
+installs the new one. A child's staging directory and backup stay in the
+root agent directory, outside ``children/``. Its backup is
+``NAME-backup-TIMESTAMP``. Keep the backup until the new memory is
+checked, then start the daemon. Message IDs change to their positions in
+the merged log.
 
 ***********
  Schedules
 
 ***********
  Schedules