clearotron 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +105 -0
- package/CONTRIBUTING.md +3 -3
- package/INSTALL.md +57 -52
- package/README.md +2 -1
- package/bin/brandowner.mjs +1 -1
- package/bin/clearotron.mjs +4 -4
- package/bin/connect.mjs +2 -2
- package/bin/example.mjs +114 -37
- package/bin/grant.mjs +3 -3
- package/bin/key.mjs +1 -1
- package/bin/onboard.mjs +97 -119
- package/bin/start.mjs +29 -25
- package/bin/stop.mjs +65 -3
- package/bin/update.mjs +7 -7
- package/bin/uspto-sync.mjs +1 -1
- package/build-info.json +2 -2
- package/docs/DELIVERY.md +6 -2
- package/docs/RELEASES.md +6 -4
- package/docs/architecture/01-product-overview.md +2 -2
- package/docs/architecture/02-architecture.md +2 -2
- package/docs/architecture/04-configuration-reference.md +7 -4
- package/docs/architecture/05-config-governance.md +38 -5
- package/docs/architecture/06-operations-runbook.md +13 -1
- package/docs/architecture/09-security-and-data.md +1 -1
- package/docs/decisions/0004-documentation-structure.md +1 -1
- package/driver/CHANGELOG.md +95 -1
- package/driver/README.md +2 -2
- package/driver/ask-ledger.mjs +72 -4
- package/driver/authority-trees.mjs +1 -1
- package/driver/call-capture.mjs +1 -1
- package/driver/card-frame.mjs +1 -1
- package/driver/case-law-ledger.mjs +1 -1
- package/driver/claim-liveness.mjs +1 -1
- package/driver/common-law-receipts.mjs +1 -1
- package/driver/commonlaw-carry.mjs +1 -1
- package/driver/config-inventory.mjs +1 -1
- package/driver/connotation-search.mjs +12 -12
- package/driver/contract-audit.mjs +5 -5
- package/driver/contract-dictation-registry.mjs +4 -4
- package/driver/contract-dictation.mjs +2 -2
- package/driver/contract-e3-backlog.mjs +6 -6
- package/driver/contract-vocabulary.mjs +3 -3
- package/driver/corrections-feedforward.mjs +1 -1
- package/driver/coverage-form-io.mjs +2 -2
- package/driver/coverage-form.mjs +4 -4
- package/driver/coverage-ledger.mjs +3 -3
- package/driver/coverage-union.mjs +1 -1
- package/driver/declination-call.mjs +35 -3
- package/driver/declination-duty.mjs +1 -1
- package/driver/deliver-trigger.sh +3 -3
- package/driver/deploy-live-run-guard.mjs +6 -2
- package/driver/dev-portal.mjs +1 -1
- package/driver/disposition-call.mjs +4 -4
- package/driver/disposition-tool.mjs +4 -4
- package/driver/disposition-union.mjs +2 -2
- package/driver/doc-constants.mjs +1 -1
- package/driver/door-gates.mjs +2 -2
- package/driver/doubt-selection.mjs +2 -2
- package/driver/drainer-identity.mjs +1 -1
- package/driver/driver.config.mjs +63 -11
- package/driver/e2e-rounds.mjs +2 -2
- package/driver/effort-model.mjs +2 -2
- package/driver/engine/anthropic-agent.mjs +24 -24
- package/driver/engine/auth.mjs +1 -1
- package/driver/engine/common.mjs +1 -1
- package/driver/engine/deny-authority-write.mjs +1 -1
- package/driver/engine/jx-turn.mjs +1 -1
- package/driver/engine/mcp/clarivate-server.mjs +1 -1
- package/driver/engine/mcp/corsearch-server.mjs +1 -1
- package/driver/engine/mcp/declination-server.mjs +1 -1
- package/driver/engine/mcp/dispositions-server.mjs +1 -1
- package/driver/engine/mcp/euipo-server.mjs +1 -1
- package/driver/engine/mcp/fetch-server.mjs +1 -1
- package/driver/engine/mcp/free-tier-server.mjs +2 -2
- package/driver/engine/mcp/gather-config.mjs +11 -11
- package/driver/engine/mcp/perplexity-server.mjs +1 -1
- package/driver/engine/mcp/recording-server.mjs +8 -4
- package/driver/engine/mcp/signa-server.mjs +1 -1
- package/driver/engine/mcp/uspto-local-server.mjs +1 -1
- package/driver/engine/openai-agent.mjs +2 -2
- package/driver/engine-build.mjs +2 -2
- package/driver/enqueue-schema.mjs +2 -2
- package/driver/enqueue.mjs +1 -1
- package/driver/envelope-settle.mjs +1 -1
- package/driver/evidence-claim-invariant.mjs +2 -2
- package/driver/findings-model.mjs +8 -8
- package/driver/floor-duty.mjs +1 -1
- package/driver/form-neighbourhood.mjs +1 -1
- package/driver/framework.mjs +1 -1
- package/driver/gateway.mjs +28 -23
- package/driver/grounds-grammar.mjs +1 -1
- package/driver/hit-list.mjs +1 -1
- package/driver/jurisdiction-systems.mjs +1 -1
- package/driver/jx-lanes.mjs +1 -1
- package/driver/jx-units.mjs +1 -1
- package/driver/jx.mjs +3 -3
- package/driver/knockout-assess-record.mjs +5 -1
- package/driver/narrative-refutation-record.mjs +3 -3
- package/driver/numeric-setting.mjs +1 -1
- package/driver/owner-use-check.mjs +184 -0
- package/driver/package.json +2 -2
- package/driver/phase0.mjs +1 -1
- package/driver/pipeline-knockout.mjs +52 -4
- package/driver/pipeline.mjs +215 -63
- package/driver/placement-diff.mjs +2 -2
- package/driver/placement-form.mjs +4 -4
- package/driver/placement-union.mjs +1 -1
- package/driver/portal-acks.mjs +1 -1
- package/driver/portal-config-view.mjs +2 -2
- package/driver/portal-local-auth.mjs +1 -1
- package/driver/portal-report.mjs +6 -6
- package/driver/portal-service.mjs +15 -15
- package/driver/predelivery-lint.mjs +29 -11
- package/driver/prelim-variants-record.mjs +2 -2
- package/driver/profile-page.html +1 -1
- package/driver/profile-selection.mjs +1 -1
- package/driver/profile-service.mjs +2 -2
- package/driver/profiles.mjs +1 -1
- package/driver/progress.mjs +6 -6
- package/driver/provider-usage.mjs +1 -1
- package/driver/publish/demo-marking.mjs +1 -1
- package/driver/publish/index.mjs +47 -6
- package/driver/publish/knockout.mjs +36 -14
- package/driver/publish/parse.mjs +4 -4
- package/driver/publish/publish-inputs.mjs +2 -2
- package/driver/publish/register-presence.mjs +1 -1
- package/driver/publish/render-knockout.mjs +198 -31
- package/driver/publish/report-data.mjs +13 -3
- package/driver/publish/seed-pool.mjs +24 -9
- package/driver/queue-watch-probe.mjs +1 -1
- package/driver/queue-watch-verdict.mjs +1 -1
- package/driver/recall-reconciliation.mjs +1 -1
- package/driver/recipe-service.mjs +1 -1
- package/driver/record-carry.mjs +141 -2
- package/driver/recording-agreement.mjs +3 -3
- package/driver/reference-score.mjs +59 -9
- package/driver/reference-strip-signatures.mjs +68 -0
- package/driver/refusal-bound.mjs +3 -3
- package/driver/register-availability.mjs +2 -2
- package/driver/register-count.mjs +1 -1
- package/driver/register-digest-record.mjs +31 -1
- package/driver/register-grant-vocabulary.mjs +2 -2
- package/driver/register-plan.mjs +8 -8
- package/driver/register-records.mjs +2 -2
- package/driver/registry-fidelity.mjs +3 -3
- package/driver/remedy-accounting.mjs +1 -1
- package/driver/repair-composers.mjs +2 -2
- package/driver/repair-digest.mjs +3 -3
- package/driver/repairs.mjs +7 -7
- package/driver/replay-archive.mjs +2 -0
- package/driver/report-card-record.mjs +2 -2
- package/driver/result-noun-fields.mjs +10 -3
- package/driver/run-economics.mjs +2 -2
- package/driver/run-integrity.mjs +1 -1
- package/driver/runner.mjs +22 -22
- package/driver/scope-rules.mjs +1 -1
- package/driver/search-policy.mjs +3 -3
- package/driver/skeptic-search.mjs +1 -1
- package/driver/skills/blind-frame/SKILL.md +1 -1
- package/driver/skills/case-law-citation/SKILL.md +2 -2
- package/driver/skills/knockout-assess/SKILL.md +10 -4
- package/driver/skills/prelim-search/SKILL.md +2 -2
- package/driver/skills/prelim-search/template-formatting.md +1 -1
- package/driver/skills/prelim-search/templates/email/generic.md +1 -1
- package/driver/skills/prelim-search/worked-examples.md +1 -1
- package/driver/skills/prelim-variants/SKILL.md +2 -2
- package/driver/stage-context.mjs +1 -1
- package/driver/stages-knockout.mjs +55 -4
- package/driver/stages.mjs +97 -40
- package/driver/stray-artifacts.mjs +2 -2
- package/driver/suite-census.json +188 -44
- package/driver/synthesis-record.mjs +1 -1
- package/driver/systemd/clearotron-client-mcp.service +1 -1
- package/driver/systemd/clearotron-portal.service +1 -1
- package/driver/systemd/render-units.mjs +1 -1
- package/driver/tokens.mjs +1 -1
- package/driver/tool-calls.mjs +1 -1
- package/driver/turnaround-bands.mjs +1 -1
- package/driver/unit-file-drift.mjs +1 -1
- package/driver/unit-inventory.mjs +121 -61
- package/driver/unit-state-verdict.mjs +20 -12
- package/driver/verify-knockout.mjs +10 -2
- package/driver/verify.mjs +14 -14
- package/driver/whatif-memo-run.mjs +46 -5
- package/driver/whatif-queue.mjs +1 -1
- package/driver/whatif-worker.mjs +1 -1
- package/mcp-server/CHANGELOG.md +12 -0
- package/mcp-server/README.md +3 -3
- package/mcp-server/http-server.mjs +44 -1
- package/mcp-server/key-socket.mjs +184 -0
- package/mcp-server/lib/audit-view.mjs +69 -2
- package/mcp-server/lib/brief.mjs +15 -0
- package/mcp-server/lib/driver.mjs +7 -1
- package/mcp-server/lib/events.mjs +1 -1
- package/mcp-server/lib/http-handler.mjs +1 -1
- package/mcp-server/lib/knockout.mjs +435 -0
- package/mcp-server/lib/ops.mjs +4 -4
- package/mcp-server/lib/options.mjs +1 -1
- package/mcp-server/lib/plan.mjs +1 -1
- package/mcp-server/lib/runs.mjs +1 -1
- package/mcp-server/lib/scrub.mjs +1 -1
- package/mcp-server/lib/whatif.mjs +12 -3
- package/mcp-server/mint-token.mjs +1 -1
- package/mcp-server/package.json +2 -2
- package/mcp-server/server.mjs +76 -11
- package/package.json +3 -3
- package/portal-ui/package.json +1 -1
- package/providers/_shared/enumerate.mjs +1 -1
- package/providers/_shared/ledger-path.mjs +3 -3
- package/providers/_shared/ledger.mjs +1 -1
- package/providers/_shared/result-shape.mjs +3 -3
- package/providers/_shared/term-shape.mjs +1 -1
- package/providers/corsearch/src/core.js +1 -1
- package/providers/jx-subclass/BUILDING.md +1 -1
- package/providers/oauth-mcp-bridge/CHANGELOG.md +12 -0
- package/providers/oauth-mcp-bridge/package.json +1 -1
- package/providers/oauth-mcp-bridge/stdin-guard.mjs +2 -2
- package/scripts/README.md +1 -1
- package/scripts/added-reference-check.mjs +29 -1
- package/scripts/ai-page-render-check.mjs +2 -1
- package/scripts/authority-boundary-probe.mjs +1 -1
- package/scripts/backfill-started-at.mjs +1 -1
- package/scripts/citation-line-check.mjs +3 -3
- package/scripts/clearances-render-check.mjs +4 -3
- package/scripts/compare.mjs +2 -2
- package/scripts/composer-render-check.mjs +6 -6
- package/scripts/contract-dictation-scan.mjs +2 -2
- package/scripts/dead-names.mjs +1 -1
- package/scripts/drain-preflight.mjs +5 -5
- package/scripts/e2e-unread-terminals.mjs +1 -1
- package/scripts/e2e.mjs +8 -8
- package/scripts/env-audit.mjs +27 -7
- package/scripts/env-classify.mjs +139 -15
- package/scripts/freeze-example-run.mjs +3 -3
- package/scripts/head-arrived-gated.mjs +1 -1
- package/scripts/headless-page.mjs +274 -0
- package/scripts/home-render-check.mjs +3 -2
- package/scripts/live-surface-check.mjs +92 -19
- package/scripts/main-health.mjs +1 -1
- package/scripts/merge-presence-check.mjs +3 -3
- package/scripts/mint-reference-strip-backlog.mjs +41 -0
- package/scripts/mint-suite-census.mjs +6 -6
- package/scripts/nightly-notice.mjs +1 -1
- package/scripts/portal-lifecycle-check.mjs +3 -3
- package/scripts/reconcile-runs.mjs +1 -1
- package/scripts/release-await-cut.mjs +101 -11
- package/scripts/release-version-pr-checks.mjs +26 -2
- package/scripts/release-version.mjs +2 -2
- package/scripts/render-check.mjs +66 -7
- package/scripts/report-frame-check.mjs +12 -0
- package/scripts/report-screenshot.mjs +62 -2
- package/scripts/revisit-render-check.mjs +3 -2
- package/scripts/score.mjs +18 -4
- package/scripts/strip-tracker-citations.mjs +116 -0
- package/scripts/test-run.mjs +3 -3
- package/scripts/third-party-notices.mjs +3 -3
- package/scripts/travelling-predicates.mjs +3 -3
- package/scripts/unexecuted-asserts.mjs +2 -2
- package/scripts/verify-publishable.mjs +2 -2
- package/scripts/write-up-form-census.mjs +1 -1
- package/shared/access-audience.mjs +215 -0
- package/shared/brand.mjs +13 -13
- package/shared/citation-scan.mjs +1 -1
- package/shared/client-door.mjs +7 -7
- package/shared/driver-dir.mjs +1 -1
- package/shared/env-aliases.mjs +0 -48
- package/shared/env-local.mjs +1 -1
- package/shared/identifier-scan.mjs +3 -3
- package/shared/invocation.mjs +1 -1
- package/shared/names-in-force.mjs +2 -0
- package/shared/product-owned-names.mjs +1 -1
- package/shared/register-selection.mjs +1 -1
- package/shared/scope.mjs +5 -5
- package/shared/server-units.mjs +4 -4
- package/shared/store-in-repo.mjs +2 -2
- package/shared/suite-census.mjs +4 -4
- package/shared/tracked-files.mjs +31 -0
- package/shared/tty-style.mjs +1 -1
- package/shared/uspto-index-size.mjs +1 -1
- package/shared/vacuous-pass.mjs +1 -1
- package/skills/clearotron-account/SKILL.md +42 -13
- package/driver/systemd/prelim-driver.path +0 -69
- package/driver/systemd/prelim-driver.service +0 -86
- package/driver/systemd/prelim-driver.timer +0 -14
- package/driver/systemd/prelim-outbox.path +0 -27
- package/driver/systemd/prelim-outbox.service +0 -37
- package/driver/systemd/prelim-outbox.timer +0 -21
- package/node_modules/exceljs/README_zh.md +0 -2878
- package/node_modules/exceljs/dist/LICENSE +0 -22
- package/node_modules/exceljs/dist/es5/csv/csv.js +0 -182
- package/node_modules/exceljs/dist/es5/csv/csv.js.map +0 -1
- package/node_modules/exceljs/dist/es5/csv/line-buffer.js +0 -68
- package/node_modules/exceljs/dist/es5/csv/line-buffer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/csv/stream-converter.js +0 -110
- package/node_modules/exceljs/dist/es5/csv/stream-converter.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/anchor.js +0 -73
- package/node_modules/exceljs/dist/es5/doc/anchor.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/cell.js +0 -961
- package/node_modules/exceljs/dist/es5/doc/cell.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/column.js +0 -274
- package/node_modules/exceljs/dist/es5/doc/column.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/data-validations.js +0 -18
- package/node_modules/exceljs/dist/es5/doc/data-validations.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/defined-names.js +0 -173
- package/node_modules/exceljs/dist/es5/doc/defined-names.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/enums.js +0 -49
- package/node_modules/exceljs/dist/es5/doc/enums.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/image.js +0 -69
- package/node_modules/exceljs/dist/es5/doc/image.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/modelcontainer.js +0 -16
- package/node_modules/exceljs/dist/es5/doc/modelcontainer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/note.js +0 -64
- package/node_modules/exceljs/dist/es5/doc/note.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/range.js +0 -229
- package/node_modules/exceljs/dist/es5/doc/range.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/row.js +0 -382
- package/node_modules/exceljs/dist/es5/doc/row.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/table.js +0 -443
- package/node_modules/exceljs/dist/es5/doc/table.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/workbook.js +0 -202
- package/node_modules/exceljs/dist/es5/doc/workbook.js.map +0 -1
- package/node_modules/exceljs/dist/es5/doc/worksheet.js +0 -900
- package/node_modules/exceljs/dist/es5/doc/worksheet.js.map +0 -1
- package/node_modules/exceljs/dist/es5/exceljs.bare.js +0 -14
- package/node_modules/exceljs/dist/es5/exceljs.bare.js.map +0 -1
- package/node_modules/exceljs/dist/es5/exceljs.browser.js +0 -36
- package/node_modules/exceljs/dist/es5/exceljs.browser.js.map +0 -1
- package/node_modules/exceljs/dist/es5/exceljs.nodejs.js +0 -15
- package/node_modules/exceljs/dist/es5/exceljs.nodejs.js.map +0 -1
- package/node_modules/exceljs/dist/es5/index.js +0 -15
- package/node_modules/exceljs/dist/es5/stream/xlsx/hyperlink-reader.js +0 -90
- package/node_modules/exceljs/dist/es5/stream/xlsx/hyperlink-reader.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-comments-writer.js +0 -94
- package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-comments-writer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-rels-writer.js +0 -94
- package/node_modules/exceljs/dist/es5/stream/xlsx/sheet-rels-writer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-reader.js +0 -362
- package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-reader.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-writer.js +0 -347
- package/node_modules/exceljs/dist/es5/stream/xlsx/workbook-writer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-reader.js +0 -392
- package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-reader.js.map +0 -1
- package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-writer.js +0 -652
- package/node_modules/exceljs/dist/es5/stream/xlsx/worksheet-writer.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/auto-drain.js +0 -18
- package/node_modules/exceljs/dist/es5/utils/auto-drain.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/browser-buffer-decode.js +0 -15
- package/node_modules/exceljs/dist/es5/utils/browser-buffer-decode.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/browser-buffer-encode.js +0 -18
- package/node_modules/exceljs/dist/es5/utils/browser-buffer-encode.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/cell-matrix.js +0 -149
- package/node_modules/exceljs/dist/es5/utils/cell-matrix.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/col-cache.js +0 -258
- package/node_modules/exceljs/dist/es5/utils/col-cache.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/copy-style.js +0 -43
- package/node_modules/exceljs/dist/es5/utils/copy-style.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/encryptor.js +0 -58
- package/node_modules/exceljs/dist/es5/utils/encryptor.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/iterate-stream.js +0 -46
- package/node_modules/exceljs/dist/es5/utils/iterate-stream.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/parse-sax.js +0 -47
- package/node_modules/exceljs/dist/es5/utils/parse-sax.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/shared-formula.js +0 -42
- package/node_modules/exceljs/dist/es5/utils/shared-formula.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/shared-strings.js +0 -32
- package/node_modules/exceljs/dist/es5/utils/shared-strings.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/stream-base64.js +0 -66
- package/node_modules/exceljs/dist/es5/utils/stream-base64.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/stream-buf.js +0 -343
- package/node_modules/exceljs/dist/es5/utils/stream-buf.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/string-buf.js +0 -73
- package/node_modules/exceljs/dist/es5/utils/string-buf.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/string-builder.js +0 -32
- package/node_modules/exceljs/dist/es5/utils/string-builder.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/stuttered-pipe.js +0 -61
- package/node_modules/exceljs/dist/es5/utils/stuttered-pipe.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/typed-stack.js +0 -23
- package/node_modules/exceljs/dist/es5/utils/typed-stack.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/under-dash.js +0 -168
- package/node_modules/exceljs/dist/es5/utils/under-dash.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/utils.js +0 -171
- package/node_modules/exceljs/dist/es5/utils/utils.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/xml-stream.js +0 -151
- package/node_modules/exceljs/dist/es5/utils/xml-stream.js.map +0 -1
- package/node_modules/exceljs/dist/es5/utils/zip-stream.js +0 -79
- package/node_modules/exceljs/dist/es5/utils/zip-stream.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/defaultnumformats.js +0 -230
- package/node_modules/exceljs/dist/es5/xlsx/defaultnumformats.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/rel-type.js +0 -18
- package/node_modules/exceljs/dist/es5/xlsx/rel-type.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/base-xform.js +0 -139
- package/node_modules/exceljs/dist/es5/xlsx/xform/base-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/defined-name-xform.js +0 -85
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/defined-name-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/sheet-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/sheet-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js +0 -24
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-properties-xform.js +0 -27
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-view-xform.js +0 -51
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-view-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-xform.js +0 -234
- package/node_modules/exceljs/dist/es5/xlsx/xform/book/workbook-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comment-xform.js +0 -103
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comment-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comments-xform.js +0 -76
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/comments-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-position-xform.js +0 -35
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-position-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-anchor-xform.js +0 -53
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-anchor-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-client-data-xform.js +0 -97
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-client-data-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-notes-xform.js +0 -107
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-notes-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-shape-xform.js +0 -92
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-shape-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-textbox-xform.js +0 -61
- package/node_modules/exceljs/dist/es5/xlsx/xform/comment/vml-textbox-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/composite-xform.js +0 -51
- package/node_modules/exceljs/dist/es5/xlsx/xform/composite-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js +0 -30
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js +0 -27
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-xform.js +0 -93
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/app-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/content-types-xform.js +0 -112
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/content-types-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/core-xform.js +0 -158
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/core-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationship-xform.js +0 -23
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationship-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationships-xform.js +0 -65
- package/node_modules/exceljs/dist/es5/xlsx/xform/core/relationships-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js +0 -47
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-fill-xform.js +0 -61
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-fill-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-xform.js +0 -40
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/blip-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js +0 -35
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js +0 -62
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/cell-position-xform.js +0 -82
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/cell-position-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/drawing-xform.js +0 -98
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/drawing-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-lst-xform.js +0 -40
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-lst-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-xform.js +0 -38
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/hlink-click-xform.js +0 -38
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/hlink-click-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js +0 -59
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js +0 -63
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/pic-xform.js +0 -67
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/pic-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/sp-pr.js +0 -30
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/sp-pr.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js +0 -62
- package/node_modules/exceljs/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/list-xform.js +0 -91
- package/node_modules/exceljs/dist/es5/xlsx/xform/list-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/auto-filter-xform.js +0 -40
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/auto-filter-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cell-xform.js +0 -451
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cell-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js +0 -275
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js +0 -25
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js +0 -38
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js +0 -45
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js +0 -77
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/databar-xform.js +0 -42
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/databar-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +0 -71
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/formula-xform.js +0 -22
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/formula-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js +0 -43
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +0 -28
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +0 -88
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +0 -38
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +0 -52
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +0 -43
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +0 -75
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js +0 -22
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +0 -66
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +0 -22
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/col-xform.js +0 -78
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/col-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/data-validations-xform.js +0 -247
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/data-validations-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/dimension-xform.js +0 -28
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/dimension-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/drawing-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/drawing-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/ext-lst-xform.js +0 -69
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/ext-lst-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/header-footer-xform.js +0 -126
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/header-footer-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/hyperlink-xform.js +0 -50
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/hyperlink-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merge-cell-xform.js +0 -26
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merge-cell-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merges.js +0 -52
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/merges.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/outline-properties-xform.js +0 -35
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/outline-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-breaks-xform.js +0 -24
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-breaks-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-margins-xform.js +0 -46
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-margins-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-xform.js +0 -99
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/page-setup-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/picture-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/picture-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/print-options-xform.js +0 -45
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/print-options-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-breaks-xform.js +0 -37
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-breaks-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-xform.js +0 -128
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/row-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js +0 -51
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js +0 -83
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js +0 -84
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-view-xform.js +0 -190
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/sheet-view-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/table-part-xform.js +0 -32
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/table-part-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/worksheet-xform.js +0 -513
- package/node_modules/exceljs/dist/es5/xlsx/xform/sheet/worksheet-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/boolean-xform.js +0 -27
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/boolean-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/date-xform.js +0 -58
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/date-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/float-xform.js +0 -47
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/float-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/integer-xform.js +0 -53
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/integer-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/string-xform.js +0 -47
- package/node_modules/exceljs/dist/es5/xlsx/xform/simple/string-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/static-xform.js +0 -61
- package/node_modules/exceljs/dist/es5/xlsx/xform/static-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/phonetic-text-xform.js +0 -98
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/phonetic-text-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/rich-text-xform.js +0 -92
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/rich-text-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-string-xform.js +0 -99
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-string-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-strings-xform.js +0 -114
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/shared-strings-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/text-xform.js +0 -39
- package/node_modules/exceljs/dist/es5/xlsx/xform/strings/text-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/alignment-xform.js +0 -139
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/alignment-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/border-xform.js +0 -185
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/border-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/color-xform.js +0 -66
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/color-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/dxf-xform.js +0 -106
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/dxf-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/fill-xform.js +0 -308
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/fill-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/font-xform.js +0 -175
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/font-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/numfmt-xform.js +0 -59
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/numfmt-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/protection-xform.js +0 -53
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/protection-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/style-xform.js +0 -118
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/style-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/styles-xform.js +0 -612
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/styles-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/underline-xform.js +0 -46
- package/node_modules/exceljs/dist/es5/xlsx/xform/style/underline-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/auto-filter-xform.js +0 -75
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/auto-filter-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/custom-filter-xform.js +0 -30
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/custom-filter-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-column-xform.js +0 -89
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-column-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-xform.js +0 -28
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/filter-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-column-xform.js +0 -42
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-column-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-style-info-xform.js +0 -40
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-style-info-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-xform.js +0 -123
- package/node_modules/exceljs/dist/es5/xlsx/xform/table/table-xform.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xlsx.js +0 -697
- package/node_modules/exceljs/dist/es5/xlsx/xlsx.js.map +0 -1
- package/node_modules/exceljs/dist/es5/xlsx/xml/theme1.js +0 -5
- package/node_modules/exceljs/dist/es5/xlsx/xml/theme1.js.map +0 -1
- package/node_modules/exceljs/dist/exceljs.bare.js +0 -55253
- package/node_modules/exceljs/dist/exceljs.bare.js.map +0 -761
- package/node_modules/exceljs/dist/exceljs.bare.min.js +0 -45
- package/node_modules/exceljs/dist/exceljs.bare.min.js.map +0 -1
- package/node_modules/exceljs/dist/exceljs.js +0 -59900
- package/node_modules/exceljs/dist/exceljs.js.map +0 -1083
- package/node_modules/exceljs/dist/exceljs.min.js +0 -45
- package/node_modules/exceljs/dist/exceljs.min.js.map +0 -1
- package/scripts/deploy-test.sh +0 -309
|
@@ -90,7 +90,7 @@ export function knownToolNames() {
|
|
|
90
90
|
* The intersection is fail-closed on the PROVIDER axis — signa exposes two register tools where
|
|
91
91
|
* corsearch exposes eight — and it duly produced 19 hits saying the register doctrine orders
|
|
92
92
|
* `register_enumerate`, which signa does not carry. Every one of those is true and none of them is
|
|
93
|
-
*: they are findings about a vendor's capability envelope, which
|
|
93
|
+
*: they are findings about a vendor's capability envelope, which the deferral contract already
|
|
94
94
|
* owns and states on the coverage form. Folding them in here would bury the grant/doctrine mismatch
|
|
95
95
|
* this contract exists for under a vendor-capability report nobody asked E12 for.
|
|
96
96
|
*/
|
|
@@ -101,9 +101,9 @@ export function grantedToolsFor(stage) {
|
|
|
101
101
|
return out;
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
-
// ──
|
|
104
|
+
// ── the members: two were known, TEN are real ────────────────────────────────────────────────────
|
|
105
105
|
//
|
|
106
|
-
// E3's precedent, and
|
|
106
|
+
// E3's precedent, and the rule under it: "a lint that greenlights every existing hole certifies the
|
|
107
107
|
// problem" — so the lint holds the line and the BACKLOG names what is already there, each entry saying
|
|
108
108
|
// which move removes it. rejects "a whitelist of the two known members as the route to green", and
|
|
109
109
|
// this is not that: it is the measured population, which is FIVE TIMES the two members was filed
|
|
@@ -209,7 +209,7 @@ export function contracts() {
|
|
|
209
209
|
//
|
|
210
210
|
// SCOPED TO THE BACKTICKED FIELD NAME, and the loose form was measured before choosing: `/\banchor\b/`
|
|
211
211
|
// fires 52 times across the served corpus against 10 for this pattern, because `anchor` is also a link
|
|
212
|
-
// anchor (
|
|
212
|
+
// anchor (the subject) and a variant anchor. A pattern whose extra 42 hits would have to be
|
|
213
213
|
// excused is a pattern kept green by exemptions rather than by fixes — the whitelist route
|
|
214
214
|
// forbids, arriving as a regex instead of a path filter. `anchor-owed` is in because the corrective
|
|
215
215
|
// ladder ORDERS it in exactly that spelling.
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
// and computes. Nothing here runs on a clearance. The impure edge — building the corpus out of the
|
|
7
7
|
// tracked tree — is scripts/contract-dictation-scan.mjs, and the split is not tidiness:
|
|
8
8
|
//
|
|
9
|
-
//
|
|
9
|
+
// That hardest acceptance is "plant a divergence in a NEW authoring layer — the check must find it
|
|
10
10
|
// STRUCTURALLY, not because the layer was enumerated". A checker that reads the tree itself can only
|
|
11
11
|
// be tested by writing a file into the working tree, which is dirty, fights the repo-hygiene guards,
|
|
12
12
|
// and — because `git ls-files` is the corpus — may not even be visible to the check being tested.
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
//
|
|
53
53
|
// Whether `/` opens a regex or divides is decided by the previous significant character, which is the
|
|
54
54
|
// standard heuristic and is exact for everything in this tree (a `/` after a value divides; after
|
|
55
|
-
// `(
|
|
55
|
+
// `(= : [ ! & | ? { } ; return` it opens a pattern).
|
|
56
56
|
const REGEX_PRECEDERS = new Set(["(", ",", "=", ":", "[", "!", "&", "|", "?", "{", "}", ";", "\n", "+", "-", "*", "%", "<", ">", "~", "^"]);
|
|
57
57
|
|
|
58
58
|
/**
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
// E3 is "structure is returned, never emitted as text": CI fails a stage message containing a literal
|
|
6
6
|
// JSON skeleton, an "EXACTLY these keys" clause, or a dictated line shape a parser re-parses. 74 such
|
|
7
7
|
// sites exist today across the 19 stages and the skill files they read, so E3 cannot simply go red —
|
|
8
|
-
// and it must not simply go green either.
|
|
8
|
+
// and it must not simply go green either. That judging note applies verbatim:
|
|
9
9
|
//
|
|
10
10
|
// "a lint that greenlights every existing hole certifies the problem."
|
|
11
11
|
//
|
|
@@ -390,7 +390,7 @@ export const E3_BACKLOG = [
|
|
|
390
390
|
kind: "dictated-line-shape",
|
|
391
391
|
// ── (a) THE ORIGINAL SUBJECT WAS DELETED BY DESIGN — DISCHARGED, NOT FAILED. This row quoted
|
|
392
392
|
// "ARM 2 — a run with NO coverage form … Write one row per coverage unit | Coverage unit | Status |
|
|
393
|
-
// Reason |". M6 (
|
|
393
|
+
// Reason |". M6 (2026-08-14) deleted the code arm and (cdf38676) deleted this
|
|
394
394
|
// skill-file half two days later — exactly the both-sites deletion this row's removedByMove
|
|
395
395
|
// demanded. `git grep "ARM 2"` on the skill file returns nothing. Its evidence sat in
|
|
396
396
|
// E3_EVIDENCE_UNRESOLVED from the day the checker landed; per the ruling the row is
|
|
@@ -435,7 +435,7 @@ export const E3_BACKLOG = [
|
|
|
435
435
|
reparsedBy: "driver/verify.mjs validators.frameDiff + driver/pipeline.mjs runSupplementalSweeps (the parser REFUSES a firing variant directive that dictates nothing dispatchable)",
|
|
436
436
|
removedByMove: "NOTHING ON THE #850 PLAN REMOVES THIS",
|
|
437
437
|
},
|
|
438
|
-
// DISCHARGED by
|
|
438
|
+
// DISCHARGED by the third conversion. The row described SKILL.md's "Then ALSO save the STRUCTURED
|
|
439
439
|
// diff … a JSON OBJECT with EXACTLY these keys" skeleton, and that order is gone: the seat calls
|
|
440
440
|
// `record_frame_diff` and the driver serializes the object. What replaced it in the doc is a field list
|
|
441
441
|
// for a typed call, which is not a dictated skeleton — the schema owns those names, and a seat cannot
|
|
@@ -791,7 +791,7 @@ export const E3_BACKLOG = [
|
|
|
791
791
|
// The third is the one worth pausing on: its `removedByMove` said "M2 — the quote half only; the closed
|
|
792
792
|
// three-file enum survives". The enum did not survive the transport, because the transport removed the
|
|
793
793
|
// FIELD it lived in rather than validating it — a schema that cannot express a bad value beats a
|
|
794
|
-
// validator that rejects one, which is
|
|
794
|
+
// validator that rejects one, which is the ruling applied one lane over.
|
|
795
795
|
];
|
|
796
796
|
|
|
797
797
|
/** Entries with no move on the plan that removes them. */
|
|
@@ -804,7 +804,7 @@ export const E3_UNPLANNED = E3_BACKLOG.filter((e) => e.removedByMove === "NOTHIN
|
|
|
804
804
|
* The registry's failure mode was that a MOVE could delete a dictation and leave the row: the count
|
|
805
805
|
* then overstates the work, and the next agent spends a conversion slot on a hole already filled. Two
|
|
806
806
|
* instances existed when this was written — M6's register-digest arm (deleted 2026-08-14, row survived)
|
|
807
|
-
* and synthesis's disposition list (
|
|
807
|
+
* and synthesis's disposition list (deleted the same morning by the agent adding this check).
|
|
808
808
|
* Both are gone; this list is what remains.
|
|
809
809
|
*
|
|
810
810
|
* A BLANKET ASSERTION WAS THE OBVIOUS BUILD AND IT WOULD HAVE BEEN NOISE. Measured before choosing:
|
|
@@ -865,7 +865,7 @@ export const E3_EVIDENCE_UNRESOLVED = [
|
|
|
865
865
|
/**
|
|
866
866
|
* THE PER-SURFACE CENSUS, PINNED EXACTLY IN BOTH DIRECTIONS.
|
|
867
867
|
*
|
|
868
|
-
*
|
|
868
|
+
* That urgency claim is that `tool-response` GROWS — one surface at a time, each move taking a row out
|
|
869
869
|
* of sight while the count stays plausible. A ceiling on that number would fail upward exactly as the E3
|
|
870
870
|
* ceiling did: a surface that shrank would pass silently and leave room for a move nobody
|
|
871
871
|
* recorded. So this is exact. A migration that moves a row from `stage-message` to `tool-response` turns
|
|
@@ -155,7 +155,7 @@ export const VOCABULARY = [
|
|
|
155
155
|
// red on any that no row covers. That is the census working the way the previous conversion's gap
|
|
156
156
|
// taught it to — skeptic's nine tokens were raised for two conversions before anything could see them.
|
|
157
157
|
{ token: "reportoverview_", stages: ["report-overview"], site: "driver/report-overview-record.mjs acceptReportOverview", family: "driver/report-overview-record.mjs", dynamic: "D3" },
|
|
158
|
-
// Conversion 5's transport family. Declared in the SAME commit as the module —
|
|
158
|
+
// Conversion 5's transport family. Declared in the SAME commit as the module — the extractor reads
|
|
159
159
|
// the acceptance boundary, so `report-card-record.mjs` is read for the `reason:` shape and the E2
|
|
160
160
|
// soundness tripwire sees every `reportcard_*` token the moment it exists.
|
|
161
161
|
{ token: "reportcard_", stages: ["report-card"], site: "driver/report-card-record.mjs acceptReportCard", family: "driver/report-card-record.mjs", dynamic: "D3" },
|
|
@@ -396,7 +396,7 @@ export const TRIPWIRE_OUT_OF_SCOPE = [
|
|
|
396
396
|
* nothing.
|
|
397
397
|
*
|
|
398
398
|
* WHY NOT A VOCABULARY ROW. A row asserts "this stage emits this token", and for all nineteen of these
|
|
399
|
-
* that assertion is false.
|
|
399
|
+
* that assertion is false. its own judging condition forbids writing it: *no row claims a stage emits
|
|
400
400
|
* a token that stage cannot emit*.
|
|
401
401
|
*
|
|
402
402
|
* WHY NOT A BARE EXEMPTION. An out-of-scope rule excuses a token and asserts nothing, so it cannot fail.
|
|
@@ -541,7 +541,7 @@ export const COVERED_SOURCES = [
|
|
|
541
541
|
*/
|
|
542
542
|
|
|
543
543
|
/**
|
|
544
|
-
* The tables whose rows carry a citation — the population
|
|
544
|
+
* The tables whose rows carry a citation — the population the symbol arms walk.
|
|
545
545
|
*
|
|
546
546
|
* Named once, here, rather than retyped in the test: a fifth table added later and missed by a hand-typed
|
|
547
547
|
* list would be unchecked while every arm stayed green. The test asserts this map's own membership too,
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// corrections-feedforward.mjs — the reviewer's flags reach the corrective pass as DATA, and the recheck
|
|
4
4
|
// is handed what the driver OBSERVED rather than being asked to re-read two documents.
|
|
5
5
|
//
|
|
6
|
-
//
|
|
6
|
+
// That first acceptance criterion is that a BLOCKING-verdict full re-run becomes structurally
|
|
7
7
|
// impossible. `docs/design/clearance-critical-path.md` §4 bounds how that can be built: refutation cannot
|
|
8
8
|
// run before synthesis (`stageInputs["narrative-refutation"]` includes the narrative, and dependencyOrder
|
|
9
9
|
// derives the edge mechanically), so the lever available is the CHANNEL the reviewer already writes into
|
|
@@ -14,10 +14,10 @@
|
|
|
14
14
|
// written by runDigest on every pass that will actually run, is already the arming key for the off-enum
|
|
15
15
|
// gate, and is already declared in stage-context.VALIDATOR_SIDECARS. adds `form_required: true` and
|
|
16
16
|
// `form_path` to it rather than minting a second stamp, so there is one answer to "was a form required
|
|
17
|
-
// on this run" and archived runs — which carry either no sentinel at all or a pre- one with no
|
|
17
|
+
// on this run" and archived runs — which carry either no sentinel at all or a pre-change one with no
|
|
18
18
|
// `form_required` — leave the whole coverage-form arm OFF and never flip a replay verdict.
|
|
19
19
|
//
|
|
20
|
-
// THE WRITE ORDER IS LOAD-BEARING AND IT IS STAMP FIRST.
|
|
20
|
+
// THE WRITE ORDER IS LOAD-BEARING AND IT IS STAMP FIRST. That form write is best-effort and only
|
|
21
21
|
// note()s on failure, and its own comment names the outcome it fears: "an absence reading as a pass,
|
|
22
22
|
// which is the one outcome this file exists to refuse". It is reachable — a full disk fails as "artifact
|
|
23
23
|
// absent", not as a disk error. Writing the FORM first and the stamp second reproduces that hole: a
|
package/driver/coverage-form.mjs
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
// PURE — no node imports, so it tests offline, exactly like coverage-ledger.mjs and connotation-search.mjs
|
|
23
23
|
// (whose headers state the same rule for the same reason). `shortId` is IMPORTED from connotation-search
|
|
24
24
|
// rather than re-implemented: it is a generic fnv1a64 id stamp, and a second copy of an id function is
|
|
25
|
-
// two calculations kept in step, which is
|
|
25
|
+
// two calculations kept in step, which is the defect.
|
|
26
26
|
//
|
|
27
27
|
// ONE CALCULATION, NOT TWO. `openBlocksByAxis` (register-plan.mjs) computes the open crowd blocks — the
|
|
28
28
|
// same C2..C7 conditions the deleted gate computed, unchanged — and it is called EXACTLY ONCE per pass,
|
|
@@ -108,7 +108,7 @@ export const SEAT_ROW_FIELDS = Object.freeze(["kind", "axis", "unit", "status",
|
|
|
108
108
|
/**
|
|
109
109
|
* WHAT A SEAT ROW OWES, written INTO the accumulator (and told to the seat in the dispatch brief and
|
|
110
110
|
* the tool's own refusals — the seat no longer opens this file). The allowed axis set is not prose
|
|
111
|
-
* about the file, it is a field OF the file:
|
|
111
|
+
* about the file, it is a field OF the file: the finding was "a fact obeyed as a failure and
|
|
112
112
|
* ignored as an input", and a closed vocabulary the seat must hit and is never shown is exactly that.
|
|
113
113
|
* PURE data.
|
|
114
114
|
*
|
|
@@ -474,7 +474,7 @@ export function coverageFormRows({ skeleton = [], activeAxes = null, plan = null
|
|
|
474
474
|
// the receipt should be able to tell which of the two a run carried.
|
|
475
475
|
deferred_offices: (Array.isArray(plan?.deferred_coverage) ? plan.deferred_coverage : []).length,
|
|
476
476
|
// AN ABSENCE IS A FINDING, RECORDED IN THE ARTIFACT. An axis whose band would not parse
|
|
477
|
-
// contributes NO open-block rows, exactly as the pre- gate's per-axis catch did — a band
|
|
477
|
+
// contributes NO open-block rows, exactly as the pre-change gate's per-axis catch did — a band
|
|
478
478
|
// parse defect is refused one stage earlier by validators.registerUnit. Naming the axes here
|
|
479
479
|
// means the gap is visible on the form a reader opens instead of being a silent zero.
|
|
480
480
|
bands_unreadable: [...(bandsUnreadable ?? [])],
|
|
@@ -568,7 +568,7 @@ export function coverageAbsenceGaps(parsed) {
|
|
|
568
568
|
}
|
|
569
569
|
|
|
570
570
|
/**
|
|
571
|
-
* The sentence a lawyer reads where the ledger would be. NEVER an empty section:
|
|
571
|
+
* The sentence a lawyer reads where the ledger would be. NEVER an empty section: the lesson one lane
|
|
572
572
|
* over — a heading with nothing under it asserts an absence it cannot explain, and a reader cannot tell
|
|
573
573
|
* it from a run that swept nothing. This says which material was missing and, therefore, exactly what
|
|
574
574
|
* the rest of the report does and does not rest on.
|
|
@@ -108,7 +108,7 @@ export const CROWD_RULING_UNIT_GRAMMAR = `<axis> / ${CROWD_RULING_TOKEN} (<N> me
|
|
|
108
108
|
// was accepted, carried through the union, passed the coverage gate, and blocked the run three gates
|
|
109
109
|
// later over a ruling the seat had made. Both readers now call this, so call time and delivery time
|
|
110
110
|
// cannot disagree about what a count is. That is the point of the function, not a tidiness: two copies
|
|
111
|
-
// of this regex would let the refusal and the block drift apart, which is
|
|
111
|
+
// of this regex would let the refusal and the block drift apart, which is the defect.
|
|
112
112
|
//
|
|
113
113
|
// THREE ANSWERS, and the middle one is the whole reason the return is not a boolean:
|
|
114
114
|
// null — the cell rules no crowd. Every other coverage row, and the overwhelming majority.
|
|
@@ -500,11 +500,11 @@ export function parseCoverageLedgerJson(raw, { allowedAxes = REGISTER_AXES, acti
|
|
|
500
500
|
return rows;
|
|
501
501
|
}
|
|
502
502
|
|
|
503
|
-
// ──
|
|
503
|
+
// ── `renderCoverageLedgerJson` IS DELETED, AND THE DIRECTION WITH IT ─────────────────────────
|
|
504
504
|
//
|
|
505
505
|
// Map #3 code-derived this JSON FROM the model's `## Coverage ledger` prose, which was an improvement
|
|
506
506
|
// (the model stopped authoring the JSON) that left the real source of truth where it was: a markdown
|
|
507
|
-
// table the model wrote.
|
|
507
|
+
// table the model wrote. The DRIVER-WRITTEN coverage form is the source and both the table
|
|
508
508
|
// and this JSON are renders of it — coverage-form.renderCoverageLedgerJsonFromForm. There is no
|
|
509
509
|
// prose→JSON direction left to keep, and keeping one would be the legacy path this build has none of.
|
|
510
510
|
//
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
// is. This file mints no row, no id, no unit label and no definition of "settled": `coverageFormRows`
|
|
22
22
|
// and `rowIsSettled` both come from coverage-form.mjs — the same code the GATE judges with. A union that
|
|
23
23
|
// preserved a status the gate would refuse, or dropped one it would accept, would make the outstanding
|
|
24
|
-
// count mean two different things in two places, which is
|
|
24
|
+
// count mean two different things in two places, which is the defect exactly.
|
|
25
25
|
|
|
26
26
|
import { coverageFormRows, rowIsSettled, seatFields, formRowKey, seatRows, SEAT_ROW_CONTRACT } from "./coverage-form.mjs";
|
|
27
27
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Copyright 2026 Cordillera Sàrl. Additional terms under section 7 of the AGPL-3.0 apply — see ADDITIONAL-TERMS.md
|
|
3
3
|
// declination-call.mjs — a record that reached the findings surface leaves it BY A STATED DECISION.
|
|
4
4
|
//
|
|
5
|
-
// ── THE DEFECT THIS CLOSES (
|
|
5
|
+
// ── THE DEFECT THIS CLOSES (and the half of the same seam) ────────────────────────────────
|
|
6
6
|
//
|
|
7
7
|
// `record-carry.json` on R2 round `e48f7056` read `unreasoned: 0` and was telling the truth in the weak
|
|
8
8
|
// sense only: every drop had a LABEL, and on 102 of them the label was inferred from where the record
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
// that a note describing the material instead of stating a ground is the defect one artifact over.
|
|
71
71
|
// Measured against seven realistic declinations before anything was built on it, that classifier refused
|
|
72
72
|
// ALL SEVEN as `unclear` — including "already delivered as finding 4 under the EUIPO record for the same
|
|
73
|
-
// proprietor". It is not a bug in the classifier. It answers a different question:
|
|
73
|
+
// proprietor". It is not a bug in the classifier. It answers a different question: the notes must say
|
|
74
74
|
// what could NOT BE ESTABLISHED about a charged rating, and a declination says why a record does not earn
|
|
75
75
|
// a line. Two different speech acts, and a grammar built for one rejects the other on sight.
|
|
76
76
|
//
|
|
@@ -210,6 +210,38 @@ export function contradictionFor(reason, row, scope) {
|
|
|
210
210
|
+ `own-right or duplicate-of-delivered.`;
|
|
211
211
|
}
|
|
212
212
|
|
|
213
|
+
// ── ECONOMY IS NOT A REASON ABOUT A LIVE IN-CLASS MARK (owner ruling 2026-09-07) ─────────────────
|
|
214
|
+
//
|
|
215
|
+
// `not-worth-the-line` means "it fits none of the four manageable categories and is not relevant
|
|
216
|
+
// enough to drive the read". That is a statement about the REPORT'S BUDGET, not about the record. On a
|
|
217
|
+
// live registration inside one of the matter's own instructed classes it is the one thing the seat may
|
|
218
|
+
// not say: the reader is paying for a judgment about that mark, and "there was no room" is not one.
|
|
219
|
+
//
|
|
220
|
+
// Measured on the run that prompted the ruling: 26 of 49 declinations at this seam were this token,
|
|
221
|
+
// and two of the lawyer's own reference marks were among them — one carried on every earlier run.
|
|
222
|
+
//
|
|
223
|
+
// ✕ WHY THIS IS NOT THE REFUSAL THAT WAS REMOVED BELOW, and the difference is the whole reason it can
|
|
224
|
+
// stand. That one refused `unrelated-goods` and `off-field-not-major` on class overlap, fired on 170
|
|
225
|
+
// of 170 records, and made the ENGINE decide relatedness — the lawyer's call. This one refuses ONE
|
|
226
|
+
// token and leaves every substantive reason available. The seat may still decline this record: it may
|
|
227
|
+
// say the goods are unrelated, that it is off-field and not a major brand, that it is the applicant's
|
|
228
|
+
// own right, or that it is already delivered. What it may no longer do is decline it for taking up
|
|
229
|
+
// space. The refusal is about the SHAPE of the reason, not about whether the record is relevant, so
|
|
230
|
+
// the relatedness judgment stays exactly where it was.
|
|
231
|
+
//
|
|
232
|
+
// It does effectively retire this token for live in-class records, because the sweep is already scoped
|
|
233
|
+
// to the instructed classes. That was put to the owner as the consequence and ruled anyway.
|
|
234
|
+
if (reason === "not-worth-the-line" && isLive(row?.status) && shared.length) {
|
|
235
|
+
return `this record is ${String(row?.status ?? "").trim() || "live"} and sits in class `
|
|
236
|
+
+ `${shared.join(", ")} — one of the matter's own instructed classes. "not worth the line" is a `
|
|
237
|
+
+ `statement about the report's budget, not about this mark, and a live registration in an `
|
|
238
|
+
+ `instructed class is never omitted for want of room. Either carry it, or decline it on something `
|
|
239
|
+
+ `true of THIS MARK: unrelated-goods if its goods do not meet the matter's, off-field-not-major `
|
|
240
|
+
+ `if it is off-field and not a major brand, an active dispute or a well-known enforcer, `
|
|
241
|
+
+ `own-right if it belongs to the applicant, duplicate-of-delivered if the same right is already `
|
|
242
|
+
+ `reported. Say what makes this mark distant, or give it its line.`;
|
|
243
|
+
}
|
|
244
|
+
|
|
213
245
|
// THERE IS NO CLASS-OVERLAP REFUSAL, AND THE FIRST DRAFT HAD ONE. It refused `unrelated-goods` and
|
|
214
246
|
// `off-field-not-major` over any record sharing one of the matter's filed classes, on the reasoning
|
|
215
247
|
// that the driver holds both class lists and they disagree with the stated reason.
|
|
@@ -231,7 +263,7 @@ export function contradictionFor(reason, row, scope) {
|
|
|
231
263
|
}
|
|
232
264
|
|
|
233
265
|
/**
|
|
234
|
-
* THE SEAM'S DECISION, AS A PURE FUNCTION —
|
|
266
|
+
* THE SEAM'S DECISION, AS A PURE FUNCTION — the guarantee, in the one place it can be asserted.
|
|
235
267
|
*
|
|
236
268
|
* `recordSynthesisSeam` is module-private in pipeline.mjs and always will be; it does file I/O and takes
|
|
237
269
|
* a run context. The JUDGMENT it makes about each discarded record is this, and it is extracted so a test
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// SPDX-License-Identifier: AGPL-3.0-only
|
|
2
2
|
// Copyright 2026 Cordillera Sàrl. Additional terms under section 7 of the AGPL-3.0 apply — see ADDITIONAL-TERMS.md
|
|
3
3
|
// declination-duty.mjs — every record handed to synthesis left by a NAMED EXIT, or the run says which
|
|
4
|
-
// ones did not. (
|
|
4
|
+
// ones did not. (the missing half; the R2 round on is the incident.)
|
|
5
5
|
//
|
|
6
6
|
// THE RULE IS ALREADY DICTATED, AND IT WAS NEVER CHECKED. synthesis's own contract states it in one
|
|
7
7
|
// line — "a record that reached your findings surface leaves this stage as a finding in findings.json
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# v2 (pure-MCP courier, docs/DELIVERY.md): the outbox carries EVERY requester-facing event — delivered
|
|
5
5
|
# markers (body = the forwarding agent id) AND self-contained JSON packets (run-failed / intake-rejected /
|
|
6
6
|
# duplicate-skipped / late-bind-ack, each with an "agent" field). For each DISTINCT agent named across
|
|
7
|
-
# pending events, wake it ONCE to run the
|
|
7
|
+
# pending events, wake it ONCE to run the clearotron-deliver skill, which routes everything over the ops MCP
|
|
8
8
|
# (list_outbox_events → get_delivery_packet → send → mark_sent/ack_event).
|
|
9
9
|
#
|
|
10
10
|
# THE TRIGGER NEVER DELETES EVENTS: consumption belongs to mark_sent (delivered) and ack_event (the rest),
|
|
@@ -35,7 +35,7 @@ DRAIN_WAIT="${CLEAROTRON_OUTBOX_DRAIN_WAIT:-180}"
|
|
|
35
35
|
# (openclaw models); set CLEAROTRON_OUTBOX_WAKE_MODEL="" to fall back to the agent default. `-` (not `:-`) so
|
|
36
36
|
# an explicit empty value disables the override, while unset keeps the Haiku default.
|
|
37
37
|
WAKE_MODEL="${CLEAROTRON_OUTBOX_WAKE_MODEL-anthropic/claude-haiku-4-5}"
|
|
38
|
-
MSG="The trademark engine's outbox has pending events. Run the
|
|
38
|
+
MSG="The trademark engine's outbox has pending events. Run the clearotron-deliver skill now: list_outbox_events, route each event (delivered → get_delivery_packet + send VERBATIM + mark_sent; every other kind → relay its text + ack_event)."
|
|
39
39
|
|
|
40
40
|
# THE WALL, RESOLVED ONCE AND NAMED WHEN IT IS ABSENT (tracker issue 820).
|
|
41
41
|
#
|
|
@@ -112,7 +112,7 @@ for agent in "${!by_agent[@]}"; do
|
|
|
112
112
|
continue
|
|
113
113
|
fi
|
|
114
114
|
|
|
115
|
-
echo "prelim-outbox: waking $agent to run
|
|
115
|
+
echo "prelim-outbox: waking $agent to run clearotron-deliver"
|
|
116
116
|
# timeout(1) is the enforced wall: the 2026-07-04 incident proved the CLI's own --timeout does not
|
|
117
117
|
# guarantee process EXIT (the agent turn finished; the process idled 19h and wedged the lane).
|
|
118
118
|
# SIGTERM at 840s (inside the unit's TimeoutStartSec budget so the failure is OURS and logged),
|
|
@@ -37,7 +37,7 @@ function listDir(dir) {
|
|
|
37
37
|
* Everything holding this deployment open, named.
|
|
38
38
|
*
|
|
39
39
|
* @param {object} a
|
|
40
|
-
* @param {string} a.queueDirs EVERY queue tree, not the one this box thinks it uses.
|
|
40
|
+
* @param {string} a.queueDirs EVERY queue tree, not the one this box thinks it uses. That lesson:
|
|
41
41
|
* a headless CLEAROTRON_QUEUE_DIR and the agent workspace queues are both
|
|
42
42
|
* real, and a guard that reads one of them passes over work sitting in
|
|
43
43
|
* the other.
|
|
@@ -66,7 +66,11 @@ export function liveRunHolds({ queueDirs = [], lockDir = null, isAlive = claimer
|
|
|
66
66
|
const { names, error } = listDir(lockDir);
|
|
67
67
|
if (error) unreadable.push({ path: lockDir, error });
|
|
68
68
|
for (const n of names) {
|
|
69
|
-
|
|
69
|
+
// `draw-` alongside `slot-`: a direct --experiment invocation is work on this box and the guard's
|
|
70
|
+
// question is whether the box is busy, so a draw has to answer yes. It holds its own prefix rather
|
|
71
|
+
// than a run slot, because a run slot is admission-controlled and taking one would make a draw wait
|
|
72
|
+
// behind clearances — changing what a draw IS in order to fix what this can see.
|
|
73
|
+
if (!/^(slot|draw)-/.test(n) || !n.endsWith(".lock")) continue;
|
|
70
74
|
let raw = null;
|
|
71
75
|
try { raw = readFileSync(join(lockDir, n), "utf8"); } catch { continue; } // released mid-scan
|
|
72
76
|
const pid = Number(String(raw).split(":")[0]);
|
package/driver/dev-portal.mjs
CHANGED
|
@@ -373,7 +373,7 @@ export function startPortal({ poolRoot = null, port = 18899, host = "127.0.0.1",
|
|
|
373
373
|
if (url.pathname === "/dev/enqueue" && req.method === "POST") {
|
|
374
374
|
let body;
|
|
375
375
|
try { body = await readJsonBody(req); } catch (e) { return sendJson(res, 400, { ok: false, error: e.message }); }
|
|
376
|
-
// `searchLevel` IS REFUSED, NOT DROPPED. This form offered a "Search level" menu (
|
|
376
|
+
// `searchLevel` IS REFUSED, NOT DROPPED. This form offered a "Search level" menu (clearotron · Depth 4
|
|
377
377
|
// / knockout · Depth 1) and posted the field to an assembler that stopped reading it, so picking
|
|
378
378
|
// "knockout" enqueued a job naming no product at all and ran whatever the account default or the
|
|
379
379
|
// request's own territories named — a silent product substitution at a live door, from a control
|
|
@@ -145,7 +145,7 @@ export const CALL_REFUSALS = Object.freeze([
|
|
|
145
145
|
"obstacle_absent", // an obstacle was claimed with nothing said about what blocks the proof
|
|
146
146
|
]);
|
|
147
147
|
|
|
148
|
-
// The proof-of-reading arms, and ONLY those.
|
|
148
|
+
// The proof-of-reading arms, and ONLY those. That obstacle waives this duty and no other, so this set
|
|
149
149
|
// is the exact boundary between "you have not proved you read it" and "you have not judged it" — derived
|
|
150
150
|
// by prefix from the vocabulary above rather than retyped, so a new evidence arm joins it automatically
|
|
151
151
|
// and a new judgment arm cannot wander in.
|
|
@@ -183,7 +183,7 @@ export const RETIRED_CALL_REFUSALS = Object.freeze([
|
|
|
183
183
|
// and it must never appear in the same bucket, because the two demand opposite responses — one says
|
|
184
184
|
// "change your answer", the other says "stop asking, it is ours".
|
|
185
185
|
//
|
|
186
|
-
//
|
|
186
|
+
// That leading unproven hypothesis lives here. The accumulator's rows and candidates are REGENERATED
|
|
187
187
|
// on every pass, and `seatFields` re-resolves an already-resolved row against whatever the current pass
|
|
188
188
|
// holds (`disposition-union.mjs:98`, which discards `resolveCandidate`'s `state`). If that second
|
|
189
189
|
// resolution misses, a row the tool accepted lands with an empty receipt and reads as unruled. This
|
|
@@ -442,7 +442,7 @@ export function detectRulingDrift(ledger) {
|
|
|
442
442
|
*
|
|
443
443
|
* ── WHY THE TOTAL IS RETURNED TOO ───────────────────────────────────────────────────────────────────
|
|
444
444
|
*
|
|
445
|
-
*
|
|
445
|
+
* That warning sits in this exact number: filtering it after a split reported
|
|
446
446
|
* `obligationsNeverAddressed: 0` on the run that died owing 75. So the total comes back as its own field
|
|
447
447
|
* and the two parts must sum to it. Nothing can go to zero without a companion number rising to meet it.
|
|
448
448
|
*
|
|
@@ -822,7 +822,7 @@ export function validateDispositionCall(rows, recorded, { told = null } = {}) {
|
|
|
822
822
|
/**
|
|
823
823
|
* CAN THIS ROW'S EVIDENCE DEMAND EVER BE SATISFIED?
|
|
824
824
|
*
|
|
825
|
-
* — the agreement guard for the `evidence_owed` seam, and it is
|
|
825
|
+
* — the agreement guard for the `evidence_owed` seam, and it is the shape one module over. The
|
|
826
826
|
* demand (`quote_required`) is SET at form-build against candidates that carried text; the satisfaction is
|
|
827
827
|
* enforced by `segmentBinding` against the candidate's snippet AS IT IS NOW. Between the two, candidates
|
|
828
828
|
* regenerate. When they come back without quotable passages the flag survives and its justification does
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
// decided, which is the thing already in the record, rather than what we were given.
|
|
20
20
|
//
|
|
21
21
|
// THE INDEX IS WRITTEN BY THE RECEIVER, NEVER BY THE CONSUMER. This handler writes both the payload and
|
|
22
|
-
// the line naming it, in that order, before it validates anything.
|
|
22
|
+
// the line naming it, in that order, before it validates anything. That three snapshot sites all
|
|
23
23
|
// discard their return, so no attempt row names its snapshot and correlation is by mtime — which is
|
|
24
24
|
// precisely how the union discard had to be diagnosed. A consumer-written index can only ever name the
|
|
25
25
|
// payloads the consumer got to; a call that dies mid-flight writes no index line, and its absence is
|
|
@@ -46,7 +46,7 @@ const CALLS_DIR = "disposition-calls";
|
|
|
46
46
|
/**
|
|
47
47
|
* The obligations sidecar — what the seat was TOLD it owed, written when the block was rendered.
|
|
48
48
|
*
|
|
49
|
-
*
|
|
49
|
+
* That rule, applied to this filename: the path is derived ONCE and imported, never re-derived at the
|
|
50
50
|
* other end. perplexity-server.mjs writes this file and this module reads it; two spellings of one name
|
|
51
51
|
* is the drift cost weeks, and the reader would fail OPEN — it would simply find no file, fall back
|
|
52
52
|
* to the live derivation, and renumber the seat's page without anyone being told.
|
|
@@ -338,7 +338,7 @@ export function outstandingWithAnchors(canonicalRows, formRows) {
|
|
|
338
338
|
* Record one typed call. The tool handler's core.
|
|
339
339
|
*
|
|
340
340
|
* `spec` is the DRIVER-WRITTEN grid spec — the same file the grid tool was given. The seat names no path
|
|
341
|
-
* of its own:
|
|
341
|
+
* of its own: the rule is that the path is the driver's, taken from the spec it wrote, because two
|
|
342
342
|
* derivations of one filename is the drift that cost weeks.
|
|
343
343
|
*/
|
|
344
344
|
export function recordDispositions(spec, received, { now = () => new Date().toISOString() } = {}) {
|
|
@@ -415,7 +415,7 @@ export function recordDispositions(spec, received, { now = () => new Date().toIS
|
|
|
415
415
|
// accumulator" are two different facts and nothing compared them.
|
|
416
416
|
//
|
|
417
417
|
// This compares them, per call, and records any disagreement as OURS. It is deliberately not a throw:
|
|
418
|
-
//
|
|
418
|
+
// That silent-drop hypothesis is unproven, and an instrument that crashes the run it is measuring
|
|
419
419
|
// cannot measure it. If the count is always zero the hypothesis is dead and we will be able to say so
|
|
420
420
|
// from the artifact — which is the point of building it before the cure.
|
|
421
421
|
const landed = new Map((Array.isArray(u.form?.rows) ? u.form.rows : [])
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
// definition of "ruled" and — since the review of this build — no row LOOKUP either. `obligationRows`,
|
|
22
22
|
// `formRowFinder` and `isRuled` all come from connotation-search.mjs, the same code the GATE
|
|
23
23
|
// judges with. A union that preserved a ruling the gate would refuse, or dropped one it would accept,
|
|
24
|
-
// would make the outstanding count mean two different things in two places, which is
|
|
24
|
+
// would make the outstanding count mean two different things in two places, which is the defect
|
|
25
25
|
// exactly: one calculation running twice, silently disagreeing, both copies looking correct. The lookup
|
|
26
26
|
// had been written out twice — here and in the gate — and both copies carried the same punctuation defect.
|
|
27
27
|
|
|
@@ -160,7 +160,7 @@ export function unionDispositionForm(prior, submitted, ob, { half = null, genera
|
|
|
160
160
|
const findSubmitted = formRowFinder(submitted, form.rows);
|
|
161
161
|
// — a park is STICKY, for the same reason a ruling is. This module exists because the outstanding
|
|
162
162
|
// count churned instead of shrinking (see the header): a park that could lift would let the count rise
|
|
163
|
-
// again, which is
|
|
163
|
+
// again, which is the defect in new clothes. So the prior form's park is authority, and `parkedIds`
|
|
164
164
|
// only ever ADDS.
|
|
165
165
|
const newlyParked = new Set((parkedIds ?? []).map((x) => String(x ?? "").trim()).filter(Boolean));
|
|
166
166
|
let ruled = 0, carried = 0, parked = 0;
|
package/driver/doc-constants.mjs
CHANGED
|
@@ -350,7 +350,7 @@ export const DOC_CONSTANTS = [
|
|
|
350
350
|
doc: "providers/uspto-local/README.md",
|
|
351
351
|
pattern: /last successful sync goes past (\d+) hours/,
|
|
352
352
|
},
|
|
353
|
-
// The same figure, twice in the same file —
|
|
353
|
+
// The same figure, twice in the same file — the shape, and the reason each occurrence is a row.
|
|
354
354
|
{
|
|
355
355
|
constant: "FRESHNESS_HOURS.sync",
|
|
356
356
|
source: { file: "providers/uspto-local/src/index-store.js", symbol: "FRESHNESS_HOURS.sync" },
|
package/driver/door-gates.mjs
CHANGED
|
@@ -97,7 +97,7 @@ export function gateResolvedRequest({ job = null, profile = null, resolved = nul
|
|
|
97
97
|
// A resolution that could not be taken is not a refusal — see the fail-open note in the header.
|
|
98
98
|
if (!resolved) return out;
|
|
99
99
|
// A CLARIFY IS RELAYED VERBATIM. It is already an actionable sentence naming the selector that could
|
|
100
|
-
// not be honoured ("product \"
|
|
100
|
+
// not be honoured ("product \"clearotron\" names no search we offer — one of: … (or omit it for the
|
|
101
101
|
// account's default)"), and flattening it into a cause would lose the remedy clause.
|
|
102
102
|
if (resolved.clarify) { out.errors.push(resolved.clarify); return out; }
|
|
103
103
|
// deliveryRoute "portal" — DECLARED but not BUILT. It validates shape-wise, has no consumer (the
|
|
@@ -133,7 +133,7 @@ export function doorGates(job, opts = {}) {
|
|
|
133
133
|
return { ...r, ...gateResolvedRequest({ job, ...r }, opts) };
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
// ── WHY
|
|
136
|
+
// ── WHY THE CONFIGURED-TO-SEARCH REFUSAL IS NOT ALSO A DOOR GATE ─────────────────────────────────────────
|
|
137
137
|
//
|
|
138
138
|
// It was, briefly, and it was removed with a measurement rather than an opinion. Adding "is this box
|
|
139
139
|
// configured to search at all" here reddened `driver/test/doors-agree.test.mjs` — nineteen arms green
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Copyright 2026 Cordillera Sàrl. Additional terms under section 7 of the AGPL-3.0 apply — see ADDITIONAL-TERMS.md
|
|
3
3
|
// doubt-selection.mjs — which OPEN doubts the closure seat is asked about, chosen by the DRIVER.
|
|
4
4
|
//
|
|
5
|
-
//
|
|
5
|
+
// That architecture, one lane over from profile-selection.mjs: "prefer driver selection wherever the
|
|
6
6
|
// key precedes the dispatch." The key is on the doubt before doubt-closure is dispatched, so there is
|
|
7
7
|
// nothing here for a directive to ask a seat to judge — the driver lists the ids, and a doubt it does
|
|
8
8
|
// not list is never mentioned.
|
|
@@ -68,7 +68,7 @@ export function keptTiersFor(doubtClosure) {
|
|
|
68
68
|
* WHICH OF THE THREE SILENCES THIS IS. `keptTiersFor` returns null for `every-doubt` AND for a word it
|
|
69
69
|
* does not know, deliberately — a typo must not silently drop every keyed doubt. But that makes the two
|
|
70
70
|
* indistinguishable in the run's event: a misspelt cut records exactly what the shipped cut records, and
|
|
71
|
-
* the product row looks graded while the dispatch is not.
|
|
71
|
+
* the product row looks graded while the dispatch is not. That arm catches a bad word on the ROW; this
|
|
72
72
|
* is the runtime face of the same question, on the run that actually happened.
|
|
73
73
|
*
|
|
74
74
|
* `hasOwnProperty` rather than a truthiness test on the lookup, because `TIER_CUTS[w]` reaches the
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
import { readFileSync, writeFileSync, mkdirSync, renameSync } from "node:fs";
|
|
35
35
|
import { execFileSync } from "node:child_process";
|
|
36
36
|
import { join, dirname } from "node:path";
|
|
37
|
-
import { drainPosture, absentDrainerIsNormal } from "./drain-posture.mjs"; //
|
|
37
|
+
import { drainPosture, absentDrainerIsNormal } from "./drain-posture.mjs"; // one rule about the box
|
|
38
38
|
|
|
39
39
|
export const STAMP_BASENAME = "_drainer-identity.json";
|
|
40
40
|
|