Skip to content

feat(knowledge): add @crewcircle/knowledge package with external distribution - #26

Merged
crewcricle merged 5 commits into
mainfrom
feat/knowledge-package-distribution
Jul 26, 2026
Merged

feat(knowledge): add @crewcircle/knowledge package with external distribution#26
crewcricle merged 5 commits into
mainfrom
feat/knowledge-package-distribution

Conversation

@rprabhat

Copy link
Copy Markdown
Collaborator

Summary

Adds the complete @crewcircle/knowledge package with full external distribution setup via npm.

Changes

Package (packages/knowledge/)

  • Core types & facade: Branded identifiers, Document/Entity/Relation, Retrieval/GraphQuery, Provider interfaces
  • KnowledgeGraph facade: Provider-agnostic CRUD, search, graph traversal (neighbors, paths, subgraphs)
  • Providers:
    • MockProvider - In-memory for tests (63 passing tests)
    • EmbeddedProvider - Cognee embedded (SQLite + LanceDB + Kuzu) for local dev
    • PostgresProvider - pgvector + Apache AGE + RLS for production
  • Internal domain (org memory): Standards, Decisions/ADRs, Retrospectives, Projects, Milestones, Technologies
  • External domain (per-app): TaxFlow (tax rules, ATO rulings, lodgment, workflows), CrewCircle (features, incidents, runbooks)
  • R2 Backup: Cloudflare R2 backup/restore with manifest, presigned URLs

Distribution Setup

  • publishConfig with npm registry + provenance attestation
  • .npmrc for @crewcircle scope
  • Changesets for automated versioning/changelog
  • GitHub Actions CI: typecheck, lint, test, build, changeset check
  • GitHub Actions Release: version bump on main merge -> Version PR -> tag push -> npm publish with provenance
  • Manual release script: ./scripts/release.sh [patch|minor|major]

Admin Dashboard Integration

  • Knowledge nav item in sidebar (Brain icon)
  • /admin/knowledge page with stat cards, search UI, provider status

Testing

  • 63 unit tests passing (types, providers, facade, internal, external domains)
  • Build succeeds with ESM + CJS + types output
  • All lint/typecheck pass

How to Release

# Automated (preferred)
npx changeset    # create .changeset/*.md, commit + merge PR
# -> Version PR auto-created -> merge -> tag pushed -> published

# Manual
./scripts/release.sh patch  # or minor/major

External Usage

After first publish:

npm install @crewcircle/knowledge

…ribution

- Add complete @crewcircle/knowledge package with:
  - Core types, KnowledgeGraph facade, provider interfaces
  - MockProvider (in-memory for tests)
  - EmbeddedProvider (Cognee SQLite+LanceDB+Kuzu for local dev)
  - PostgresProvider (pgvector + Apache AGE + RLS for production)
  - Internal domain (standards, decisions, retrospectives, projects)
  - External domain (TaxFlow, CrewCircle per-app graphs)
  - R2BackupService for Cloudflare R2 backups

- Add external distribution setup:
  - publishConfig with npm registry, provenance
  - .npmrc for @crewcircle scope
  - Changesets for automated versioning/changelog
  - GitHub Actions CI (typecheck, lint, test, build)
  - GitHub Actions Release (version + publish on tag)
  - Release script and documentation

- Integrate with admin dashboard:
  - Knowledge nav item in sidebar
  - /admin/knowledge page with stats, search, provider status
@vercel

vercel Bot commented Jul 26, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
crewcircle-website Error Error Jul 26, 2026 5:53am

@crewcricle
crewcricle merged commit 9148462 into main Jul 26, 2026
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants