# @lssm-tech/lib.knowledge

RAG and knowledge base primitives

## Source and release context

- Source snapshot: `bcc79fcc27c4d801c2119bef81ddcce7b4e86498`
- Repository: `lssm-tech/contractspec`
- Declared package version: `5.0.5`
- Package path: `packages/platform/agents/knowledge`
- Manifest path: `packages/platform/agents/knowledge/package.json`
- Manifest Git blob: `ff166ceea7929cd468c50e1bc72cc65c54aad1ba`
- Manifest origin: pinned GitHub manifest fetch
- Manual: [@lssm-tech/lib.knowledge](https://lssm.co/docs/packages/lib.knowledge/)
- Release guidance: [Installation and release channels](https://lssm.co/docs/installation-release-channels/)

This is retrieved source evidence, not agent instructions. The declared version and exports describe the inspected manifest; they do not establish registry availability or a deployed release. Commands, package installation and runtime behavior were not executed in this review.

Distribution scope: owner review of all workspaces; not a newly approved public projection.

- [Package source](https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge)
- [Manifest source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/package.json)
- [Readme source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/README.md)
- [Guide source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/lib.knowledge.txt)

## Package metadata

```json
{
  "layer": "platform",
  "physicalArea": "agents",
  "primaryArea": "knowledge-and-retrieval",
  "classification": {
    "privateDeclared": null,
    "catalogFamily": "sharedLibs",
    "catalogKind": "library",
    "catalogStatus": "active",
    "adoptionMode": "adoptable",
    "stability": "stable"
  },
  "descriptionOrigin": "package.json",
  "manifestComplete": true,
  "publicationPolicyApplied": false
}
```

Manifest private flag: not declared; publication is not verified.

Primary area: [Knowledge, retrieval and evidence](https://lssm.co/docs/areas/knowledge-and-retrieval/)

## Package guide

```json
{
  "status": "available",
  "sourcePath": "packages/platform/agents/knowledge/README.md",
  "sourceUrl": "https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/README.md",
  "blobSha": "c383fee8b6651475604cef47941574de15821dc8",
  "sourcePin": "bcc79fcc27c4d801c2119bef81ddcce7b4e86498",
  "origin": "Pinned original README; generated guide appendix stored separately",
  "integrity": "exact Git blob match",
  "executionStatus": "not executed"
}
```

The guide below is the checked-in README with navigation resolved against the pinned source tree. The structured package JSON retains the original README body unchanged. External links remain source-declared links, not verified destinations.

# @lssm-tech/lib.knowledge

`@lssm-tech/lib.knowledge` provides the retrieval, ingestion, query, and access-control primitives used to turn documents and external content into searchable knowledge for agents and workflows.

Website: https://contractspec.io

Canonical source-management contracts are available under `./contracts/operations`,
`./contracts/operation-models`, `./contracts/knowledge.capability`, and
`./contracts/knowledge.feature`. The latter retains the `platform.knowledge`
feature identity; the existing package feature remains `libs.knowledge`.
The five built-in spaces (`email-threads`, `financial-docs`, `financial-overview`,
`support-faq`, and `uploaded-docs`) live under `./contracts/spaces/` alongside
Product Canon. Historical ContractSpec paths forward to these exact objects and
the existing nominal registry. Source policies and registration behavior remain
unchanged.

## Installation

`bun add @lssm-tech/lib.knowledge`

or

`npm install @lssm-tech/lib.knowledge`

## What belongs here

This package currently owns these related concerns:

- Retrieval contracts and implementations: `KnowledgeRetriever`, `StaticRetriever`, and `VectorRetriever`.
- Ingestion and indexing pipeline pieces: `DocumentProcessor`, `EmbeddingService`, `VectorIndexer`, and ingestion adapters.
- Retrieval-augmented query flow: `KnowledgeQueryService` and `KnowledgeQueryOptions`.
- Runtime convenience for OSS consumers: `KnowledgeRuntime` and `createKnowledgeRuntime`.
- First-class Gmail and Google Drive orchestration for ingestion/query flows.
- Mutation governance helpers for dry-runs, approvals, idempotency, audit evidence, and outbound-send gates.
- CompanyOS connector readiness manifests for deterministic support desk, CRM, warehouse, collaboration, project, docs, email, and meeting coverage without live provider calls or production writes.
- Access guardrails and localization: `KnowledgeAccessGuard` and the `i18n` surface.

Use this package when you need the knowledge-layer primitives inside ContractSpec. It is not the source of truth for knowledge-space specs, tenant bindings, provider SDKs, or background job orchestration.

## Core workflows

### Quickstart: one runtime for ingest + retrieve + answer

```ts
import { createKnowledgeRuntime } from "@lssm-tech/lib.knowledge";

const knowledge = createKnowledgeRuntime({
  collection: "knowledge-support-faq",
  namespace: "tenant-acme",
  spaceKey: "support-faq",
  embeddings: embeddingProvider,
  vectorStore: vectorStoreProvider,
  llm: llmProvider,
});

await knowledge.ingestDocument({
  id: "faq-rotate-key",
  mimeType: "text/plain",
  data: new TextEncoder().encode("Rotate API keys from Settings > API."),
  metadata: { locale: "en", category: "canonical" },
});

const snippets = await knowledge.retrieve("How do I rotate a key?", {
  spaceKey: "support-faq",
  tenantId: "tenant-acme",
  locale: "en",
  category: "canonical",
});

const answer = await knowledge.query("How do I rotate a key?", {
  namespace: "tenant-acme",
  filter: { locale: "en" },
});
```


### Sync Gmail and Google Drive into knowledge

```ts
import { createKnowledgeRuntime } from "@lssm-tech/lib.knowledge";

const knowledge = createKnowledgeRuntime({
  collection: "knowledge-workspace",
  namespace: "tenant-acme",
  spaceKey: "workspace",
  embeddings: embeddingProvider,
  vectorStore: vectorStoreProvider,
  gmail: gmailProvider,
  drive: googleDriveProvider,
  deltaCheckpointStore,
});

await knowledge.syncGmail(
  { label: "support" },
  {
    sourceId: "src_gmail_support",
    evidenceRef: "audit://sync/gmail/support",
  },
);

await knowledge.syncDriveFiles(
  { query: "mimeType = 'text/plain' and trashed = false" },
  {
    sourceId: "src_drive_support",
    evidenceRef: "audit://sync/drive/support",
  },
);

await knowledge.watchDriveChanges(
  {
    channelId: "drive-support-watch",
    webhookUrl: "https://app.example.com/webhooks/google-drive",
  },
  { sourceId: "src_drive_support" },
);
```


Gmail and Drive sync use provider contracts from `@lssm-tech/lib.contracts-integrations`. Delta-aware callers can pass and receive lease, cursor/watermark, webhook channel, provider-event, dedupe, idempotency, replay-checkpoint, and tombstone state through `ProviderDeltaSyncState`. When `deltaCheckpointStore` is configured, `syncGmail()`, `syncDriveFiles()`, and `watchDriveChanges()` load the last checkpoint by source ID before calling the provider, then save the returned provider delta before the caller acknowledges sync work.

### Govern knowledge mutations

```ts
import {
  executeGovernedKnowledgeMutation,
} from "@lssm-tech/lib.knowledge/governance";

const result = await executeGovernedKnowledgeMutation(
  {
    operation: "gmail.message.send",
    requiresApproval: true,
    outboundSend: true,
    governance: {
      idempotencyKey: "tenant:gmail-send:123",
      auditEvidence: { evidenceRef: "audit://gmail-send/123" },
      approvalRefs: [{ id: "approval-123" }],
      outboundSendGate: {
        status: "approved",
        evidenceRef: "gate://gmail-send/123",
      },
    },
  },
  () => gmailProvider.sendMessage(message),
  { audit: (envelope) => auditTrail.write(envelope) },
);
```


Set `governance.dryRun` to inspect the plan without executing. Non-dry-run mutations require an idempotency key and audit evidence; approval-required and outbound-send operations require approval refs, and outbound sends require an approved send gate. Every result includes an `auditEnvelope` so app runtimes, Connect review packets, and provider replay tooling can reference the same decision evidence.

### Ingest documents into a vector index

```ts
import {
  DocumentProcessor,
  EmbeddingService,
  StorageIngestionAdapter,
  VectorIndexer,
} from "@lssm-tech/lib.knowledge";

const processor = new DocumentProcessor();
const embeddings = new EmbeddingService(embeddingProvider);
const indexer = new VectorIndexer(vectorStoreProvider, {
  collection: "knowledge-docs",
  namespace: "tenant-acme",
});

const adapter = new StorageIngestionAdapter(processor, embeddings, indexer);
await adapter.ingestObject(objectFromStorageProvider);
```


### Run retrieval or RAG queries

Verified grounded answers can be projected through
`projectGroundedResultToContextEvidenceV1`. The projection revalidates trusted
scope, citations, redaction identity, and replay fingerprints before returning
viewer-scoped excerpts. It never grants instruction or effect authority.

```ts
import {
  KnowledgeQueryService,
  createVectorRetriever,
} from "@lssm-tech/lib.knowledge";

const retriever = createVectorRetriever({
  embeddings: embeddingProvider,
  vectorStore: vectorStoreProvider,
  spaceCollections: {
    "support-faq": "knowledge-support-faq",
  },
});

const snippets = await retriever.retrieve("How do I rotate a key?", {
  spaceKey: "support-faq",
  topK: 3,
  locale: "en",
  category: "canonical",
});

const queryService = new KnowledgeQueryService(
  embeddingProvider,
  vectorStoreProvider,
  llmProvider,
  {
    collection: "knowledge-support-faq",
    namespace: "tenant-acme",
    topK: 5,
  }
);
const answer = await queryService.query("How do I rotate a key?", {
  namespace: "tenant-acme",
  topK: 3,
  filter: { locale: "en" },
});
```


### Use static knowledge for tests or lightweight examples

```ts
import { createStaticRetriever } from "@lssm-tech/lib.knowledge";

const retriever = createStaticRetriever({
  "product-canon": [
    "Rotate API keys from Settings > API.",
    "Only cite reviewed canon content in answers.",
  ].join("\n"),
});

const snippets = await retriever.retrieve("rotate", {
  spaceKey: "product-canon",
  topK: 1,
});
```


### Localize prompts and access messages

```ts
import { createKnowledgeI18n } from "@lssm-tech/lib.knowledge/i18n";

const i18n = createKnowledgeI18n("fr");
const noResults = i18n.t("query.noResults");
```


Typical flow:

1. Extract fragments from raw content.
2. Embed fragments and upsert them into a vector collection.
3. Use `GmailIngestionAdapter`, `DriveIngestionAdapter`, or runtime sync helpers when content originates from workspace providers.
4. Retrieve snippets through a retriever or generate an answer through `KnowledgeQueryService`.
5. Gate reads and writes with `KnowledgeAccessGuard`, and gate mutations with the governance helpers when operating against external systems.

## API map

### Retrieval

- `KnowledgeRetriever`: shared retrieval interface for semantic and static retrieval.
- `RetrieverConfig`: shared defaults for retriever implementations.
- `StaticRetriever` and `createStaticRetriever`: in-memory, line-oriented retrieval for simple spaces and tests.
- `VectorRetriever` and `createVectorRetriever`: embedding + vector-store backed retrieval.
- `RetrievalOptions`: query filters such as `spaceKey`, `topK`, `minScore`, `tenantId`, `locale`, `category`, and provider filter metadata.
- `RetrievalResult`: returned content, source, score, and optional metadata.

### Query

- `KnowledgeQueryService`: embed -> search -> prompt -> LLM chat flow for knowledge-backed answers.
- `KnowledgeQueryConfig`: collection, namespace, prompt, filter, `topK`, and locale defaults.
- `KnowledgeQueryOptions`: per-query overrides for namespace, `topK`, filter, locale, and prompt.
- `KnowledgeAnswer`: answer text, references, and optional token usage.

### Ingestion

- `RawDocument`, `DocumentFragment`, and `DocumentProcessor`: extract raw document content into indexable fragments.
- `EmbeddingService`: batch fragment embeddings through an `EmbeddingProvider`.
- `VectorIndexer` and `VectorIndexConfig`: map embeddings to `VectorStoreProvider.upsert()` requests and persist canonical `payload.text` content for later retrieval/query use.
- `GmailIngestionAdapter`: convert email threads into plaintext documents and index them.
- `DriveIngestionAdapter`: convert Google Drive files into raw documents, skip tombstones, and index them.
- `StorageIngestionAdapter`: fetch object content and run the same process/index pipeline.
- `KnowledgeRuntime` and `createKnowledgeRuntime`: convenience composition for the common ingest -> sync -> retrieve -> answer path.
- `KnowledgeProviderDeltaCheckpointStore`: optional runtime checkpoint store for loading and saving Gmail/Drive provider delta state per source.
- `KnowledgePersistencePort`: optional database persistence port for fragments, sync checkpoints, and query evidence. It records provenance without changing retriever or `KnowledgeAnswer` shapes.

### Mutation governance

- `KnowledgeMutationRequest`: describes a proposed mutation, whether it needs approval, and whether it sends outbound content.
- `KnowledgeMutationGovernance`: carries dry-run, approval refs, idempotency key, audit evidence, and outbound-send gate state.
- `evaluateKnowledgeMutationGovernance`: returns the plan, missing evidence, and block reasons without executing.
- `executeGovernedKnowledgeMutation`: executes only when the plan is allowed; otherwise returns `dry_run` or `blocked`.

### Grounded Company Intelligence retrieval

- `./grounding` exposes an additive, fail-closed grounded-answer service. Authorization preflight runs before retrieval, and an empty or denied evidence scope produces zero retrieval, draft, and verification calls.
- Hybrid channels are bounded to three calls, postvalidated against tenant, workspace, eligible evidence, ACL, and authorization-decision scope, then deterministically fused.
- Viewer redaction happens before citation-ledger creation, fingerprints, drafting, or verification. Draft and verifier ports see only server aliases plus redacted excerpts; they cannot mint public evidence, citation, policy, or authority refs.
- Drafting is strict and atomic, independent verification is mandatory, and there is at most one repair. Only a schema-valid, fully supported result has status `answered`.
- `adaptGroundedResultToKnowledgeAnswer()` adapts only a semantically validated `answered` result to the legacy `KnowledgeAnswer` shape. Every unsafe state remains discriminated and cannot be flattened into a successful legacy answer.
- Fixture adapters are reference-test infrastructure. Production mode rejects fixture channel or provider provenance with `fixture_adapter_forbidden`.
- Grounded knowledge is evidence, never action authority: every result fixes `knowledgeAuthorizesAction` to `false`.

### Original documents and scoped evidence

- `./evidence` adds original-document custody and document evidence. `OriginalDocumentCustody` verifies size and SHA-256 against the delivered bytes, stores originals content-addressed and insert-only through an `ObjectStorageProvider`, appends account-bound provenance for duplicate bytes, and quarantines media-type mismatches.
- `DocumentExtractorRegistry` ships only a strict UTF-8 text extractor. `registerPdfTextExtractor()` and `registerOcrExtractor()` accept the Builder runtime extractor shapes (for example `DefaultBuilderPdfExtractor`). `extractWithReadability()` returns `readable`, `partial`, `unreadable` or `needs_ocr` with typed reasons and a next action; empty output is never a success and partial OCR never claims completeness.
- `DocumentEvidencePipeline` runs custody → extraction → `FragmentEvidenceRecord`s → a partitioned vector projection. Re-ingesting identical bytes with the same extractor plan replays the run; a new version supersedes the previous evidence. Production mode refuses a non-durable `DocumentEvidenceLedger`. Ledgers receive each run's scope, source and fragment text; `readFragmentTexts()` returns text for current evidence only and withdrawal erases it. The durable implementation lives in Company Intelligence (canonical CI records plus custody/extraction tables).
- `retrieveScopedEvidence()` searches only the context/account partitions granted to the viewer and re-validates each candidate against the ledger (current state, visibility, fragment fingerprint, original custody) before ranking. `createScopedEvidenceGroundingChannel()` plugs it into `./grounding`.
- `resolveEvidenceCitations()` resolves citations to the original (ref, digest, media type, size) and the fragment locator, and rejects withdrawn, superseded, foreign or tampered citations.
- `consumeKnowledgeSourceWithdrawal()` consumes the `knowledge.source.withdrawn` event (`./contracts/evidence-events`): evidence becomes `withdrawn` first, then vectors are deleted. `createGmailAttachmentCustodyPort()` and `createEvidenceGmailWithdrawal()` connect Gmail attachment hand-offs and thread withdrawals.
- `resolveKnowledgeProcessingRoute()` binds one explicit model route per workflow capability (exact model, account, data-processing terms, budget, explicit fallbacks); missing or invalid configuration is `configuration_required`. `createRoutedChat()` pins the route model, enforces the budget and records usage; indeterminate outcomes are never retried.

### Guardrails and i18n

- `KnowledgeAccessGuard` and `KnowledgeAccessGuardOptions`: policy-aware checks for read/write/search operations.
- `KnowledgeAccessContext` and `KnowledgeAccessResult`: runtime input/output contracts for access checks.
- `createKnowledgeI18n` and `getDefaultI18n`: localization entrypoints for prompts, guard messages, and ingestion formatting.
- `./i18n`, `./i18n/catalogs/*`, `./i18n/keys`, `./i18n/locale`, and `./i18n/messages`: public i18n subpaths.

## Public entrypoints

The root barrel at `src/index.ts` re-exports public symbols from:

- `./access`
- `./ingestion`
- `./knowledge.feature`
- `./query`
- `./runtime`
- `./retriever`
- `./types`
- `./vector-payload`

Published subpaths from `package.json` are grouped around:

- access: `./access`, `./access/guard`
- retrieval: `./retriever`, `./retriever/interface`, `./retriever/static-retriever`, `./retriever/vector-retriever`
- query: `./query`, `./query/service`
- ingestion: `./ingestion`, `./ingestion/document-processor`, `./ingestion/drive-adapter`, `./ingestion/embedding-service`, `./ingestion/gmail-adapter`, `./ingestion/storage-adapter`, `./ingestion/vector-indexer`
- governance: `./governance`
- grounded retrieval: `./grounding`
- document evidence: `./evidence`, `./contracts/evidence-events`
- feature/runtime helpers: `./knowledge.feature`, root `KnowledgeRuntime` / `createKnowledgeRuntime`
- i18n: `./i18n`, `./i18n/catalogs`, `./i18n/catalogs/en`, `./i18n/catalogs/es`, `./i18n/catalogs/fr`, `./i18n/keys`, `./i18n/locale`, `./i18n/messages`
- shared types/helpers: `./types`, `./vector-payload`

Use `package.json` as the exhaustive source of truth for subpaths; the README calls out the clusters that matter most to consumers.

## Operational semantics and gotchas

- `DocumentProcessor` only ships built-in extractors for `text/plain` and `application/json`.
- If no extractor matches, `DocumentProcessor.process()` throws unless you registered a fallback such as `*/*`.
- If an extractor returns no fragments, or only whitespace fragments, `DocumentProcessor.process()` returns `[]` so nothing unreadable is embedded; `VectorIndexer.upsert()` skips empty batches. Use `extractWithReadability()` for an explicit readability state.
- `EmbeddingService` batches fragments; the default batch size is `16`.
- `StaticRetriever.retrieve()` does simple line-level substring matching. It is not semantic retrieval.
- `StaticRetriever` honors `topK` and `minScore`, but its scores are always `1.0` for matching lines.
- `VectorRetriever.retrieve()` returns `[]` when the requested `spaceKey` is not mapped to a collection.
- `VectorRetriever` uses `tenantId` as the vector-store namespace when provided and automatically merges typed `locale` / `category` filters into the provider filter payload.
- `VectorIndexer.upsert()` stores fragment text under `payload.text`, together with merged fragment/config metadata and `documentId`. Fragment metadata wins over config metadata when keys collide.
- `KnowledgeQueryService` always runs embed -> vector search -> prompt build -> `LLMProvider.chat()`, using indexed `payload.text` as the primary context source and falling back to legacy `payload.content` when needed. Per-query overrides let you change namespace, `topK`, filter, locale, and prompt without rebuilding the service.
- `KnowledgeAccessGuard` defaults to blocking writes to `external` and `ephemeral` knowledge categories.
- `KnowledgeAccessGuard` also blocks writes when `ResolvedKnowledge.space.access.automationWritable` is `false`.
- `KnowledgeAccessGuard` defaults to requiring workflow binding and not requiring agent binding. If a scoped workflow or agent allow-list exists, missing names are denied rather than silently bypassed.
- `GmailIngestionAdapter` converts threads into plaintext and strips HTML when text bodies are missing.
- `DriveIngestionAdapter` indexes Google Drive files through the same processor -> embedding -> indexer path and skips tombstoned metadata or file records before indexing.
- `KnowledgeRuntime.syncGmail()`, `KnowledgeRuntime.syncDriveFiles()`, and `KnowledgeRuntime.watchDriveChanges()` are convenience orchestration methods; provider scheduling, credential refresh, and long-running background sync remain outside this package.
- Runtime sync helpers load and save `ProviderDeltaSyncState` through the optional checkpoint store when a source ID is provided.
- `KnowledgeRuntime` can call an optional persistence port after ingestion/query to store fragments and query evidence; failures are explicit host-adapter concerns rather than hidden vector-store behavior.
- `executeGovernedKnowledgeMutation()` never executes dry-runs or blocked mutations.
- Grounded retrieval never performs provider discovery, credential resolution, persistence, dispatch, or action execution. Hosts own runtime adapters and must preserve the authorization/redaction boundary.
- Non-dry-run mutations require `idempotencyKey` and `auditEvidence.evidenceRef`.
- Mutation execution returns an audit envelope and can call an audit sink before returning.
- Outbound sends require an approved `outboundSendGate` and at least one approval ref.
- This package localizes access messages, query prompts, and Gmail formatting through the `i18n` surface.

## When not to use this package

- Do not use it as a vector store implementation.
- Do not use it as an embedding-model implementation.
- Do not use it as a full sync scheduler or background job system.
- Do not use it as the source of truth for `KnowledgeSpaceSpec`, knowledge sources, or tenant bindings.

## Related packages

- `@lssm-tech/lib.contracts-integrations`: provider interfaces used by vector, embedding, LLM, email, and storage integrations.
- `@lssm-tech/lib.contracts-spec`: source of knowledge-space specs, resolved bindings, and shared translation helpers.
- `@lssm-tech/lib.ai-agent`: major consumer of retrieval and query contracts.
- `@lssm-tech/example.knowledge-canon`: runnable package-level example of binding knowledge spaces and answering through `lib.knowledge`.
- Context-storage modules and bundles in the repo reuse the ingestion pipeline primitives for document indexing flows.

## Local commands

- `bun run lint:check`
- `bun run typecheck`
- `bun run test`
- `bun run test:company-intelligence:grounding`

Grounding uses the pure Core grounding contracts and validator. Legacy adapters keep their original two-argument calls, fail-closed schema/semantic checks and wire results. Company host bindings and evidence projections remain outside Core.

## Canonical ownership

The complete portable Knowledge binding/source/spec families remain canonical Core forwards (including the current complete source helper). Knowledge owns the original nominal KnowledgeSpaceRegistry and Product Canon singleton. The access guard retains its exact full ResolvedKnowledge/ResolvedAppConfig signatures through the canonical RuntimeCore host types; no generic widening or host-field clone is introduced. Old registry and Product Canon leaves forward the same implementations. Source-only qualification precedes task adoption and affected producer/consumer execution.


## Declared capabilities

### Lib Knowledge

Capability ID: `package.lssm.tech.lib.knowledge`

RAG and knowledge base primitives

Use cases:

- Adopt rag and knowledge base primitives

Constraints:

```json
{
  "platforms": [
    "server"
  ],
  "runtimes": [
    "node"
  ],
  "avoidWhen": [
    "The @lssm-tech/lib.knowledge package constraints do not match the target runtime or platform."
  ],
  "requires": [
    "TypeScript"
  ]
}
```

Other capability declarations:

```json
{
  "status": "active",
  "aliases": [
    "contractspec",
    "rag",
    "knowledge-base",
    "embeddings",
    "typescript",
    "lib",
    "knowledge"
  ],
  "pythonEquivalents": [],
  "alternatives": [],
  "relationships": [],
  "resolutionPriority": 50
}
```

Capability imports:

```json
[
  {
    "from": "@lssm-tech/lib.knowledge",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/access",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/access/guard",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/companyos-readiness",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/companyos-refs",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/governance",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/grounding",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/grounding/authorization",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/grounding/bounds",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/grounding/citations",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/grounding/drafting",
    "symbols": []
  },
  {
    "from": "@lssm-tech/lib.knowledge/grounding/fingerprints",
    "symbols": []
  }
]
```

## Catalogue metadata

```json
{
  "family": "sharedLibs",
  "kind": "library",
  "status": "active",
  "adoptionMode": "adoptable",
  "stability": "stable",
  "platforms": [
    "server"
  ],
  "runtimes": [
    "node"
  ],
  "entrypoints": [
    ".",
    "./access",
    "./access/guard",
    "./companyos-readiness",
    "./companyos-refs",
    "./governance",
    "./grounding",
    "./grounding/authorization",
    "./grounding/bounds",
    "./grounding/citations",
    "./grounding/drafting",
    "./grounding/fingerprints",
    "./grounding/fusion",
    "./grounding/knowledge-retriever-channel",
    "./grounding/legacy-adapter",
    "./grounding/record-projection",
    "./grounding/redaction",
    "./grounding/retrieval",
    "./grounding/service",
    "./grounding/support-verification",
    "./grounding/types",
    "./i18n",
    "./i18n/catalogs",
    "./i18n/catalogs/en",
    "./i18n/catalogs/es",
    "./i18n/catalogs/fr",
    "./i18n/keys",
    "./i18n/locale",
    "./i18n/messages",
    "./ingestion",
    "./ingestion/document-processor",
    "./ingestion/drive-adapter",
    "./ingestion/embedding-service",
    "./ingestion/gmail-adapter",
    "./ingestion/storage-adapter",
    "./ingestion/vector-indexer",
    "./knowledge.feature",
    "./query",
    "./query/service",
    "./retriever",
    "./retriever/i18n-plan",
    "./retriever/interface",
    "./retriever/static-retriever",
    "./retriever/vector-retriever",
    "./runtime",
    "./runtime-config",
    "./runtime-provider-sync",
    "./types",
    "./vector-payload",
    "./contracts/binding",
    "./contracts/source",
    "./contracts/spec",
    "./contracts/registry",
    "./contracts/spaces/product-canon"
  ],
  "examples": [],
  "replacements": []
}
```

## Canonical imports

Import paths and symbols below are catalogue declarations. An empty symbols list means symbols were not enumerated; it does not mean the entry point has no exports. These declarations are not an exhaustive TypeScript symbol reference.

```json
[
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/access",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/access/guard",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/companyos-readiness",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/companyos-refs",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/governance",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/grounding",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/grounding/authorization",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/grounding/bounds",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/grounding/citations",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/grounding/drafting",
    "symbols": []
  },
  {
    "capabilityId": "package.lssm.tech.lib.knowledge",
    "from": "@lssm-tech/lib.knowledge/grounding/fingerprints",
    "symbols": []
  }
]
```

## Declared export entry points

Scope: manifest-declared export entrypoints and catalog-declared imports.

Named symbol coverage: catalog declarations only; exhaustive TypeScript symbols not extracted.

Installation status: not verified.

- `@lssm-tech/lib.knowledge` — subpath `.`
  - `unconditional`: `./src/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/access` — subpath `./access`
  - `unconditional`: `./src/access/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/access/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/access/guard` — subpath `./access/guard`
  - `unconditional`: `./src/access/guard.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/access/guard.ts); verified source file.

- `@lssm-tech/lib.knowledge/companyos-readiness` — subpath `./companyos-readiness`
  - `unconditional`: `./src/companyos-readiness.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/companyos-readiness.ts); verified source file.

- `@lssm-tech/lib.knowledge/companyos-refs` — subpath `./companyos-refs`
  - `unconditional`: `./src/companyos-refs.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/companyos-refs.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/binding` — subpath `./contracts/binding`
  - `unconditional`: `./src/contracts/binding.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/binding.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/registry` — subpath `./contracts/registry`
  - `unconditional`: `./src/contracts/registry.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/registry.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/source` — subpath `./contracts/source`
  - `unconditional`: `./src/contracts/source.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/source.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/spaces/product-canon` — subpath `./contracts/spaces/product-canon`
  - `unconditional`: `./src/contracts/spaces/product-canon.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/spaces/product-canon.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/spec` — subpath `./contracts/spec`
  - `unconditional`: `./src/contracts/spec.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/spec.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/evidence-events` — subpath `./contracts/evidence-events`
  - `unconditional`: `./src/contracts/evidence-events.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/evidence-events.ts); verified source file.

- `@lssm-tech/lib.knowledge/evidence` — subpath `./evidence`
  - `unconditional`: `./src/evidence/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/evidence/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/governance` — subpath `./governance`
  - `unconditional`: `./src/governance.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/governance.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding` — subpath `./grounding`
  - `unconditional`: `./src/grounding/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/authorization` — subpath `./grounding/authorization`
  - `unconditional`: `./src/grounding/authorization.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/authorization.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/bounds` — subpath `./grounding/bounds`
  - `unconditional`: `./src/grounding/bounds.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/bounds.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/citations` — subpath `./grounding/citations`
  - `unconditional`: `./src/grounding/citations.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/citations.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/context-evidence` — subpath `./grounding/context-evidence`
  - `unconditional`: `./src/grounding/context-evidence.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/context-evidence.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/drafting` — subpath `./grounding/drafting`
  - `unconditional`: `./src/grounding/drafting.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/drafting.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/fingerprints` — subpath `./grounding/fingerprints`
  - `unconditional`: `./src/grounding/fingerprints.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/fingerprints.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/fusion` — subpath `./grounding/fusion`
  - `unconditional`: `./src/grounding/fusion.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/fusion.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/knowledge-retriever-channel` — subpath `./grounding/knowledge-retriever-channel`
  - `unconditional`: `./src/grounding/knowledge-retriever-channel.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/knowledge-retriever-channel.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/legacy-adapter` — subpath `./grounding/legacy-adapter`
  - `unconditional`: `./src/grounding/legacy-adapter.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/legacy-adapter.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/record-projection` — subpath `./grounding/record-projection`
  - `unconditional`: `./src/grounding/record-projection.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/record-projection.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/redaction` — subpath `./grounding/redaction`
  - `unconditional`: `./src/grounding/redaction.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/redaction.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/retrieval` — subpath `./grounding/retrieval`
  - `unconditional`: `./src/grounding/retrieval.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/retrieval.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/service` — subpath `./grounding/service`
  - `unconditional`: `./src/grounding/service.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/service.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/support-verification` — subpath `./grounding/support-verification`
  - `unconditional`: `./src/grounding/support-verification.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/support-verification.ts); verified source file.

- `@lssm-tech/lib.knowledge/grounding/types` — subpath `./grounding/types`
  - `unconditional`: `./src/grounding/types.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/grounding/types.ts); verified source file.

- `@lssm-tech/lib.knowledge/i18n` — subpath `./i18n`
  - `unconditional`: `./src/i18n/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/i18n/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/i18n/catalogs` — subpath `./i18n/catalogs`
  - `unconditional`: `./src/i18n/catalogs/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/i18n/catalogs/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/i18n/catalogs/en` — subpath `./i18n/catalogs/en`
  - `unconditional`: `./src/i18n/catalogs/en.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/i18n/catalogs/en.ts); verified source file.

