{"_id":"@accidentally-awesome-labs/spatula-core","_rev":"2-7e2063b78faf5b303d3b75e6b0efb2ac","name":"@accidentally-awesome-labs/spatula-core","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@accidentally-awesome-labs/spatula-core","version":"0.1.0","license":"MIT","_id":"@accidentally-awesome-labs/spatula-core@0.1.0","maintainers":[{"name":"salarsayyad","email":"salar.sayyad@gmail.com"}],"homepage":"https://github.com/accidentally-awesome-labs/spatula#readme","bugs":{"url":"https://github.com/accidentally-awesome-labs/spatula/issues"},"dist":{"shasum":"92b5b0ba2c45a7c5fd52ae9d222347a4fab6dc17","tarball":"https://registry.npmjs.org/@accidentally-awesome-labs/spatula-core/-/spatula-core-0.1.0.tgz","fileCount":239,"integrity":"sha512-8qudhPbb8HuxGa6fNxi6b489AmV5usaluIiGUTEoFe3WCAfHqOjZfpcLOqlBIjLXDMVeGHamQTBgIRjG3amFMQ==","signatures":[{"sig":"MEQCIBOWzhN7JNVWvVs1V18xxxl3qqb/qC9yjKLghcxGvo5uAiAPwHvN9+7w3ljXgf/Vvfn6KiLOuc/P732c3pgKr/4G3w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@accidentally-awesome-labs%2fspatula-core@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":575044},"main":"./dist/index.js","type":"module","_from":"file:/home/runner/work/_temp/spatula-npm-packs/accidentally-awesome-labs-spatula-core-0.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./pipeline/types.js":{"types":"./dist/pipeline/types.d.ts","import":"./dist/pipeline/types.js"},"./crawlers/completion-checker.js":{"types":"./dist/crawlers/completion-checker.d.ts","import":"./dist/crawlers/completion-checker.js"}},"scripts":{"lint":"eslint src/","test":"vitest run","build":"tsc","clean":"rm -rf dist .turbo *.tsbuildinfo","lint:fix":"eslint src/ --fix","typecheck":"tsc --noEmit","test:watch":"vitest watch","test:adversarial":"vitest run src/extraction/__tests__/adversarial.test.ts"},"_npmUser":{"name":"salarsayyad","email":"salar.sayyad@gmail.com"},"_resolved":"/home/runner/work/_temp/spatula-npm-packs/accidentally-awesome-labs-spatula-core-0.1.0.tgz","_integrity":"sha512-8qudhPbb8HuxGa6fNxi6b489AmV5usaluIiGUTEoFe3WCAfHqOjZfpcLOqlBIjLXDMVeGHamQTBgIRjG3amFMQ==","repository":{"url":"git+https://github.com/accidentally-awesome-labs/spatula.git","type":"git","directory":"packages/core"},"_npmVersion":"12.0.1","description":"Internal Spatula core orchestrators — NO TS-API compat guarantee. Public SDK is @accidentally-awesome-labs/spatula-client. See docs/compat-policy.md.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^3.24.0","yaml":"^2.8.3","cheerio":"^1.2.0","hyparquet":"^1.25.1","playwright":"^1.58.2","robots-parser":"^3.0.1","better-sqlite3":"^12.8.0","@duckdb/node-api":"1.5.0-r.1","hyparquet-writer":"^0.13.0","@aws-sdk/client-s3":"^3.1085.0","@mendable/firecrawl-js":"^4.30.0","@aws-sdk/s3-request-presigner":"^3.1085.0","@accidentally-awesome-labs/spatula-shared":"0.1.0","@accidentally-awesome-labs/spatula-core-types":"0.1.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.6","typescript":"^5.7.0","@types/better-sqlite3":"^7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/spatula-core_0.1.0_1784125170049_0.17475557156837085","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@accidentally-awesome-labs/spatula-core","version":"0.1.1","description":"Internal Spatula core orchestrators — NO TS-API compat guarantee. Public SDK is @accidentally-awesome-labs/spatula-client. See docs/compat-policy.md.","license":"MIT","repository":{"type":"git","url":"git+https://github.com/accidentally-awesome-labs/spatula.git","directory":"packages/core"},"homepage":"https://github.com/accidentally-awesome-labs/spatula#readme","bugs":{"url":"https://github.com/accidentally-awesome-labs/spatula/issues"},"publishConfig":{"access":"public","provenance":true},"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./pipeline/types.js":{"types":"./dist/pipeline/types.d.ts","import":"./dist/pipeline/types.js"},"./crawlers/completion-checker.js":{"types":"./dist/crawlers/completion-checker.d.ts","import":"./dist/crawlers/completion-checker.js"}},"engines":{"node":">=22"},"dependencies":{"@aws-sdk/client-s3":"^3.1085.0","@aws-sdk/s3-request-presigner":"^3.1085.0","@duckdb/node-api":"1.5.0-r.1","@mendable/firecrawl-js":"^4.30.0","better-sqlite3":"^12.8.0","cheerio":"^1.2.0","hyparquet":"^1.25.1","hyparquet-writer":"^0.13.0","playwright":"^1.58.2","robots-parser":"^3.0.1","yaml":"^2.8.3","zod":"^3.24.0","@accidentally-awesome-labs/spatula-core-types":"0.1.1","@accidentally-awesome-labs/spatula-shared":"0.1.1"},"devDependencies":{"@types/better-sqlite3":"^7.6.13","typescript":"^5.7.0","vitest":"^3.2.6"},"scripts":{"build":"tsc","test":"vitest run","test:watch":"vitest watch","test:adversarial":"vitest run src/extraction/__tests__/adversarial.test.ts","lint":"eslint src/","lint:fix":"eslint src/ --fix","typecheck":"tsc --noEmit","clean":"rm -rf dist .turbo *.tsbuildinfo"},"_id":"@accidentally-awesome-labs/spatula-core@0.1.1","_integrity":"sha512-bcA48usxeUVEtpTIAdNRXcFx0nEgN8FIwxrytsmHlArLeCjdfrqi04bi2h3PZ8DDmNo7VkLSNGkUcjwN/GSLgw==","_resolved":"/home/runner/work/_temp/spatula-npm-packs/accidentally-awesome-labs-spatula-core-0.1.1.tgz","_from":"file:/home/runner/work/_temp/spatula-npm-packs/accidentally-awesome-labs-spatula-core-0.1.1.tgz","_nodeVersion":"22.23.1","_npmVersion":"12.0.1","dist":{"integrity":"sha512-bcA48usxeUVEtpTIAdNRXcFx0nEgN8FIwxrytsmHlArLeCjdfrqi04bi2h3PZ8DDmNo7VkLSNGkUcjwN/GSLgw==","shasum":"be0d6921dd9b5bd65a5aa203ebbd1de5e7d4b02a","tarball":"https://registry.npmjs.org/@accidentally-awesome-labs/spatula-core/-/spatula-core-0.1.1.tgz","fileCount":239,"unpackedSize":584076,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@accidentally-awesome-labs%2fspatula-core@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDsbUpKUdPVjM6U3MZzU/32gLPqEwF0dyIfnCoYeZR/8gIhAOcSQJ1IVX9M2XIwvM/DjZhv6hnUYu20w+UlR6spPlIc"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:eaa75d1f-dadb-412f-a729-580275bf4611"}},"directories":{},"maintainers":[{"name":"salarsayyad","email":"salar.sayyad@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/spatula-core_0.1.1_1784144323676_0.9939116532557841"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-15T14:19:29.953Z","modified":"2026-07-15T19:38:44.160Z","0.1.0":"2026-07-15T14:19:30.264Z","0.1.1":"2026-07-15T19:38:43.891Z"},"bugs":{"url":"https://github.com/accidentally-awesome-labs/spatula/issues"},"license":"MIT","homepage":"https://github.com/accidentally-awesome-labs/spatula#readme","repository":{"type":"git","url":"git+https://github.com/accidentally-awesome-labs/spatula.git","directory":"packages/core"},"description":"Internal Spatula core orchestrators — NO TS-API compat guarantee. Public SDK is @accidentally-awesome-labs/spatula-client. See docs/compat-policy.md.","maintainers":[{"name":"salarsayyad","email":"salar.sayyad@gmail.com"}],"readme":"# @accidentally-awesome-labs/spatula-core\n\n> **NO COMPAT GUARANTEE AT TS-API LEVEL.** This is an internal Spatula implementation package. Breaking changes to its TypeScript surface may land in any **MINOR** release. External consumers should not import it directly. The public packages with semver-stable TypeScript surfaces are: `@accidentally-awesome-labs/spatula-client`, `@accidentally-awesome-labs/spatula-core-types`, and `@accidentally-awesome-labs/spatula`. See [`docs/compat-policy.md`](https://github.com/accidentally-awesome-labs/spatula/blob/main/docs/compat-policy.md) for the full matrix.\n\n## Purpose\n\nPure orchestrators and pipeline logic for Spatula: crawl orchestrator, schema-evolution engine, reconciliation pipeline, export drivers, action interpreter. Zero HTTP/queue dependencies — `LocalPipelineRunner` (CLI) and BullMQ workers (server) both import from here.\n\n## Stability\n\n**No stable TS-API.** Use `@accidentally-awesome-labs/spatula-client` for programmatic API access or `@accidentally-awesome-labs/spatula` for command-line workflows.\n\n## Compatibility\n\nThe TypeScript API is internal and may change between minor versions. Public compatibility guarantees live in `docs/compat-policy.md`.\n","readmeFilename":"README.md"}