Integrate crabrl parser into taxonomy hydration

This commit is contained in:
2026-03-16 15:18:01 -04:00
parent cf084793ed
commit a58b07456e
23 changed files with 4696 additions and 2466 deletions

View File

@@ -44,6 +44,20 @@ bun run build
bun run start
```
## Verification
Run the required repo checks before considering work complete:
```bash
bun fmt
bun lint
bun typecheck
cargo test -p fiscal-xbrl-core --manifest-path rust/Cargo.toml
bun run validate:taxonomy-packs
```
Use `bun run test` for Vitest-based tests when needed. Do not use `bun test` directly.
## Browser E2E tests
Install Playwright's Chromium browser once:
@@ -80,6 +94,7 @@ Zhipu always targets the Coding API endpoint (`https://api.z.ai/api/coding/paas/
On container startup, the app applies Drizzle migrations automatically before launching Next.js.
The app stores SQLite data in Docker volume `fiscal_sqlite_data` (mounted to `/app/data`) and workflow world data in Postgres volume `workflow_postgres_data`.
Container startup runs:
1. `workflow-postgres-setup` (idempotent Workflow world bootstrap)
2. Programmatic Drizzle migrations for SQLite app tables
3. Next.js server boot
@@ -142,6 +157,12 @@ AI_TEMPERATURE=0.2
SEC_USER_AGENT=Fiscal Clone <support@fiscal.local>
# Rust XBRL sidecar
FISCAL_XBRL_BIN=rust/target/release/fiscal-xbrl
FISCAL_XBRL_CACHE_DIR=.cache/xbrl
XBRL_ENGINE_TIMEOUT_MS=45000
FISCAL_TAXONOMY_DIR=rust/taxonomy
# local dev default
WORKFLOW_TARGET_WORLD=local
@@ -161,6 +182,8 @@ WORKFLOW_LOCAL_QUEUE_CONCURRENCY=100
`ZHIPU_BASE_URL` is deprecated and ignored; runtime always uses `https://api.z.ai/api/coding/paas/v4`.
`bun run dev` will still normalize Better Auth origin, same-origin API routing, SQLite path, and Workflow runtime for localhost boot if this file contains deployment values.
For the Rust XBRL sidecar, `FISCAL_XBRL_BIN` should point to the built `fiscal-xbrl` executable, `FISCAL_XBRL_CACHE_DIR` controls local filing cache storage, `XBRL_ENGINE_TIMEOUT_MS` bounds sidecar execution time, and `FISCAL_TAXONOMY_DIR` overrides the taxonomy pack directory when needed. Build the sidecar with `bun run build:sidecar` or `cargo build --manifest-path rust/Cargo.toml --release --bin fiscal-xbrl`.
## API surface
All endpoints below are defined in Elysia at `lib/server/api/app.ts` and exposed via `app/api/[[...slugs]]/route.ts`.