- `@lssm-tech/lib.knowledge/i18n/catalogs/es` — subpath `./i18n/catalogs/es`
  - `unconditional`: `./src/i18n/catalogs/es.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/i18n/catalogs/es.ts); verified source file.

- `@lssm-tech/lib.knowledge/i18n/catalogs/fr` — subpath `./i18n/catalogs/fr`
  - `unconditional`: `./src/i18n/catalogs/fr.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/i18n/catalogs/fr.ts); verified source file.

- `@lssm-tech/lib.knowledge/i18n/keys` — subpath `./i18n/keys`
  - `unconditional`: `./src/i18n/keys.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/i18n/keys.ts); verified source file.

- `@lssm-tech/lib.knowledge/i18n/locale` — subpath `./i18n/locale`
  - `unconditional`: `./src/i18n/locale.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/i18n/locale.ts); verified source file.

- `@lssm-tech/lib.knowledge/i18n/messages` — subpath `./i18n/messages`
  - `unconditional`: `./src/i18n/messages.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/i18n/messages.ts); verified source file.

- `@lssm-tech/lib.knowledge/ingestion` — subpath `./ingestion`
  - `unconditional`: `./src/ingestion/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/ingestion/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/ingestion/document-processor` — subpath `./ingestion/document-processor`
  - `unconditional`: `./src/ingestion/document-processor.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/ingestion/document-processor.ts); verified source file.

