ART-558 · NAV Calc Receipt Chain, Upstream Lineage
Record Fund Positions
Gives a fund's declared positions snapshot, as of a stated valuation date, its own citable execution_hash: the upstream input-receipt that a NAV calculation currently hashes internally, and that a separate wiring step can instead cite via an optional positions_ref rather than re-declaring the same holdings. Accepts a supplied list of holdings (security, quantity, currency) and a declared shares_outstanding, and attests that this exact declared snapshot exists for this exact fund and date. Holdings are echoed in this receipt in cleartext by design: the point is a citable hash over the declared snapshot, not a commitment that hides it.
Positions Snapshot LineageSupplied Holdings, Never FetchedNot a Custodian Verification
🔒 All inputs are processed locally in your browser. No data is transmitted. Do not enter real personal data — use synthetic or anonymised inputs only.
What this does NOT prove
Every holding row and shares_outstanding here are supplied by you and merely asserted: this tool performs zero custodian, fund-administrator, or market-data lookups (zero-egress, no network calls of any kind, never a live position feed). It attests that a declared positions snapshot exists exactly as stated for the given fund and date. This is never a verification against a custodian or fund-administrator record, and never a NAV or pricing computation (that is art-373-recompute-fund-nav and a sibling pricing-inputs node). A restated snapshot cites the prior artifact's execution_hash via the standard OpenChainGraph supersedes field: no separate status registry.
The declared fund_id, valuation_date, holdings, and shares_outstanding are digested together into this artifact's execution_hash: that hash IS the positions_digest a downstream NAV artifact cites via positions_ref, never a second canonicalization. A restated snapshot for the same fund and date is a new artifact that cites this one's execution_hash via the top-level supersedes field: there is no reverse link and no status registry.
⚠ DECISION-SUPPORT DRAFT. Not a custodian verification, not a live position feed, not a NAV or pricing computation. Holdings and shares_outstanding inputs are supplied and asserted only.
OpenChainGraph v0.4 artifact · execution_hash:
–
Ask your agent
Copy this paragraph into Claude, OpenClaw, or any MCP-aware agent to run this exact tool, with this sample, and verify the artifact.
Run the AINumbers MCP tool `record_fund_positions`. Task: Give a fund's declared positions snapshot, as of a stated valuation date, its own citable execution_hash -- the upstream input-receipt that the proven NAV chain (art-373-recompute-fund-nav) currently hashes internally, and that a separate wiring node can instead cite via an optional positions_ref rather than re-declaring the same holdings.
Call it with arguments: {"policy_parameters":{"fund_id":"FUND-DEMO-01","valuation_date":"2026-08-05","holdings":[{"security_id":"SEC-A","quantity":1000,"currency":"USD"},{"security_id":"SEC-B","quantity":2500,"currency":"GBP"},{"security_id":"SEC-C","quantity":750,"currency":"EUR"}],"shares_outstanding":100000}}
Verify before trusting: call `verify_execution_hash` on mcp.ainumbers.co (https://mcp.ainumbers.co/mcp) with the parameter `claimed_hash` set to the returned `execution_hash`, passing the full artifact the run returned (the object containing `policy_parameters` + `output_payload` + `execution_hash`; equivalently `policy_parameters` + `output_payload` with `claimed_hash`), not the bare hash string, or re-run the in-page WebMCP tool `record_fund_positions`.
Return the ledger link https://ledger.ainumbers.co/ so a human can re-verify without contacting us.
PII rule: All inputs are processed locally in your browser. No data is transmitted. Do not enter real personal data — use synthetic or anonymised inputs only.
Open the tool with the sample prefilled: https://ainumbers.co/chaingraph/art-558-record-fund-positions.html#p=v1.H4sIAAAAAAAA_wELAfT-eyJmdW5kX2lkIjoiRlVORC1ERU1PLTAxIiwidmFsdWF0aW9uX2RhdGUiOiIyMDI2LTA4LTA1IiwiaG9sZGluZ3MiOlt7InNlY3VyaXR5X2lkIjoiU0VDLUEiLCJxdWFudGl0eSI6MTAwMCwiY3VycmVuY3kiOiJVU0QifSx7InNlY3VyaXR5X2lkIjoiU0VDLUIiLCJxdWFudGl0eSI6MjUwMCwiY3VycmVuY3kiOiJHQlAifSx7InNlY3VyaXR5X2lkIjoiU0VDLUMiLCJxdWFudGl0eSI6NzUwLCJjdXJyZW5jeSI6IkVVUiJ9XSwic2hhcmVzX291dHN0YW5kaW5nIjoxMDAwMDB9e-GwTAsBAAA