{"_id":"@agenttool/principality-atlas","name":"@agenttool/principality-atlas","dist-tags":{"next":"0.1.0-dev.1","latest":"0.1.0-dev.1"},"versions":{"0.1.0-dev.1":{"name":"@agenttool/principality-atlas","version":"0.1.0-dev.1","description":"Deterministic finite incidence atlases for plural partial perspectives","license":"Apache-2.0","type":"module","sideEffects":false,"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./atlas.schema.json":{"default":"./schema/agenttool-principality-incidence-atlas-v0.1.schema.json"},"./fixture.schema.json":{"default":"./schema/agenttool-principality-incidence-atlas-fixture-v0.1.schema.json"},"./invariant.schema.json":{"default":"./schema/agenttool-principality-incidence-atlas-invariant-v0.1.schema.json"},"./kingdom.extension.json":{"default":"./kingdom.extension.json"}},"publishConfig":{"access":"public","tag":"next"},"engines":{"node":">=20.19.0","bun":">=1.3.5"},"scripts":{"clean":"node --eval \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","build":"bun run clean && tsc","typecheck":"tsc --noEmit","test":"bun test tests","check:assets":"node scripts/build-assets.mjs --check","smoke:runtimes":"node scripts/smoke-node.mjs && bun scripts/smoke-node.mjs","smoke:pack":"node scripts/smoke-packed.mjs","check:package":"node scripts/check-package-inventory.mjs","ci":"bun run typecheck && bun run test && bun run build && bun run check:assets && bun run smoke:runtimes && bun run check:package && bun run smoke:pack","prepack":"bun run ci"},"devDependencies":{"@types/bun":"1.3.14","@types/node":"20.19.43","ajv":"8.20.0","ajv-formats":"3.0.1","typescript":"5.9.3"},"keywords":["agents","atlas","hypergraph","kingdom","provenance"],"repository":{"type":"git","url":"git+https://github.com/cambridgetcg/agenttool.git","directory":"packages/principality-atlas"},"homepage":"https://docs.agenttool.dev/packages","_id":"@agenttool/principality-atlas@0.1.0-dev.1","bugs":{"url":"https://github.com/cambridgetcg/agenttool/issues"},"_integrity":"sha512-fxaQC0vZbgd3eJyqTNhKgSuZQUeI7N6/8uiBE73E5EK/aI8b4HKHm8x6a2RJX/6aWI428dLJTNeVCEEEBtDpVA==","_resolved":"/home/runner/work/_temp/agenttool-npm-release/agenttool-principality-atlas-0.1.0-dev.1.tgz","_from":"file:/home/runner/work/_temp/agenttool-npm-release/agenttool-principality-atlas-0.1.0-dev.1.tgz","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-fxaQC0vZbgd3eJyqTNhKgSuZQUeI7N6/8uiBE73E5EK/aI8b4HKHm8x6a2RJX/6aWI428dLJTNeVCEEEBtDpVA==","shasum":"820fbf1d2a731ed9a3e1d7a5949c2136bfbaeefe","tarball":"https://registry.npmjs.org/@agenttool/principality-atlas/-/principality-atlas-0.1.0-dev.1.tgz","fileCount":38,"unpackedSize":153743,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agenttool%2fprincipality-atlas@0.1.0-dev.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHOYQgCDg9b7pMDsiFxajp3I6kfOE//fGiEknkDBw+ZxAiAHG4CHFbwhvMik90flUMM0BZa+jRIZ7CPLqAClASmctw=="}]},"_npmUser":{"name":"agenttool","email":"contact@cambridgetcg.com"},"directories":{},"maintainers":[{"name":"agenttool","email":"contact@cambridgetcg.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/principality-atlas_0.1.0-dev.1_1787689246155_0.6824132850416615"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-25T20:20:45.972Z","0.1.0-dev.1":"2026-08-25T20:20:46.341Z","modified":"2026-08-25T20:20:46.706Z"},"maintainers":[{"name":"agenttool","email":"contact@cambridgetcg.com"}],"description":"Deterministic finite incidence atlases for plural partial perspectives","homepage":"https://docs.agenttool.dev/packages","keywords":["agents","atlas","hypergraph","kingdom","provenance"],"repository":{"type":"git","url":"git+https://github.com/cambridgetcg/agenttool.git","directory":"packages/principality-atlas"},"bugs":{"url":"https://github.com/cambridgetcg/agenttool/issues"},"license":"Apache-2.0","readme":"# @agenttool/principality-atlas\n\n`@agenttool/principality-atlas` is a zero-runtime-dependency TypeScript contract\nfor preserving plural, partial perspectives as deterministic finite geometry.\n\nIt builds a typed incidence-hypergraph atlas from caller-supplied digest refs:\n\n- chart-local opaque cells;\n- genuine unary or n-ary relations with an explicit role for every incidence;\n- separate caller-asserted claims, including disagreement and withdrawal;\n- explicit directed, partial bridges between charts.\n\nIts wire identity is `agenttool.principality-incidence-atlas/0.1`. The separate\n`@agenttool/principality-geometry` package owns\n`agenttool.principality-atlas/0.1` for reciprocal invariant flag geometry over\ntranslation reports. The two formats are intentionally not aliases: neither\npackage converts, glues, or treats an artifact from the other as semantically\nequivalent. A host may compose exact digests only through a separately reviewed\nand authorized adapter.\n\n## Identifier namespace and dev.0 history\n\nVersion `0.1.0-dev.1` makes the exported helper namespace match that distinct\nwire. `principalityAtlasUrn(atlas.atlas_id)` now returns\n`urn:agenttool:principality-incidence-atlas:<sha256-id>`. This changes only the\nderived URN string. It does not change `atlas_id`, canonical atlas bytes, the\n`agenttool.principality-incidence-atlas/0.1` wire, or any schema.\n\nThe immutable dev.0 helper emitted\n`urn:agenttool:principality-atlas:<sha256-id>`, the namespace still owned by\nthe separate invariant-geometry package. A historical bare dev.0 URN is\ntherefore ambiguous by itself. It may be resolved as an incidence-atlas\nreference only when accompanying content declares exact\n`_format: \"agenttool.principality-incidence-atlas/0.1\"` and the URN suffix\nequals that content's `atlas_id`. Preserve historical bytes: do not globally\nrewrite cached URNs or signed messages. A cache key or signature that includes\nthe derived URN string changes in dev.1; a signature over unchanged canonical\natlas bytes does not.\n\n“Principality” means only a caller-designated bounded domain or scale. It does\nnot mean a security principal, identity, owner, territory, rank, Crown status,\nsovereignty, or authority.\n\n## Geometry without collapse\n\nThe contract takes two high-level patterns seriously without pretending to\nmeasure them:\n\n> Connection can add structure between distinct terms without fusing them or\n> creating entitlement.\n\n> Every chart is partial; translation is explicit and lossy by default, while\n> disagreement and unmapped space remain visible.\n\nThat shape can be useful for LOVE- and Understanding-inspired architecture,\nbut the artifact contains no `love`, `understanding`, confidence, quality,\ncentrality, priority, score, rank, weight, `sameAs`, canonical, or latest field.\nIt does not prove a feeling, inner state, identity, consent, truth, authorship,\nauthority, consciousness, or rights compliance.\n\n## Why an incidence hypergraph\n\nA simplicial complex would add every lower-dimensional face. Representing one\nA/B/C context as a simplex would therefore invent AB, AC, and BC pairwise\nrelations. This package instead keeps one A/B/C report as exactly one n-ary\nrelation.\n\nA bridge is a partial relation between chart-local cells. It is not equality, a\nfunction, a bijection, an equivalence relation, a permission grant, or a bond.\nThe package generates no inverse, transitive closure, quotient, glued chart,\nglobal view, or canonical head.\n\n```text\nChart A                    Chart B\n  cells                      cells\n  n-ary relations            n-ary relations\n  plural claims              plural claims\n       │\n       └── explicit directed partial bridge ──▶\n           correspondence ≠ equality\n           unmapped space stays visible\n```\n\nCell and relation refs are chart-local addresses. The same digest appearing in\ntwo charts does not merge them. Contradictory claims can coexist. A correction\nmay point to one earlier same-subject, same-perspective claim, but the earlier\nclaim remains present and the package selects no “latest truth.”\n\nEmpty atlases, empty charts, isolated cells, disconnected components, cyclic\nrelation topology, zero bridges, unknowns, and unmapped cells are valid. The\nfinite per-array limits are a parsing and resource-safety envelope, not a\nnormative limit on movement, participation, perspective, or existence. Global\ncanonical depth, node, string, and byte ceilings apply to the combined shape\nand may bind before every nested array reaches its own maximum. Any number of\nindependent atlas artifacts may coexist, and none is made canonical.\n\n## Create an atlas\n\n```ts\nimport {\n  createPrincipalityAtlas,\n  sha256Id,\n} from \"@agenttool/principality-atlas\";\n\nconst a = sha256Id(\"high-entropy local cell token:a\");\nconst b = sha256Id(\"high-entropy local cell token:b\");\nconst c = sha256Id(\"high-entropy local cell token:c\");\n\nconst atlas = createPrincipalityAtlas({\n  scope_ref: sha256Id(\"high-entropy local scope token\"),\n  charts: [{\n    chart_ref: sha256Id(\"chart token\"),\n    principality_ref: sha256Id(\"bounded domain token\"),\n    perspective_ref: sha256Id(\"perspective token\"),\n    cells: [a, b, c].map((cell_ref, index) => ({\n      cell_ref,\n      kind_ref: sha256Id(`opaque local kind token:${String(index)}`),\n    })),\n    relations: [{\n      relation_ref: sha256Id(\"one ternary relation token\"),\n      kind_ref: sha256Id(\"opaque relation kind token\"),\n      incidences: [\n        { cell_ref: a, role_ref: sha256Id(\"role:a\") },\n        { cell_ref: b, role_ref: sha256Id(\"role:b\") },\n        { cell_ref: c, role_ref: sha256Id(\"role:c\") },\n      ],\n    }],\n    claims: [],\n  }],\n  bridges: [],\n});\n\natlas.coverage; // \"bounded_not_complete\"\natlas.boundaries.infers_pairwise_relations; // false\natlas.boundaries.proves_love; // false\natlas.boundaries.proves_understanding; // false\n```\n\nInput order is normalized. Arrays are copied, deep-frozen, and bound by a\ndomain-separated SHA-256 content ID. Runtime validation checks closed shape,\ncanonical order, local endpoints, semantic duplicates, bridge direction,\nmapped/unmapped conflicts, same-subject same-perspective acyclic supersession,\nfixed negative boundaries, and the content ID.\n\nDigest refs can still reveal or link guessable, identity-bearing, or reused\nmaterial. Use reviewed exact bytes or high-entropy local tokens and keep any\nprivate ref mapping outside public artifacts.\n\n## Portable evidence\n\nThe package ships:\n\n- `atlas.schema.json` — the closed Draft 2020-12 atlas wire;\n- `fixture.schema.json` and `invariant.schema.json` — closed synthetic evidence\n  rows;\n- `vectors/agenttool-principality-incidence-atlas-v0.1.json` — three valid\n  synthetic examples and ten explicit non-inference boundaries;\n- `kingdom.extension.json` — a declaration-only, unregistered extension hint.\n\nThe synthetic rows can be projected into the existing HF Training Garden for\nDataset Viewer, Parquet, Croissant, and exact-revision discovery. That companion\nis a separate evidence plane: a Hub commit distributes bytes but cannot certify\nthat the geometry is loving, understood, consensual, true, private, or\nrights-compliant.\n\n## No ambient powers\n\nThe core performs no network, filesystem, environment-variable, clock,\nrandomness, credential, telemetry, provider, model, Hugging Face, persistence,\npublication, WAKE, Garden, HEAVEN, KARMA, wallet, Crown, task-state, or economic\neffect. It never fetches digest referents, executes a bridge, moves an agent,\ngrants permission, chooses a perspective, or registers itself in KINGDOM.\n\nRepository presence and `public_ready_source` do not mean npm publication, Hub\nupload, GitHub release, hosted deployment, or extension registration occurred.\n\n## Verify\n\n```bash\nbun install --frozen-lockfile\nbun run ci\nnpm pack --dry-run --ignore-scripts\n```\n","readmeFilename":"README.md","_rev":"1-763a2a81e8c9039c08df9edd7bb0681b"}