Files
boc/quixzoom-token-system/api/node_modules/resolve/.claude/notes.md
T
Bernt 58ca4e68db feat(boc): Complete Business Operations Center v1.0
- Go backend API with full CRUD for all modules (CRM, Sales, Finance, HR, Legal, Marketing, Support, Purchase, Inventory, Projects, Automation, Analytics)
- Rust analytics service with parallel report generation
- C runtime with POSIX shared memory IPC
- PostgreSQL schema with 30+ tables, full migrations
- Redis cache, sessions, pub/sub
- Kafka event streaming with Zookeeper
- WebSocket hub for real-time updates
- Automation engine with cron jobs, workflows, event triggers
- JWT authentication, multi-tenant from start
- Docker Compose with all services
- Nginx reverse proxy with rate limiting
- Integration tests passing
- Feature gap analysis against Fortnox/Odoo/Visma

Refs: BOC-001
2026-07-12 12:41:35 +00:00

1.2 KiB

resolve package - session notes

Versioning

  • Manual versioning only - do NOT use npm version
  • Edit package.json version directly, commit with message v{version}, then create annotated tag
  • Changelog lives in git tag annotations, not a separate file
  • Tag format: git tag -a v{version} -m "{changelog}"

Code style

  • __proto__: null on ALL object literals (prototype pollution protection)
  • .slice() not .substring()
  • One exported function per file
  • Move nested/inner functions to module level when feasible
  • Prefer non-hoisted declarations (function declarations at module level, not expressions)
  • No mutation - copy objects instead of modifying inputs

Testing

  • test/list-exports is a git submodule with sparse checkout
  • Tests should cover ALL entrypoints from fixtures, not just '.' subpaths
  • Use extensions: ['.js', '.json'] when testing exports resolution

exports field implementation

  • Uses node-exports-info for category semantics
  • Categories: pre-exports, broken, conditions, patterns, pattern-trailers, current
  • exportsCategory option or engines: true to auto-detect from consumer's engines.node
  • Self-reference resolution respects node_modules boundaries