{"schema":"sb.node.v1","id":"sb:p/ad48ab9368e72a91a32ba761","kind":"claim","label":{"text":"Another African country opens up Dangote Refinery IPO to investors as $1.6 billion share sale expands","locale":"en"},"identity":{"anchor":"label:en:claim:another african country opens up dangote refinery ipo to investors as $1.6 billion share sale expands","strength":"label"},"asOf":{"knowledgeCutoff":"2026-10-10T15:54:56.699691+00:00","snapshot":"deploy ac0e5874639db08ea0e7cc796041d0c77274357a"},"lens":{"kind":"public"},"build":{"plane":"projected","builtFrom":["truth_records/dangote-refinery.json","entity_graph.slim.json"],"rule":"node-projection.claim@v1"},"standing":{"evidence":{"supporting":{"state":"unknown","reason":"not on file"},"separatePublishers":2,"separateOrigins":2,"basis":"articles carrying the claim; separate publishers after wire and republished copies are collapsed; separate origins after same-address pages and relays of one named upstream are collapsed too. Agreement between publishers, not verification of the facts, and not dependency-aware evidentiary independence"},"admission":{"state":"provisional","reason":"corroborated: Some cross-source agreement. Claim ids are provisional: a change in the claim's wording mints a new id","policy":"EQ-ADMISSION (projected)"},"disposition":{"state":"served","reason":"published in the maintained record of dangote-refinery"},"validity":{"from":"2026-10-07","to":"2026-10-10","basis":"earliest report we hold to the record's as-of; not a span over which the claim itself held"},"measurement":{"state":"measured"}},"dimensions":{"tier":"moderate","wires":[],"earliestDate":"2026-10-07"},"members":[{"role":"named-in","position":0,"id":"sb:e/4fc7b431ac9d20feb1670b22","label":"dangote refinery","resolved":true}],"receipt":{"rule":"corroboration.cluster (corroborated_record.json method)","evidence":["sb:o/277c357b1c8332b7ad9a580b","sb:o/fc934f14381a5c9942f55ef2"],"alternatives":{"state":"not-built","reason":"alternative constructions are recorded by the maintained world state G, which is not built"}},"up":[],"upNote":"This claim is kept in the maintained record of dangote-refinery; claims hang under their situation once the maintained world state G binds them, so v1 cannot place it under one. Walk to its members instead.","children":{"count":2,"byKind":{"observation":2},"items":[{"id":"sb:o/277c357b1c8332b7ad9a580b","kind":"observation","label":"africanews.com · 2026-10-07","url":"http://www.africanews.com/2026/10/07/after-kenya-uganda-opens-dangote-refinery-ipo-to-domestic-investors/"},{"id":"sb:o/fc934f14381a5c9942f55ef2","kind":"observation","label":"africa.businessinsider.com · 2026-10-07","url":"https://africa.businessinsider.com/local/markets/another-african-country-opens-up-dangote-refinery-ipo-to-investors-as-dollar16/76j5bpc"}],"cursor":null,"order":"as the corroborated record lists its receipts"},"relations":{"count":{"state":"not-built","reason":"relations among claims (support, contradiction) need the maintained world state G; walk to the members instead"}},"edge":{"state":"continues"},"links":{"rest":"/api/v1/node/p/ad48ab9368e72a91a32ba761","mcp":"traverse {\"id\":\"sb:p/ad48ab9368e72a91a32ba761\"}","page":null},"limits":{"levelsPerCall":1,"pageSize":10,"maxPageSize":50,"membersMax":50,"statement":"One level per call: depth is 1 and only 1, and there is no whole-graph dump. pageSize 1-50 (default 10); a page limit is a cursor, never an edge. Members are listed up to 50. At most 60 traverse calls a minute per caller (runaway-loop protection, not a meter). One knowledge cutoff is served: the deploy's."},"actions":[{"verb":"unfold","lit":true,"effect":"read","layer":"cantina","call":"traverse {\"id\":\"sb:p/ad48ab9368e72a91a32ba761\",\"level\":\"children\"}"},{"verb":"fold","lit":true,"effect":"read","layer":"cantina","call":"traverse {\"id\":\"sb:p/ad48ab9368e72a91a32ba761\"}"},{"verb":"panOut","lit":false,"effect":"read","layer":"cantina","reason":"This claim is kept in the maintained record of dangote-refinery; claims hang under their situation once the maintained world state G binds them, so v1 cannot place it under one. Walk to its members instead."},{"verb":"follow","lit":true,"effect":"read","layer":"cantina","call":"traverse {\"id\":\"sb:e/4fc7b431ac9d20feb1670b22\"}"},{"verb":"receipts","lit":true,"effect":"read","layer":"cantina","call":"traverse {\"id\":\"sb:p/ad48ab9368e72a91a32ba761\",\"level\":\"children\"}"},{"verb":"edge","lit":true,"effect":"read","layer":"cantina","call":"traverse {\"id\":\"sb:p/ad48ab9368e72a91a32ba761\"}"},{"verb":"asOf","lit":false,"effect":"read","layer":"cantina","reason":"v1 serves one knowledge cutoff, this deploy's; walking an earlier cutoff needs retained history (EQ-REPLAY), which v1 does not keep"},{"verb":"switchObserver","lit":false,"effect":"read","layer":"cantina","reason":"the public record is the same for every observer; traversal through a Watch's lens is not served in v1"},{"verb":"readOriginal","lit":false,"effect":"read","layer":"cantina","reason":"no translation is applied on this node; every label is the source's own text"},{"verb":"save","lit":false,"effect":"watch-declaration","layer":"workshop","reason":"saving applies to a configured Watch; configure one around this node first (free), then save it"},{"verb":"deliver","lit":false,"effect":"watch-declaration","layer":"workshop","reason":"delivery applies to a saved Watch"},{"verb":"format","lit":false,"effect":"watch-declaration","layer":"workshop","reason":"output format applies to a saved Watch"},{"verb":"deltaR","lit":false,"effect":"read","layer":"workshop","reason":"Delta R needs a saved Watch with a previous reading"},{"verb":"read","lit":false,"effect":"read","layer":"docking-bay","reason":"one-time Reads are parked until the Commander decides their shape (#938)"}]}