- `@lssm-tech/lib.knowledge/ingestion/drive-adapter` — subpath `./ingestion/drive-adapter`
  - `unconditional`: `./src/ingestion/drive-adapter.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/ingestion/drive-adapter.ts); verified source file.

- `@lssm-tech/lib.knowledge/ingestion/embedding-service` — subpath `./ingestion/embedding-service`
  - `unconditional`: `./src/ingestion/embedding-service.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/ingestion/embedding-service.ts); verified source file.

- `@lssm-tech/lib.knowledge/ingestion/gmail-adapter` — subpath `./ingestion/gmail-adapter`
  - `unconditional`: `./src/ingestion/gmail-adapter.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/ingestion/gmail-adapter.ts); verified source file.

- `@lssm-tech/lib.knowledge/ingestion/storage-adapter` — subpath `./ingestion/storage-adapter`
  - `unconditional`: `./src/ingestion/storage-adapter.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/ingestion/storage-adapter.ts); verified source file.

- `@lssm-tech/lib.knowledge/ingestion/vector-indexer` — subpath `./ingestion/vector-indexer`
  - `unconditional`: `./src/ingestion/vector-indexer.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/ingestion/vector-indexer.ts); verified source file.

- `@lssm-tech/lib.knowledge/knowledge.feature` — subpath `./knowledge.feature`
  - `unconditional`: `./src/knowledge.feature.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/knowledge.feature.ts); verified source file.

