{"schema":"https://ver.cy/schemas/card/1.0.0","id":"vr.wm-obj-020","code":"wm-obj-020-inventory-stock-position","url":"https://ver.cy/models/wm-obj-020-inventory-stock-position/","name":"Inventory Stock Position","alternateNames":[],"kind":"world-model","status":"published","version":"0.3.0-research.1","language":"en","classifiers":{"family":"World Models","category":"Physical world and living systems","entryKind":"aggregate","plane":"","domain":["PHY.OBJ.INV"],"industry":["Cross-industry"],"navPath":"NAV.PHY.OBJ.INV","tags":["inventory","stock","position","phy.obj.inv"],"facets":{}},"whatItIs":"The aggregate owns stock-position identity, declared dimension grain, measured and derived quantities, snapshot currency, reconciliation evidence and bounded operational references. It is informational, not a physical object or execution engine.","purpose":"Describe a source-qualified inventory quantity position by product, ownership, location, status and time.","scope":{"in":["Stock dimension tuple, custody, restrictions and quantity basis","Reservation and planned-measure semantics with source-defined formulas","Snapshot consistency, count reconciliation, lineage and governed exchange"],"out":["Physical product geometry or material remastered as properties of a balance","Inventory booking engine, automatic warehouse actuation and oversell guarantees","Legal title determination, financial valuation and accounting entries"],"boundaries":[{"neighbor":"WM-OBJ-001 Physical Item","distinction":"REFERENCE only: a stock aggregate is not a serial item or its physical characteristics."},{"neighbor":"WM-OBJ-002 Product Type / Catalog Item","distinction":"Product identity and unit conversion master stay referenced, not copied."},{"neighbor":"WM-FLW-012 Inventory Movement","distinction":"Movement changes positions but is not itself the current balance; no complete event ledger is assumed."},{"neighbor":"Reservation, order, warehouse and valuation masters","distinction":"Position retains qualified references and quantities; execution, facility identity and monetary valuation remain external."}]},"distinguishingFeatures":["A quantity balance at a declared grain of product, owner, location, status and time, not a physical item.","Differs from an inventory movement, which records a change; the position is the resulting state.","Keeps on-hand, reserved, available and projected measures distinct, each with its own formula.","Is not a valuation or a title record: quantity on hand says nothing about legal ownership or book value."],"structure":{"bundles":[{"id":"stock-position-identity-and-custody","name":"Position identity and custody","description":"Stock-position concerns: position identity and custody.","layers":[{"id":"position-grain","name":"Position key and aggregation grain","description":"Time-qualified stock-position assertions for position key and aggregation grain, with declared source semantics and master authority.","findings":[{"id":"position-grain-record","name":"Position key and aggregation grain record","description":"Time-qualified stock-position assertions for position key and aggregation grain, with declared source semantics and master authority.","questions":[{"text":"Which issuer, product reference and complete dimension tuple identify this position without merging distinct lots or owners?","id":"position-grain-q01","kind":"identity"},{"text":"Which dimensions were filtered before aggregation, which were grouped, and which were suppressed from this view?","id":"position-grain-q02","kind":"composition"},{"text":"Does an absent row mean zero stock, an excluded dimension, no history or an incomplete response?","id":"position-grain-q03","kind":"quality"}]}]},{"id":"custody-location","name":"Owner, custodian and location scope","description":"Time-qualified stock-position assertions for owner, custodian and location scope, with declared source semantics and master authority.","findings":[{"id":"custody-location-record","name":"Owner, custodian and location scope record","description":"Time-qualified stock-position assertions for owner, custodian and location scope, with declared source semantics and master authority.","questions":[{"text":"Who owns the stock and who holds custody, under which organization and consignment references?","id":"custody-location-q01","kind":"ownership"},{"text":"Which warehouse, bin, transit or external location is represented and which parent totals already include it?","id":"custody-location-q02","kind":"spatial"},{"text":"Which authority may disclose or change this owner's quantity without changing ownership merely because goods moved?","id":"custody-location-q03","kind":"authority"}]}]}]},{"id":"stock-measured-quantities-and-restrictions","name":"Measured quantities and restrictions","description":"Stock-position concerns: measured quantities and restrictions.","layers":[{"id":"quantity-basis","name":"Quantity basis and measurement semantics","description":"Time-qualified stock-position assertions for quantity basis and measurement semantics, with declared source semantics and master authority.","findings":[{"id":"quantity-basis-record","name":"Quantity basis and measurement semantics record","description":"Time-qualified stock-position assertions for quantity basis and measurement semantics, with declared source semantics and master authority.","questions":[{"text":"What quantity, unit, precision and product-specific conversion basis does each measure carry?","id":"quantity-basis-q01","kind":"measurement"},{"text":"Is the value counted, measured, estimated or system-derived, and what uncertainty or rounding accompanies it?","id":"quantity-basis-q02","kind":"evidence"},{"text":"Are negative, zero, unavailable and unknown values permitted for this measure, and what evidence explains an exception?","id":"quantity-basis-q03","kind":"exception"}]}]},{"id":"stock-restrictions","name":"Stock status, condition and traceability","description":"Time-qualified stock-position assertions for stock status, condition and traceability, with declared source semantics and master authority.","findings":[{"id":"stock-restrictions-record","name":"Stock status, condition and traceability record","description":"Time-qualified stock-position assertions for stock status, condition and traceability, with declared source semantics and master authority.","questions":[{"text":"Which source-defined status and lot or serial constraints qualify the reported quantity?","id":"stock-restrictions-q01","kind":"classification"},{"text":"Which quarantines, damage, expiry or other restrictions affect usability, and where is the authoritative evidence?","id":"stock-restrictions-q02","kind":"constraint"},{"text":"Can status buckets overlap, and how is a transition represented without counting the same stock twice?","id":"stock-restrictions-q03","kind":"state"}]}]}]},{"id":"stock-availability-and-commitments","name":"Availability and commitments","description":"Stock-position concerns: availability and commitments.","layers":[{"id":"reservation-availability","name":"Reservations and usable quantity","description":"Time-qualified stock-position assertions for reservations and usable quantity, with declared source semantics and master authority.","findings":[{"id":"reservation-availability-record","name":"Reservations and usable quantity record","description":"Time-qualified stock-position assertions for reservations and usable quantity, with declared source semantics and master authority.","questions":[{"text":"What physical and expected-receipt reservations apply, at which dimension hierarchy and for which demand references?","id":"reservation-availability-q01","kind":"relationship"},{"text":"Which versioned formula and inputs produce availability, including soft reservation offsets without duplicate subtraction?","id":"reservation-availability-q02","kind":"measurement"},{"text":"Is the result informational or an authoritative booking response, and what expiry and access conditions limit reliance on it?","id":"reservation-availability-q03","kind":"authority"}]}]},{"id":"projected-stock","name":"Incoming, outgoing and projected position","description":"Time-qualified stock-position assertions for incoming, outgoing and projected position, with declared source semantics and master authority.","findings":[{"id":"projected-stock-record","name":"Incoming, outgoing and projected position record","description":"Time-qualified stock-position assertions for incoming, outgoing and projected position, with declared source semantics and master authority.","questions":[{"text":"Which confirmed or tentative receipts and issues contribute to the selected planning horizon?","id":"projected-stock-q01","kind":"event"},{"text":"Which forecast assumptions distinguish projected stock from current physical on-hand and available-to-promise?","id":"projected-stock-q02","kind":"measurement"},{"text":"How are canceled, delayed or partially fulfilled commitments reflected without rewriting observed quantities?","id":"projected-stock-q03","kind":"lifecycle"}]}]}]},{"id":"stock-observation-time-and-reconciliation","name":"Observation time and reconciliation","description":"Stock-position concerns: observation time and reconciliation.","layers":[{"id":"snapshot-currency","name":"Snapshot currency and source ordering","description":"Time-qualified stock-position assertions for snapshot currency and source ordering, with declared source semantics and master authority.","findings":[{"id":"snapshot-currency-record","name":"Snapshot currency and source ordering record","description":"Time-qualified stock-position assertions for snapshot currency and source ordering, with declared source semantics and master authority.","questions":[{"text":"At what effective instant and recording instant was the position observed, with which explicit timezone and source watermark?","id":"snapshot-currency-q01","kind":"temporal"},{"text":"Are all pages and dimensions from one consistent snapshot, or is consistency unknown or explicitly eventual?","id":"snapshot-currency-q02","kind":"quality"},{"text":"Which late, repeated or corrected source records change the interpretation, and what stale-data policy prevents treating old stock as current?","id":"snapshot-currency-q03","kind":"provenance"}]}]},{"id":"count-adjustment","name":"Count evidence and adjustment disposition","description":"Time-qualified stock-position assertions for count evidence and adjustment disposition, with declared source semantics and master authority.","findings":[{"id":"count-adjustment-record","name":"Count evidence and adjustment disposition record","description":"Time-qualified stock-position assertions for count evidence and adjustment disposition, with declared source semantics and master authority.","questions":[{"text":"What was independently counted, when and by whom, against which expected position and method?","id":"count-adjustment-q01","kind":"evidence"},{"text":"Which movements occurred between count and application, and how was the difference reconciled before approval?","id":"count-adjustment-q02","kind":"validation"},{"text":"Was an adjustment proposed, approved, applied or reversed, and where is the immutable master receipt?","id":"count-adjustment-q03","kind":"decision"}]}]}]},{"id":"stock-change-lineage-and-operational-boundary","name":"Change lineage and operational boundary","description":"Stock-position concerns: change lineage and operational boundary.","layers":[{"id":"balance-lineage","name":"Movement lineage and balance reconciliation","description":"Time-qualified stock-position assertions for movement lineage and balance reconciliation, with declared source semantics and master authority.","findings":[{"id":"balance-lineage-record","name":"Movement lineage and balance reconciliation record","description":"Time-qualified stock-position assertions for movement lineage and balance reconciliation, with declared source semantics and master authority.","questions":[{"text":"Which opening position and authoritative movement records explain the closing position for the chosen dimension grain?","id":"balance-lineage-q01","kind":"provenance"},{"text":"Which unexplained differences, omitted events or unit conversions prevent a valid reconciliation?","id":"balance-lineage-q02","kind":"exception"},{"text":"Are the evidence set and reconstruction rule complete enough to reproduce the view without claiming an event feed itself is a balance?","id":"balance-lineage-q03","kind":"validation"}]}]},{"id":"action-boundary","name":"Operational action and concurrency boundary","description":"Time-qualified stock-position assertions for operational action and concurrency boundary, with declared source semantics and master authority.","findings":[{"id":"action-boundary-record","name":"Operational action and concurrency boundary record","description":"Time-qualified stock-position assertions for operational action and concurrency boundary, with declared source semantics and master authority.","questions":[{"text":"Which authorized master endpoint accepts a reservation, transfer or adjustment instead of treating a local property edit as execution?","id":"action-boundary-q01","kind":"authority"},{"text":"Which expected version, action identifier and receipt distinguish a safely confirmed action from an uncertain or duplicated request?","id":"action-boundary-q02","kind":"requirement"},{"text":"What must the agent do when the master rejects a request, the response is lost or another worker changed the position?","id":"action-boundary-q03","kind":"exception"}]}]}]},{"id":"stock-governed-stock-knowledge-and-exchange","name":"Governed stock knowledge and exchange","description":"Stock-position concerns: governed stock knowledge and exchange.","layers":[{"id":"stock-governance","name":"Mastership, access and retention","description":"Time-qualified stock-position assertions for mastership, access and retention, with declared source semantics and master authority.","findings":[{"id":"stock-governance-record","name":"Mastership, access and retention record","description":"Time-qualified stock-position assertions for mastership, access and retention, with declared source semantics and master authority.","questions":[{"text":"Which source owns each measure, and which cached or federated copies are subordinate to that authority?","id":"stock-governance-q01","kind":"ownership"},{"text":"Which owner, counterparty or location details may each role read, aggregate or export?","id":"stock-governance-q02","kind":"access"},{"text":"Which records must remain reproducible after correction, deletion or access withdrawal, subject to the applicable retention policy?","id":"stock-governance-q03","kind":"retention"}]}]},{"id":"stock-exchange","name":"Exchange fidelity and semantic validation","description":"Time-qualified stock-position assertions for exchange fidelity and semantic validation, with declared source semantics and master authority.","findings":[{"id":"stock-exchange-record","name":"Exchange fidelity and semantic validation record","description":"Time-qualified stock-position assertions for exchange fidelity and semantic validation, with declared source semantics and master authority.","questions":[{"text":"Which source bucket, dimension, unit and timestamp mappings are preserved, transformed or lost in this projection?","id":"stock-exchange-q01","kind":"interoperability"},{"text":"Can the target represent unknown or signed balances when an EPCIS quantity has different constraints, or must export be rejected or explicitly extended?","id":"stock-exchange-q02","kind":"constraint"},{"text":"Which subject-specific fixtures test consignment, hierarchy reservations, negative balances, concurrent counts and incomplete snapshots before an adapter is trusted?","id":"stock-exchange-q03","kind":"validation"}]}]}]}]},"agentConduct":{"may":["Read a stock position at a stated grain and snapshot time.","Explain how available quantity was derived from on-hand and commitments.","Compare count evidence with the recorded balance and report variances.","Route an authorized adjustment request to the inventory master."],"mustNot":["Treat unknown or stale stock as zero or as available.","Post adjustments directly from count evidence without approval.","Promise availability to customers as a guarantee.","Retry an uncertain stock transaction before checking for a receipt.","Infer legal ownership or financial value from a quantity."],"requiresHuman":["Approving inventory adjustments and write-offs.","Releasing stock held under quality or legal restriction."]},"ethics":{"considerations":["Wrong availability for medicines, food or spare parts can harm people who depend on them.","Count variance investigations can unfairly target warehouse staff; evidence should drive conclusions.","Overstated stock can mislead buyers, lenders and auditors."],"affectedParties":["Customers and patients depending on availability","Warehouse and store staff","Owners, lenders and auditors relying on stock figures"]},"owners":{"steward":"Declare the Dimension owner and delegated inventory steward.","roles":[{"name":"Dimension owner","responsibilities":["Defines namespaces and federation policy."]},{"name":"Inventory steward","responsibilities":["Owns stock measure semantics and source bindings."]},{"name":"Count observer","responsibilities":["Records evidence without assuming adjustment approval."]},{"name":"Adjustment approver","responsibilities":["Authorizes a scoped master change under policy."]},{"name":"Reviewer","responsibilities":["Checks aggregation, reconciliation and mappings."]},{"name":"Custodian","responsibilities":["Maintains authorized caches and evidence retention."]}],"masterSystems":[]},"relations":[{"target":"WM-OBJ-001","type":"references","note":"Link identifiable physical items only when item-level evidence exists; aggregate remains nonphysical."},{"target":"WM-OBJ-002","type":"references","note":"Resolve product identity and qualified unit basis."},{"target":"WM-FLW-012","type":"references","note":"Link authoritative stock movements without assuming complete ledger coverage."},{"target":"https://ref.gs1.org/standards/epcis/2.0.1/","type":"aligned","note":"Candidate event-evidence alignment with explicit quantity and time mapping losses; not conformance."},{"target":"https://www.w3.org/TR/prov-dm/","type":"aligned","note":"Describe attribution and derivation, not permissions or physical truth."},{"target":"WM-OBJ-001 Physical Item","type":"neighbor","note":"REFERENCE only: a stock aggregate is not a serial item or its physical characteristics."},{"target":"WM-OBJ-002 Product Type / Catalog Item","type":"neighbor","note":"Product identity and unit conversion master stay referenced, not copied."},{"target":"WM-FLW-012 Inventory Movement","type":"neighbor","note":"Movement changes positions but is not itself the current balance; no complete event ledger is assumed."},{"target":"Reservation, order, warehouse and valuation masters","type":"neighbor","note":"Position retains qualified references and quantities; execution, facility identity and monetary valuation remain external."},{"target":"WM-OBJ-001","type":"parent"}],"interaction":{"identity":{"applicability":"required","items":["Authoritative master-system identifier","Governed issuer-qualified URI or global identifier","Dimension-issued UUID with issuer context"]},"properties":{"applicability":"not-applicable","items":[]},"recognition":{"applicability":"optional","items":["A stock position is identified by product, location, owner, stock status, lot or serial where tracked, and timestamp.","Confused with a stock movement, a reservation, a physical item and an inventory valuation."]},"capabilities":{"applicability":"required","items":["Read a qualified stock position: Retrieve stock for one declared dimension grain.","Explain availability: Trace source-defined availability formulas without executing reservations.","Describe projected stock: Keep planning-horizon estimates distinct from observed balances.","Reconcile count evidence: Compare a count and intervening movement evidence before proposing an adjustment.","Route an authorized action: Describe a master-mediated reservation or adjustment with explicit uncertain outcomes.","Exchange with semantic loss report: Map authorized stock knowledge while preserving incompatible target constraints."]},"hazards":{"applicability":"required","items":["Overselling from stale or double-counted availability.","Expired or quarantined lots shown as available.","Shrinkage hidden by unexplained adjustments.","Inconsistent snapshots across locations leading to wrong replenishment."]},"interfaces":{"applicability":"required","items":["GS1 GTIN, GLN and SSCC identifiers.","GS1 EPCIS 2.0, ISO/IEC 19987, for visibility events.","IEC 62264 (ISA-95) inventory information.","UN/CEFACT Recommendation 20 unit codes.","ISO 8601 date and time."]},"context":{"applicability":"required","items":["Owning Dimension supplies jurisdiction, warehouse, confidentiality and retention policies. No legal ownership or financial valuation determination is made."]}},"sources":[{"title":"Inventory on-hand list","url":"https://learn.microsoft.com/en-us/dynamics365/supply-chain/inventory/inventory-on-hand-list","note":"Microsoft"},{"title":"Reserve inventory quantities","url":"https://learn.microsoft.com/en-us/dynamics365/supply-chain/inventory/reserve-inventory-quantities","note":"Microsoft"},{"title":"Stock report","url":"https://www.odoo.com/documentation/18.0/applications/inventory_and_mrp/inventory/warehouses_storage/reporting/stock.html","note":"Odoo"},{"title":"Consignment","url":"https://www.odoo.com/documentation/18.0/applications/inventory_and_mrp/inventory/shipping_receiving/daily_operations/owned_stock.html","note":"Odoo"},{"title":"Inventory adjustments","url":"https://www.odoo.com/documentation/18.0/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/count_products.html","note":"Odoo"},{"title":"EPCIS Standard","url":"https://ref.gs1.org/standards/epcis/2.0.1/","note":"GS1"},{"title":"Inventory Visibility public APIs","url":"https://learn.microsoft.com/en-us/dynamics365/supply-chain/inventory/inventory-visibility-api","note":"Microsoft"},{"title":"Inventory Visibility reservations","url":"https://learn.microsoft.com/en-us/dynamics365/supply-chain/inventory/inventory-visibility-reservations","note":"Microsoft"},{"title":"PROV-DM","url":"https://www.w3.org/TR/prov-dm/","note":"W3C"},{"title":"Date and Time on the Internet: Timestamps","url":"https://www.rfc-editor.org/rfc/rfc3339","note":"IETF"}],"openQuestions":["Independent external review and exact source revision pins.","Executable typed fields and negative fixtures for overlapping status and reservation hierarchies.","Concurrent counting, uncertain-action receipts and complete snapshot tests against actual inventory masters.","Loss-aware EPCIS and inventory API adapters with signed and unknown quantity fixtures.","Claude and Grok each timed out once. No independent external review; Codex-only result must remain reviewable-draft.","Mutable Microsoft page revision pins remain open; Odoo stock report inspected via indexed text only after direct fetch timeout.","GS1 URL says 2.0.1 while retrieved PDF header says Release 2.0 June 2022; exact normative adapter pin and conformance remain unresolved.","Nested field groups are proposed information contracts, not executable instance schemas; no inventory engine, reservation adapter or concurrency test delivered.","Sector-specific unit conversion, negative-stock, quarantine, consignment and retention profiles need specialist review.","Actual master authority, expected-version and idempotency capabilities must be verified by adopters; source API inspection did not establish these guarantees."],"resources":{"spec":"/models/wm-obj-020-inventory-stock-position/spec.yaml","agents":"/models/wm-obj-020-inventory-stock-position/AGENTS.md","source":"https://github.com/ver-cy/world-models/tree/feat/mega-model-registry/research/runs/wm-obj-020"},"provenance":{"origin":"world-models research","builtFrom":["models/wm-obj-020-inventory-stock-position/spec.yaml","ver-cy/world-models/card-supplements/wm-obj-020-inventory-stock-position.json"],"providers":["Codex"],"researchStatus":"reviewable-draft","generatedAt":"2026-09-09T19:36:08Z","builder":"tools/build_cards.py@1.0.0"},"completeness":{"sections":{"classifiers":"filled","whatItIs":"filled","purpose":"filled","distinguishingFeatures":"filled","structure":"filled","agentConduct":"filled","ethics":"filled","owners":"filled","relations":"filled","interaction.identity":"filled","interaction.properties":"not-applicable","interaction.recognition":"filled","interaction.capabilities":"filled","interaction.hazards":"filled","interaction.interfaces":"filled","interaction.context":"filled","sources":"filled"},"notes":{"interaction.properties":"A stock position is a record of quantities; the stocked items carry the physical properties.","_supplement":"Sections authored in card supplement 1.0.0 by Claude (Opus 5.5) (2026-10-05, unreviewed). Written from the published specification and established practice in the field; no new sources were read. Unreviewed."},"score":1.0}}