github TypeScript re-analysis due

athompson83/data-foundry

github

An AI-native data foundry: turns messy, lawfully acquired sources into canonical, evidence-backed knowledge products served via web, REST, MCP and bulk exports. Provenance-first, vertical-agnostic.

maintainer
athompson83
licence
MIT
first seen
2026-08-18
last seen
2026-09-18
releases · 30d
0
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 0 tools
transport http counts 0 tools · 0 res · 0 prompts permission surface via code analysis

No tools enumerated yet for this server.

skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 52a98ac · analyzer v33 · 1w ago

skills & prompt files 1

danger signals1

code evidence vHEAD · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 517

filesystem 70

  • fs (weak) athompson83-data-foundry-52a98ac/apps/api/test/boundary.test.ts :18 import { existsSync, readFileSync, readdirSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/apps/api/test/route-keys.test.ts :20 import { readFileSync, readdirSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/apps/edge/test/bundle.test.ts :44 import { readFileSync, mkdtempSync, rmSync, writeFileSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/apps/edge/test/env.test.ts :14 import { readFileSync, readdirSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/apps/ingestion-worker/test/operation-alerts.test.ts :10 import { readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/apps/ingestion-worker/test/runner.test.ts :1 import { readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/apps/ingestion-worker/test/synthetic-ingestion.test.ts :1 import { readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/apps/mcp/test/query-layer-boundary.test.ts :22 import { readFileSync, readdirSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/apps/web/test/boundary.test.ts :20 import { readFileSync, readdirSync } from 'node:fs';
  • fs athompson83-data-foundry-52a98ac/packages/acquisition/src/fs.ts :1 import { mkdir, readFile, readdir, rm, stat, writeFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/packages/acquisition/src/providers/fixture.ts :169 body = await this.#fs.readFile(`${this.#directory}/${entry.file}`);
  • fs athompson83-data-foundry-52a98ac/packages/acquisition/src/storage/local-fs-artifact-store.ts :63 await this.#fs.mkdir(path.slice(0, path.lastIndexOf('/')));
show 28 more
  • fs (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/boundary.test.ts :20 import { readFileSync, readdirSync, statSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/storage.test.ts :1 import { mkdtemp, rm } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/packages/extraction/test/boundary.test.ts :1 import { readFileSync, readdirSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/packages/normalization/test/contract.test.ts :1 import { readFileSync, readdirSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/packages/query-model/test/configured-identifiers.test.ts :1 import { readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/packages/query-model/test/driver-boundary.test.ts :20 import { readFileSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/packages/query-model/test/search.test.ts :9 import { readFileSync, readdirSync } from 'node:fs';
  • fs athompson83-data-foundry-52a98ac/services/export-builder/src/sink.ts :15 import { mkdir, writeFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/services/export-builder/test/boundary.test.ts :24 import { readdirSync, readFileSync, statSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/services/export-builder/test/snapshot.test.ts :11 import { mkdtemp, readFile, readdir, rm } from 'node:fs/promises';
  • fs athompson83-data-foundry-52a98ac/services/ingest-worker/src/cli.ts :14 import { mkdir } from 'node:fs/promises';
  • fs athompson83-data-foundry-52a98ac/services/ingest-worker/src/config.ts :15 import { readdir, readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/services/ingest-worker/src/fixtures.ts :25 import { readdir, readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tests/contract/ordering-determinism.test.ts :21 import { readdirSync, readFileSync, statSync } from 'node:fs';
  • fs (weak) athompson83-data-foundry-52a98ac/tests/support/harness.ts :15 import { readFileSync } from 'node:fs';
  • fs athompson83-data-foundry-52a98ac/tooling/lib/ingestion-implementation.ts :3 import { lstat, readFile, readdir } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/check-cloudflare-artifacts.ts :11 } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/check-cloudflare-topology.ts :1 import { readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/check-ingestion-postgres.ts :3 import { readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/check-synthetic-ingestion.ts :5 import { readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/compile-acquisition-runtime.ts :3 import { mkdir, readFile, readdir, writeFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/compile-ingestion-runtime.ts :2 import { mkdir, readFile, writeFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/compile-mcp-runtime.ts :9 import { mkdir, readFile, writeFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/compile-vertical-runtime.ts :25 import { mkdir, readFile, writeFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/compile-web-runtime.ts :24 import { mkdir, readFile, writeFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/export-supabase-migration-packets.ts :11 import { readFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/generate-json-schemas.ts :12 import { mkdir, readFile, readdir, writeFile } from 'node:fs/promises';
  • fs (weak) athompson83-data-foundry-52a98ac/tooling/scripts/generate-openapi.ts :1 import { mkdir, readFile, readdir, unlink, writeFile } from 'node:fs/promises';

30 more not shown — this panel samples each group; the count above is the real total.

shell / exec 17

  • shell athompson83-data-foundry-52a98ac/packages/canonical-store/src/sql-driver.ts :43 exec(sql: string): Promise<void>;
  • shell athompson83-data-foundry-52a98ac/packages/query-model/src/surface-access.ts :290 async exec() {
  • shell (weak) athompson83-data-foundry-52a98ac/services/ingest-worker/test/pipeline-output-kind.test.ts :1917 async exec(sql) {
  • shell (weak) athompson83-data-foundry-52a98ac/tests/integration/resolution-determinism.test.ts :17 import { execFileSync } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/scripts/check-cloudflare-artifacts.ts :1 import { execFile } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/scripts/export-supabase-migration-packets.ts :10 import { execFile } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/scripts/migrate.ts :22 import { execFile } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/scripts/provision-api-credential.ts :10 import { spawn } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test-support/private-canary.ts :69 async exec(sql) {
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test/cli-entry.test.ts :1 import { execFile } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test/migrations.test.ts :202 async exec(sql: string) {
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test/real-postgres-check-schema.test.ts :16 async exec() {},
show 5 more
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test/repository-policy.test.ts :15 import { execFileSync } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test/source-readiness.test.ts :11 import { execFile } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test/supabase-migration-packets.test.ts :1 import { execFile } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test/typecheck-coverage.test.ts :24 import { execFileSync } from 'node:child_process';
  • shell (weak) athompson83-data-foundry-52a98ac/tooling/test/web-runtime-registry.test.ts :1 import { execFile } from 'node:child_process';

network 23

  • net athompson83-data-foundry-52a98ac/apps/acquisition-worker/src/runner.ts :511 const result = await provider.fetch({
  • net athompson83-data-foundry-52a98ac/apps/api/src/server.ts :11 import { createServer, type IncomingMessage, type Server, type ServerResponse } from 'node:http';
  • net (weak) athompson83-data-foundry-52a98ac/apps/api/test/transport.test.ts :14 import { request as httpRequest } from 'node:http';
  • net athompson83-data-foundry-52a98ac/apps/mcp-worker/src/index.ts :299 const response = await deployment.handler.fetch(request, { parsedBody: guarded.parsedBody });
  • net (weak) athompson83-data-foundry-52a98ac/apps/web/test/request-snapshot.test.ts :139 const response = await fetch(request(), ENV);
  • net (weak) athompson83-data-foundry-52a98ac/examples/hvac-lookup.ts :34 const response = await fetch(new URL(path, base), { headers, redirect: 'manual', signal: AbortSignal.timeout(30_000) });
  • net athompson83-data-foundry-52a98ac/packages/acquisition/src/index.ts :24 * const { artifacts } = await provider.fetch(request);
  • net athompson83-data-foundry-52a98ac/packages/acquisition/src/provider.ts :9 * AcquisitionProvider.fetch(source_request) -> SourceArtifact[]
  • net athompson83-data-foundry-52a98ac/packages/acquisition/src/providers/base.ts :154 async fetch(request: SourceRequest): Promise<AcquisitionResult> {
  • net athompson83-data-foundry-52a98ac/packages/acquisition/src/providers/browser-run.ts :391 const response = await this.#fetch(url, {
  • net athompson83-data-foundry-52a98ac/packages/acquisition/src/providers/crawl4ai.ts :109 const response = await this.#fetch(`${this.#baseUrl}/crawl`, {
  • net athompson83-data-foundry-52a98ac/packages/acquisition/src/providers/http.ts :84 const response = await this.#fetch(request.url, {
show 11 more
  • net athompson83-data-foundry-52a98ac/packages/acquisition/src/types.ts :92 * `artifacts` is the doc 02 contract (`fetch(source_request) -> SourceArtifact[]`).
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/boundary.test.ts :14 * is a NEW file that never uses the base class at all, or a stray `fetch(` in
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/browser-run.test.ts :96 await provider.fetch(makeRequest());
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/conditional.test.ts :90 const result = await provider.fetch(makeRequest());
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/conformance.test.ts :187 const result = await provider.fetch(makeRequest());
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/crawl4ai.test.ts :63 await provider.fetch(makeRequest());
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/fixture-provider.test.ts :38 const result = await provider.fetch(fixtureRequest());
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/http.test.ts :94 await expect(provider.fetch(makeRequest({ maxBytes: Number.NaN }))).rejects.toThrow(
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/policy-snapshot.test.ts :128 const result = await provider.fetch(makeRequest());
  • net (weak) athompson83-data-foundry-52a98ac/packages/acquisition/test/rights-gate.test.ts :134 await expect(provider.fetch(makeRequest())).rejects.toBeInstanceOf(RightsViolationError);
  • net athompson83-data-foundry-52a98ac/services/ingest-worker/src/pipeline-core.ts :719 const fetched = await provider.fetch({

secrets 2

  • secrets (weak) athompson83-data-foundry-52a98ac/examples/hvac-lookup.ts :70 for (const key of [process.env['DATA_FOUNDRY_API_KEY'], process.env['RAPIDAPI_KEY']]) if (key) output = output.replaceAll(key, '[redacted]');
  • secrets (weak) athompson83-data-foundry-52a98ac/tooling/test/provision-api-credential.test.ts :1216 `if (process.env.POSTGRES_URL || process.env.NODE_OPTIONS || process.env.NODE_PATH || process.env.RAPIDAPI_PROXY_SECRET) process.exit(91);

database 2

  • db (weak) athompson83-data-foundry-52a98ac/tooling/scripts/bench-usage-invoicing.ts :28 import pg from 'pg';
  • db (weak) athompson83-data-foundry-52a98ac/tooling/scripts/check-runtime-role-connections-postgres.ts :1 import pg from 'pg';

declared dependencies 19

  • @data-foundry/api-keys@workspace:*
  • @data-foundry/canonical-schema@workspace:*
  • @data-foundry/canonical-store@workspace:*
  • @data-foundry/private-canary@workspace:*
  • @data-foundry/rights-engine@workspace:*
  • @data-foundry/source-registry@workspace:*
  • @electric-sql/pglite@^0.5.5
  • @types/node@^22.20.1
  • @types/pg@^8.15.5
  • esbuild@^0.28.1
  • pdf-lib@^1.17.1
  • pg@^8.23.0
show 7 more
  • smol-toml@1.8.0
  • tsx@^4.23.12
  • typescript@^5.9.3
  • vitest@^3.2.7
  • wrangler@4.127.1
  • yaml@^2.7.0
  • zod@^4.4.3

obfuscation 1

  • dynamic require()/import() athompson83-data-foundry-52a98ac/tooling/test/web-runtime-registry.test.ts :89 const loaded = (await import(`${pathToFileURL(bundled).href}?test=${Date.now()}`)) as {