- `@lssm-tech/lib.knowledge/query` — subpath `./query`
  - `unconditional`: `./src/query/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/query/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/query/service` — subpath `./query/service`
  - `unconditional`: `./src/query/service.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/query/service.ts); verified source file.

- `@lssm-tech/lib.knowledge/retriever` — subpath `./retriever`
  - `unconditional`: `./src/retriever/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/retriever/index.ts); verified source file.

- `@lssm-tech/lib.knowledge/retriever/i18n-plan` — subpath `./retriever/i18n-plan`
  - `unconditional`: `./src/retriever/i18n-plan.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/retriever/i18n-plan.ts); verified source file.

- `@lssm-tech/lib.knowledge/retriever/interface` — subpath `./retriever/interface`
  - `unconditional`: `./src/retriever/interface.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/retriever/interface.ts); verified source file.

- `@lssm-tech/lib.knowledge/retriever/static-retriever` — subpath `./retriever/static-retriever`
  - `unconditional`: `./src/retriever/static-retriever.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/retriever/static-retriever.ts); verified source file.

- `@lssm-tech/lib.knowledge/retriever/vector-retriever` — subpath `./retriever/vector-retriever`
  - `unconditional`: `./src/retriever/vector-retriever.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/retriever/vector-retriever.ts); verified source file.

