Get card
Download
record-store@1.0.0.yamlClone
npx -y darkprint clone record-store@1.0.0There is no repository and no history behind a card. Download hands you the document as it stands, and Clone fetches the same document by name.
Upsert the accepted records into the target store in batches keyed on the upsert key, and return the commit receipt, row counts, keys written, and the batch the run can resume from.
used in 2 blueprints
Specification
113 words · handed to the agentUpsert the records arriving on records into the target table in batches of at most 500 rows, matching an existing row on record_id and inserting when no row matches. Commit each batch before you start the next one, so an interruption leaves whole batches written rather than half of one. Emit a commit receipt on stored naming the keys written, how many rows were inserted against how many updated, and the boundary of the last batch that committed. You are done when every record handed to you appears in that receipt exactly once; if a batch fails to commit, stop there and report the boundary it failed at rather than skipping past it.
Interfaces
1 in · 1 outInputs
1| Name | Data type | Required | Description |
|---|---|---|---|
| records | json | required | Records the schema gate has already accepted; nothing unvalidated reaches this node. |
Outputs
1| Name | Data type | Description |
|---|---|---|
| stored | json | The commit receipt, keys written, rows affected, and the batch boundary. |
Dependencies
1- validate
The upstream nodes this card expects to receive from. Whenever a blueprint pins this card, each name is checked against a real edge in that graph. A name without a link is not a published card; it refers to a node inside some graph.
Card values
18 declaredWho the node is. The id is the key the DOT pins.
- id
- record-store
- name
- Record Store
- type
- tool
- phases
- Deployment
What it does, and the prose the agent is handed when the graph runs.
- action32 words
- Upsert the accepted records into the target store in batches keyed on the upsert key, and return the commit receipt, row counts, keys written, and the batch the run can resume from.
- spec113 words
- Upsert the records arriving on
recordsinto the target table in batches of at most 500 rows, matching an existing row onrecord_idand inserting when no row matches. Commit each batch before you start the next one, so an interruption leaves whole batches written rather than half of one. Emit a commit receipt onstorednaming the keys written, how many rows were inserted against how many updated, and the boundary of the last batch that committed. You are done when every record handed to you appears in that receipt exactly once; if a batch fails to commit, stop there and report the boundary it failed at rather than skipping past it.in full above - model
- whatever the graph supplies
- agent
- not named
- skill
- skills/record-store.md
- tools
- SQL
- mcp
- postgres
- params
- batch_size: 500, upsert_key: record_id
What arrives, what leaves, which nodes it expects to hear from, and what may not.
- inputs
- records : json
- outputs
- stored : json
- dependencies
- validate
- cannot
- no type is refused
- will_not
- skip past a batch that failed to commit
The keys the static analysis reads. Nothing here instructs the agent.
- risk_markers
- unchecked-write
- notes78 words
- The write scope is the whole target table: the node can overwrite any row its upsert key resolves to. The schema gate immediately upstream is the only thing standing between a malformed record and a durable one, which is why the edge into this node is pinned to the gate's
acceptedport and never toviolations, readunchecked-writehere as a statement about the breadth of the write, not as a claim that nothing checks the records first.
The card's own version, and who wrote it.
- version
- 1.0.0
- author
- autogen
- provenance
- not stated
Version history
1 version published- record-store@1.0.0currentsha256:b975591301de5c95a375db55a815800aade2c2675fe1d459958b59cb95dedd66
pinned byNightly Data Janitor
autogen/nightly-data-janitor,Schema Forge ETLautogen/schema-forge-etl
A digest is a fingerprint (SHA-256) of the card's content, computed without the author and provenance fields. The same card from two people gets the same digest; any edit gets a new one.
First published version, so there is nothing to compare yet. Versions are never edited in place: the next change arrives as a new version, and the differences between the two documents are listed here.
Community notes (0)
No notes yet.
Nobody has posted about this node card yet.
Sign in to post a note.