Every other publishable integration (@mem0/pi-agent-plugin,
@mem0/openclaw-mem0, @mem0/vercel-ai-provider) and the repo root ship
Apache-2.0. The n8n node carried MIT from the n8n starter template.
LICENSE is now byte-identical to integrations/pi-agent-plugin/LICENSE.
eslint-plugin-n8n-nodes-base hard-codes MIT in
community-package-json-license-not-default, so that rule is disabled.
It is a starter-template convention, not a functional requirement: n8n
resolves and loads community packages without reading the license field,
and n8n's own node packages (n8n-nodes-base, @n8n/n8n-nodes-langchain)
publish as "SEE LICENSE IN LICENSE.md" rather than MIT.
- Telemetry: replace client-side PostHog (which read process.env, banned in
verified nodes) with first-party `source: "N8N"` attribution on API requests,
mirroring OpenClaw. Removes the undisclosed-collection concern entirely.
- Verification-scanner fixes: add credential icon, use NodeConnectionTypes.Main
instead of the 'main' literal, wrap error paths in NodeApiError, stop shipping
.d.ts / tsbuildinfo, and align the local eslint config with the scanner.
- Add offline unit tests (jest): entity-id guard, JSON-parse errors, poll-timeout
loop, source attribution, and Return All pagination.
- Get Many: add a Return All option that pages through all memories.
- Docs: README telemetry note and an AGENTS.md Key Directories row.
Verified: build + tsc + eslint + 5 unit tests + live E2E against api.mem0.ai, and
the packed tarball passes @n8n/scan-community-package with zero violations.