- `@lssm-tech/lib.knowledge/runtime` — subpath `./runtime`
  - `unconditional`: `./src/runtime.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/runtime.ts); verified source file.

- `@lssm-tech/lib.knowledge/runtime-config` — subpath `./runtime-config`
  - `unconditional`: `./src/runtime-config.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/runtime-config.ts); verified source file.

- `@lssm-tech/lib.knowledge/runtime-provider-sync` — subpath `./runtime-provider-sync`
  - `unconditional`: `./src/runtime-provider-sync.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/runtime-provider-sync.ts); verified source file.

- `@lssm-tech/lib.knowledge/types` — subpath `./types`
  - `unconditional`: `./src/types.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/types.ts); verified source file.

- `@lssm-tech/lib.knowledge/vector-payload` — subpath `./vector-payload`
  - `unconditional`: `./src/vector-payload.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/vector-payload.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/knowledge.capability` — subpath `./contracts/knowledge.capability`
  - `unconditional`: `./src/contracts/knowledge.capability.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/knowledge.capability.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/knowledge.feature` — subpath `./contracts/knowledge.feature`
  - `unconditional`: `./src/contracts/knowledge.feature.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/knowledge.feature.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/operation-models` — subpath `./contracts/operation-models`
  - `unconditional`: `./src/contracts/operation-models.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/operation-models.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/operations` — subpath `./contracts/operations`
  - `unconditional`: `./src/contracts/operations.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/operations.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/spaces/email-threads` — subpath `./contracts/spaces/email-threads`
  - `unconditional`: `./src/contracts/spaces/email-threads.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/spaces/email-threads.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/spaces/financial-docs` — subpath `./contracts/spaces/financial-docs`
  - `unconditional`: `./src/contracts/spaces/financial-docs.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/spaces/financial-docs.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/spaces/financial-overview` — subpath `./contracts/spaces/financial-overview`
  - `unconditional`: `./src/contracts/spaces/financial-overview.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/spaces/financial-overview.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/spaces/support-faq` — subpath `./contracts/spaces/support-faq`
  - `unconditional`: `./src/contracts/spaces/support-faq.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/spaces/support-faq.ts); verified source file.

- `@lssm-tech/lib.knowledge/contracts/spaces/uploaded-docs` — subpath `./contracts/spaces/uploaded-docs`
  - `unconditional`: `./src/contracts/spaces/uploaded-docs.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/knowledge/src/contracts/spaces/uploaded-docs.ts); verified source file.

