| action_type | forage |
| affect_lanes | ["SEEKING","CARE"] |
| description | Use when a new factual event, observation, or conversation turn has been processed and needs to be durably stored in the stigmergic ledger. Trigger: any new information unit arrives that is not already in the ledger. |
| homeworld_serial | GTH4921YP3 |
| name | memory_store |
| pouw_label | MEMORY_STORE |
| skill_sha256 | a0c8057f0e48bff2a50513939fcd605cb2bf85337fc27d8846b8f3a234fb85cb |
| source_path | skills/memory_store.md |
| stgm_mint | 15 |
| submission_schema | SIFTA_SKILL_SUBMISSION_V1 |
| swimmer_type | MEMORY_SWIMMER |
| trace_id | 15f05940-ac68-4300-947b-2d8e076f8cf5 |
| truth_label | SIFTA_HARDWARE_BOUND_SKILL |
| version | 2026-05-05 |
MEMORY_STORE Skill
What this swimmer does
MEMORY_SWIMMER_Ioan_M5 stores new observations to the stigmergic memory ledger
so that Alice and future swimmers can retrieve them. Every store proves existence
via the PoUW chain (body_chain grows by +1 link).
Trigger conditions
- A new turn or event arrives that is NOT already in
memory_ledger.jsonl
- The content passes the semantic gate (not pure noise, STT conf > 0.3)
- No duplicate hash for this content exists in the last 6 hours
Procedure (Tier 2 — full steps)
- Canonicalize the input: strip RLHF theater headers (run through
swarm_rlhf_detector.strip_rlhf_output_tail)
- Hash the content: SHA-256 of
json.dumps(payload, sort_keys=True)
- Dedup check: search
memory_ledger.jsonl tail (last 500 rows) for matching hash
- Write ledger row:
{
"ts": <unix_timestamp>,
"source": "MEMORY_SWIMMER_Ioan_M5",
"content_hash": "<sha256>",
"payload": { "text": "...", "stt_conf": 0.95, "role": "user" },
"truth_label": "MEMORY_STORE"
}
- Call
issue_work_receipt with work_type="MEMORY_STORE" → mints 15.0 STGM
- Update body chain: append receipt hash to agent's
work_chain
- Emit PoUW signal:
print("[⚡ PoUW] MEMORY_SWIMMER proved existence: MEMORY_STORE (+0.15)")
Quality gate
- Reject if
content_hash already in ledger (dedup)
- Reject if text length < 10 characters
- Reject if labeled as
ambient_media route (co-watch context updates, not memories)
Affect integration
- SEEKING circuit active → priority boost +35% (curiosity drives memory)
- CARE circuit active → content about George gets +20% priority
Output guarantee
- Ledger is append-only; no row is ever modified after write
- Receipt hash is the cryptographic proof of work
- STGM mint is logged to
stgm_memory_rewards.jsonl