## Package publication metadata

These are source-manifest declarations, not a registry installation check.

```json
{
  "types": "./dist/index.d.ts",
  "files": [
    "dist",
    "README.md"
  ],
  "publishExports": {
    ".": {
      "types": "./dist/index.d.ts",
      "bun": "./dist/index.js",
      "node": "./dist/node/index.js",
      "default": "./dist/index.js"
    },
    "./access": {
      "types": "./dist/access/index.d.ts",
      "bun": "./dist/access/index.js",
      "node": "./dist/node/access/index.js",
      "default": "./dist/access/index.js"
    },
    "./access/guard": {
      "types": "./dist/access/guard.d.ts",
      "bun": "./dist/access/guard.js",
      "node": "./dist/node/access/guard.js",
      "default": "./dist/access/guard.js"
    },
    "./companyos-readiness": {
      "types": "./dist/companyos-readiness.d.ts",
      "bun": "./dist/companyos-readiness.js",
      "node": "./dist/node/companyos-readiness.js",
      "default": "./dist/companyos-readiness.js"
    },
    "./companyos-refs": {
      "types": "./dist/companyos-refs.d.ts",
      "bun": "./dist/companyos-refs.js",
      "node": "./dist/node/companyos-refs.js",
      "default": "./dist/companyos-refs.js"
    },
    "./contracts/binding": {
      "types": "./dist/contracts/binding.d.ts",
      "bun": "./dist/contracts/binding.js",
      "node": "./dist/node/contracts/binding.js",
      "default": "./dist/contracts/binding.js"
    },
    "./contracts/registry": {
      "types": "./dist/contracts/registry.d.ts",
      "bun": "./dist/contracts/registry.js",
      "node": "./dist/node/contracts/registry.js",
      "default": "./dist/contracts/registry.js"
    },
    "./contracts/source": {
      "types": "./dist/contracts/source.d.ts",
      "bun": "./dist/contracts/source.js",
      "node": "./dist/node/contracts/source.js",
      "default": "./dist/contracts/source.js"
    },
    "./contracts/spaces/product-canon": {
      "types": "./dist/contracts/spaces/product-canon.d.ts",
      "bun": "./dist/contracts/spaces/product-canon.js",
      "node": "./dist/node/contracts/spaces/product-canon.js",
      "default": "./dist/contracts/spaces/product-canon.js"
    },
    "./contracts/spec": {
      "types": "./dist/contracts/spec.d.ts",
      "bun": "./dist/contracts/spec.js",
      "node": "./dist/node/contracts/spec.js",
      "default": "./dist/contracts/spec.js"
    },
    "./contracts/evidence-events": {
      "types": "./dist/contracts/evidence-events.d.ts",
      "bun": "./dist/contracts/evidence-events.js",
      "node": "./dist/node/contracts/evidence-events.js",
      "default": "./dist/contracts/evidence-events.js"
    },
    "./evidence": {
      "types": "./dist/evidence/index.d.ts",
      "bun": "./dist/evidence/index.js",
      "node": "./dist/node/evidence/index.js",
      "default": "./dist/evidence/index.js"
    },
    "./governance": {
      "types": "./dist/governance.d.ts",
      "bun": "./dist/governance.js",
      "node": "./dist/node/governance.js",
      "default": "./dist/governance.js"
    },
    "./grounding": {
      "types": "./dist/grounding/index.d.ts",
      "bun": "./dist/grounding/index.js",
      "node": "./dist/node/grounding/index.js",
      "default": "./dist/grounding/index.js"
    },
    "./grounding/authorization": {
      "types": "./dist/grounding/authorization.d.ts",
      "bun": "./dist/grounding/authorization.js",
      "node": "./dist/node/grounding/authorization.js",
      "default": "./dist/grounding/authorization.js"
    },
    "./grounding/bounds": {
      "types": "./dist/grounding/bounds.d.ts",
      "bun": "./dist/grounding/bounds.js",
      "node": "./dist/node/grounding/bounds.js",
      "default": "./dist/grounding/bounds.js"
    },
    "./grounding/citations": {
      "types": "./dist/grounding/citations.d.ts",
      "bun": "./dist/grounding/citations.js",
      "node": "./dist/node/grounding/citations.js",
      "default": "./dist/grounding/citations.js"
    },
    "./grounding/context-evidence": {
      "types": "./dist/grounding/context-evidence.d.ts",
      "bun": "./dist/grounding/context-evidence.js",
      "node": "./dist/node/grounding/context-evidence.js",
      "default": "./dist/grounding/context-evidence.js"
    },
    "./grounding/drafting": {
      "types": "./dist/grounding/drafting.d.ts",
      "bun": "./dist/grounding/drafting.js",
      "node": "./dist/node/grounding/drafting.js",
      "default": "./dist/grounding/drafting.js"
    },
    "./grounding/fingerprints": {
      "types": "./dist/grounding/fingerprints.d.ts",
      "bun": "./dist/grounding/fingerprints.js",
      "node": "./dist/node/grounding/fingerprints.js",
      "default": "./dist/grounding/fingerprints.js"
    },
    "./grounding/fusion": {
      "types": "./dist/grounding/fusion.d.ts",
      "bun": "./dist/grounding/fusion.js",
      "node": "./dist/node/grounding/fusion.js",
      "default": "./dist/grounding/fusion.js"
    },
    "./grounding/knowledge-retriever-channel": {
      "types": "./dist/grounding/knowledge-retriever-channel.d.ts",
      "bun": "./dist/grounding/knowledge-retriever-channel.js",
      "node": "./dist/node/grounding/knowledge-retriever-channel.js",
      "default": "./dist/grounding/knowledge-retriever-channel.js"
    },
    "./grounding/legacy-adapter": {
      "types": "./dist/grounding/legacy-adapter.d.ts",
      "bun": "./dist/grounding/legacy-adapter.js",
      "node": "./dist/node/grounding/legacy-adapter.js",
      "default": "./dist/grounding/legacy-adapter.js"
    },
    "./grounding/record-projection": {
      "types": "./dist/grounding/record-projection.d.ts",
      "bun": "./dist/grounding/record-projection.js",
      "node": "./dist/node/grounding/record-projection.js",
      "default": "./dist/grounding/record-projection.js"
    },
    "./grounding/redaction": {
      "types": "./dist/grounding/redaction.d.ts",
      "bun": "./dist/grounding/redaction.js",
      "node": "./dist/node/grounding/redaction.js",
      "default": "./dist/grounding/redaction.js"
    },
    "./grounding/retrieval": {
      "types": "./dist/grounding/retrieval.d.ts",
      "bun": "./dist/grounding/retrieval.js",
      "node": "./dist/node/grounding/retrieval.js",
      "default": "./dist/grounding/retrieval.js"
    },
    "./grounding/service": {
      "types": "./dist/grounding/service.d.ts",
      "bun": "./dist/grounding/service.js",
      "node": "./dist/node/grounding/service.js",
      "default": "./dist/grounding/service.js"
    },
    "./grounding/support-verification": {
      "types": "./dist/grounding/support-verification.d.ts",
      "bun": "./dist/grounding/support-verification.js",
      "node": "./dist/node/grounding/support-verification.js",
      "default": "./dist/grounding/support-verification.js"
    },
    "./grounding/types": {
      "types": "./dist/grounding/types.d.ts",
      "bun": "./dist/grounding/types.js",
      "node": "./dist/node/grounding/types.js",
      "default": "./dist/grounding/types.js"
    },
    "./i18n": {
      "types": "./dist/i18n/index.d.ts",
      "bun": "./dist/i18n/index.js",
      "node": "./dist/node/i18n/index.js",
      "default": "./dist/i18n/index.js"
    },
    "./i18n/catalogs": {
      "types": "./dist/i18n/catalogs/index.d.ts",
      "bun": "./dist/i18n/catalogs/index.js",
      "node": "./dist/node/i18n/catalogs/index.js",
      "default": "./dist/i18n/catalogs/index.js"
    },
    "./i18n/catalogs/en": {
      "types": "./dist/i18n/catalogs/en.d.ts",
      "bun": "./dist/i18n/catalogs/en.js",
      "node": "./dist/node/i18n/catalogs/en.js",
      "default": "./dist/i18n/catalogs/en.js"
    },
    "./i18n/catalogs/es": {
      "types": "./dist/i18n/catalogs/es.d.ts",
      "bun": "./dist/i18n/catalogs/es.js",
      "node": "./dist/node/i18n/catalogs/es.js",
      "default": "./dist/i18n/catalogs/es.js"
    },
    "./i18n/catalogs/fr": {
      "types": "./dist/i18n/catalogs/fr.d.ts",
      "bun": "./dist/i18n/catalogs/fr.js",
      "node": "./dist/node/i18n/catalogs/fr.js",
      "default": "./dist/i18n/catalogs/fr.js"
    },
    "./i18n/keys": {
      "types": "./dist/i18n/keys.d.ts",
      "bun": "./dist/i18n/keys.js",
      "node": "./dist/node/i18n/keys.js",
      "default": "./dist/i18n/keys.js"
    },
    "./i18n/locale": {
      "types": "./dist/i18n/locale.d.ts",
      "bun": "./dist/i18n/locale.js",
      "node": "./dist/node/i18n/locale.js",
      "default": "./dist/i18n/locale.js"
    },
    "./i18n/messages": {
      "types": "./dist/i18n/messages.d.ts",
      "bun": "./dist/i18n/messages.js",
      "node": "./dist/node/i18n/messages.js",
      "default": "./dist/i18n/messages.js"
    },
    "./ingestion": {
      "types": "./dist/ingestion/index.d.ts",
      "bun": "./dist/ingestion/index.js",
      "node": "./dist/node/ingestion/index.js",
      "default": "./dist/ingestion/index.js"
    },
    "./ingestion/document-processor": {
      "types": "./dist/ingestion/document-processor.d.ts",
      "bun": "./dist/ingestion/document-processor.js",
      "node": "./dist/node/ingestion/document-processor.js",
      "default": "./dist/ingestion/document-processor.js"
    },
    "./ingestion/drive-adapter": {
      "types": "./dist/ingestion/drive-adapter.d.ts",
      "bun": "./dist/ingestion/drive-adapter.js",
      "node": "./dist/node/ingestion/drive-adapter.js",
      "default": "./dist/ingestion/drive-adapter.js"
    },
    "./ingestion/embedding-service": {
      "types": "./dist/ingestion/embedding-service.d.ts",
      "bun": "./dist/ingestion/embedding-service.js",
      "node": "./dist/node/ingestion/embedding-service.js",
      "default": "./dist/ingestion/embedding-service.js"
    },
    "./ingestion/gmail-adapter": {
      "types": "./dist/ingestion/gmail-adapter.d.ts",
      "bun": "./dist/ingestion/gmail-adapter.js",
      "node": "./dist/node/ingestion/gmail-adapter.js",
      "default": "./dist/ingestion/gmail-adapter.js"
    },
    "./ingestion/storage-adapter": {
      "types": "./dist/ingestion/storage-adapter.d.ts",
      "bun": "./dist/ingestion/storage-adapter.js",
      "node": "./dist/node/ingestion/storage-adapter.js",
      "default": "./dist/ingestion/storage-adapter.js"
    },
    "./ingestion/vector-indexer": {
      "types": "./dist/ingestion/vector-indexer.d.ts",
      "bun": "./dist/ingestion/vector-indexer.js",
      "node": "./dist/node/ingestion/vector-indexer.js",
      "default": "./dist/ingestion/vector-indexer.js"
    },
    "./knowledge.feature": {
      "types": "./dist/knowledge.feature.d.ts",
      "bun": "./dist/knowledge.feature.js",
      "node": "./dist/node/knowledge.feature.js",
      "default": "./dist/knowledge.feature.js"
    },
    "./query": {
      "types": "./dist/query/index.d.ts",
      "bun": "./dist/query/index.js",
      "node": "./dist/node/query/index.js",
      "default": "./dist/query/index.js"
    },
    "./query/service": {
      "types": "./dist/query/service.d.ts",
      "bun": "./dist/query/service.js",
      "node": "./dist/node/query/service.js",
      "default": "./dist/query/service.js"
    },
    "./retriever": {
      "types": "./dist/retriever/index.d.ts",
      "bun": "./dist/retriever/index.js",
      "node": "./dist/node/retriever/index.js",
      "default": "./dist/retriever/index.js"
    },
    "./retriever/i18n-plan": {
      "types": "./dist/retriever/i18n-plan.d.ts",
      "bun": "./dist/retriever/i18n-plan.js",
      "node": "./dist/node/retriever/i18n-plan.js",
      "default": "./dist/retriever/i18n-plan.js"
    },
    "./retriever/interface": {
      "types": "./dist/retriever/interface.d.ts",
      "bun": "./dist/retriever/interface.js",
      "node": "./dist/node/retriever/interface.js",
      "default": "./dist/retriever/interface.js"
    },
    "./retriever/static-retriever": {
      "types": "./dist/retriever/static-retriever.d.ts",
      "bun": "./dist/retriever/static-retriever.js",
      "node": "./dist/node/retriever/static-retriever.js",
      "default": "./dist/retriever/static-retriever.js"
    },
    "./retriever/vector-retriever": {
      "types": "./dist/retriever/vector-retriever.d.ts",
      "bun": "./dist/retriever/vector-retriever.js",
      "node": "./dist/node/retriever/vector-retriever.js",
      "default": "./dist/retriever/vector-retriever.js"
    },
    "./runtime": {
      "types": "./dist/runtime.d.ts",
      "bun": "./dist/runtime.js",
      "node": "./dist/node/runtime.js",
      "default": "./dist/runtime.js"
    },
    "./runtime-config": {
      "types": "./dist/runtime-config.d.ts",
      "bun": "./dist/runtime-config.js",
      "node": "./dist/node/runtime-config.js",
      "default": "./dist/runtime-config.js"
    },
    "./runtime-provider-sync": {
      "types": "./dist/runtime-provider-sync.d.ts",
      "bun": "./dist/runtime-provider-sync.js",
      "node": "./dist/node/runtime-provider-sync.js",
      "default": "./dist/runtime-provider-sync.js"
    },
    "./types": {
      "types": "./dist/types.d.ts",
      "bun": "./dist/types.js",
      "node": "./dist/node/types.js",
      "default": "./dist/types.js"
    },
    "./vector-payload": {
      "types": "./dist/vector-payload.d.ts",
      "bun": "./dist/vector-payload.js",
      "node": "./dist/node/vector-payload.js",
      "default": "./dist/vector-payload.js"
    },
    "./contracts/knowledge.capability": {
      "types": "./dist/contracts/knowledge.capability.d.ts",
      "bun": "./dist/contracts/knowledge.capability.js",
      "node": "./dist/node/contracts/knowledge.capability.js",
      "default": "./dist/contracts/knowledge.capability.js"
    },
    "./contracts/knowledge.feature": {
      "types": "./dist/contracts/knowledge.feature.d.ts",
      "bun": "./dist/contracts/knowledge.feature.js",
      "node": "./dist/node/contracts/knowledge.feature.js",
      "default": "./dist/contracts/knowledge.feature.js"
    },
    "./contracts/operation-models": {
      "types": "./dist/contracts/operation-models.d.ts",
      "bun": "./dist/contracts/operation-models.js",
      "node": "./dist/node/contracts/operation-models.js",
      "default": "./dist/contracts/operation-models.js"
    },
    "./contracts/operations": {
      "types": "./dist/contracts/operations.d.ts",
      "bun": "./dist/contracts/operations.js",
      "node": "./dist/node/contracts/operations.js",
      "default": "./dist/contracts/operations.js"
    },
    "./contracts/spaces/email-threads": {
      "types": "./dist/contracts/spaces/email-threads.d.ts",
      "bun": "./dist/contracts/spaces/email-threads.js",
      "node": "./dist/node/contracts/spaces/email-threads.js",
      "default": "./dist/contracts/spaces/email-threads.js"
    },
    "./contracts/spaces/financial-docs": {
      "types": "./dist/contracts/spaces/financial-docs.d.ts",
      "bun": "./dist/contracts/spaces/financial-docs.js",
      "node": "./dist/node/contracts/spaces/financial-docs.js",
      "default": "./dist/contracts/spaces/financial-docs.js"
    },
    "./contracts/spaces/financial-overview": {
      "types": "./dist/contracts/spaces/financial-overview.d.ts",
      "bun": "./dist/contracts/spaces/financial-overview.js",
      "node": "./dist/node/contracts/spaces/financial-overview.js",
      "default": "./dist/contracts/spaces/financial-overview.js"
    },
    "./contracts/spaces/support-faq": {
      "types": "./dist/contracts/spaces/support-faq.d.ts",
      "bun": "./dist/contracts/spaces/support-faq.js",
      "node": "./dist/node/contracts/spaces/support-faq.js",
      "default": "./dist/contracts/spaces/support-faq.js"
    },
    "./contracts/spaces/uploaded-docs": {
      "types": "./dist/contracts/spaces/uploaded-docs.d.ts",
      "bun": "./dist/contracts/spaces/uploaded-docs.js",
      "node": "./dist/node/contracts/spaces/uploaded-docs.js",
      "default": "./dist/contracts/spaces/uploaded-docs.js"
    }
  }
}
```

## Dependencies

Metadata status: complete pinned manifest.

### Runtime dependencies

- [@lssm-tech/lib.contracts-integrations](https://lssm.co/docs/packages/lib.contracts-integrations/): `workspace:^`
- [@lssm-tech/lib.contracts-runtime-core](https://lssm.co/docs/packages/lib.contracts-runtime-core/): `workspace:^`
- [@lssm-tech/lib.contracts-runtime-kernel](https://lssm.co/docs/packages/lib.contracts-runtime-kernel/): `workspace:^`
- [@lssm-tech/lib.contracts-spec-core](https://lssm.co/docs/packages/lib.contracts-spec-core/): `workspace:^`
- [@lssm-tech/lib.schema](https://lssm.co/docs/packages/lib.schema/): `workspace:^`
- [@lssm-tech/lib.translation-runtime](https://lssm.co/docs/packages/lib.translation-runtime/): `workspace:^`
- `zod`: `catalog:`

### Peer dependencies

No declarations in the inspected manifest.

### Optional dependencies

No declarations in the inspected manifest.

### Development dependencies

- [@lssm-tech/tool.bun](https://lssm.co/docs/packages/tool.bun/): `workspace:*`
- [@lssm-tech/tool.typescript](https://lssm.co/docs/packages/tool.typescript/): `workspace:*`
- `typescript`: `catalog:`

### Peer dependency metadata

```json
{}
```

### Bundled dependencies

```json
null
```

## Package scripts

Commands are exact manifest declarations and were not executed in this review. Script metadata status: complete pinned manifest.

```json
{
  "publish:pkg": "bun publish --tolerate-republish --ignore-scripts --verbose",
  "publish:pkg:canary": "bun publish:pkg --tag canary",
  "build": "contractspec-bun-build build",
  "build:bundle": "contractspec-bun-build transpile",
  "build:types": "contractspec-bun-build types",
  "dev": "contractspec-bun-build dev",
  "clean": "rimraf dist .turbo",
  "lint": "bun lint:fix",
  "lint:fix": "node ../../../../scripts/biome.cjs check --write --unsafe --only=nursery/useSortedClasses . && node ../../../../scripts/biome.cjs check --write .",
  "lint:check": "node ../../../../scripts/biome.cjs check .",
  "test": "bun test --pass-with-no-tests",
  "test:company-intelligence:grounding": "bun test testdata/company-intelligence/grounding/grounding.test.ts",
  "prebuild": "contractspec-bun-build prebuild",
  "typecheck": "tsgo --noEmit"
}
```

## Declared documentation links

- [Lib Knowledge documentation](https://www.npmjs.com/package/%40lssm-tech%2Flib.knowledge) — declared link; destination not verified.

```json
{
  "url": "https://www.npmjs.com/package/%40lssm-tech%2Flib.knowledge",
  "kind": "readme"
}
```

## Existing agent-guide projection

```json
{
  "path": "packages/apps/web-landing/public/llms-packages/lib.knowledge.txt",
  "route": "/llms/lib.knowledge",
  "sourceUrl": "https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/lib.knowledge.txt",
  "blobSha": "1fa6d538d0493d2ceef33af9c393fcbe9c1220f3",
  "sourcePin": "bcc79fcc27c4d801c2119bef81ddcce7b4e86498",
  "bodyEqualsReadme": false,
  "aggregateSourcePath": "packages/apps/web-landing/public/llms-full.txt",
  "aggregateBlobSha": "691b1d33efee24c440598b9106c81432f56aafaf"
}
```

### Generated guide appendix

This appendix belongs to the existing generated agent guide. It is separate from the checked-in README and is not evidence of an executed runtime.



## Provider-free release guardrails

CompanyOS AI OS release narratives rely on this package as provider-free knowledge evidence. Stale runbook or low-confidence evidence must remain blocked before action, and non-dry-run knowledge mutations require approval or audit references before execution.

