Skip to main content
LegalDraft™

LegalDraft · Refusals

What the platform refuses, and why

One row per refusal the code enforces. Each names its reason, what to do instead, the boundary that enforces it and the test that proves it; a removed guard fails the build. The count below is generated from the registry, never typed.

285

Refusals catalogued

36

Applying to this brand

3

Kinds

Refused by rule

A rule the code enforces; no configuration, key or retry changes the answer.

  • Claiming a verified, state-exact document before the supervising attorney signs off.

    Both brands

    Why: The rigor label is computed from what ran; it can never be authored higher than the code path that executed.

    Instead: The attorney verifies statutory references against official sources and finalizes.

    Enforced by src/lib/labels.ts (draftRigorLabel); proved by src/lib/labels.test.ts; surfaces: draft; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • Running a paid desk without an active session, a trial allotment or a covering purchase.

    Both brands

    Why: Access is metered by the trial gate and the per-matter entitlement; a locked preview is honest, a silent run is not.

    Instead: Sign in, use the trial allotment, or purchase the matter.

    Enforced by src/lib/trial-gate.ts (resolveTrialAccess); proved by src/lib/tiers/grounded-routes.test.ts; surfaces: workspace, review, draft, redline, cite-check, oc-pass, counsel; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • A citation rendering a higher verification label than the layer that actually ran.

    Both brands

    Why: Existence and treatment labels are reachable only through a real citator answer; the format layer is the honest floor.

    Instead: Configure the citator; until then the label reads format-checked only.

    Enforced by src/lib/labels.ts (citeCheckRigorLabel); proved by src/lib/labels.test.ts; surfaces: cite-check; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • An estate instrument exported without its state execution-formalities appendix.

    Both brands

    Why: Execution formalities are state law; the appendix travels with every covered export.

    Instead: Name the governing state; the appendix is generated from the cited rule.

    Enforced by src/lib/execution-rules.ts (hasExecutionRule); proved by src/lib/docx-builder.test.ts; surfaces: exports, draft; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • Advice, an outcome prediction, an enforceability assertion or a legal conclusion on a consumer surface.

    Consumer lane

    Why: The consumer brand explains and assembles; it never advises, predicts or concludes.

    Instead: Route the question to an attorney; the platform describes the options neutrally.

    Enforced by src/lib/upl-lint.ts (uplLintReport); proved by src/lib/upl-lint.test.ts; surfaces: consumer-lane, counsel; owner: the owner (LegalDraft Technologies LLC) for every consumer-facing sentence and claim; platform engineering for the rails; evidence M03 2026-09-24.

  • An instrument naming the same person in roles that must differ.

    Both brands

    Why: Contradictory facts are flagged before they reach an instrument.

    Instead: Correct the roles; the gate compares case- and space-insensitively.

    Enforced by src/lib/gates.ts (checkConflicts); proved by src/lib/gates.test.ts; surfaces: draft; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • Altering or re-typesetting an official court form; filling a field with text its font cannot encode.

    Both brands

    Why: Official forms are transcribed onto the court's own published PDF, hash-pinned to the court's copy; nothing is redrawn.

    Instead: Use the fill lane for a fillable form or download the court's blank; unencodable characters are named in the report.

    Enforced by src/lib/official-forms/fill.ts (fillOfficialForm); proved by src/lib/official-forms/provenance.test.ts; surfaces: official-forms; owner: the owner; counsel for the Rule 10-2.2(c) question; evidence M03 2026-09-24.

  • Representation of any kind: filing, service, negotiation with a party, or appearance, for anyone.

    Both brands

    Why: L5 is never performed by the platform, on either brand, for any role.

    Instead: A licensed attorney represents; the platform prepares.

    Enforced by src/lib/upl/capability.ts (capability); proved by src/lib/upl/capability.test.ts; surfaces: platform; owner: the owner, with counsel, for the terms, privacy, and disclaimers; platform engineering for status, changelog, accessibility, and the scorecard; evidence M03 2026-09-24.

  • Predicting an outcome, a ruling or a bench's decision.

    Both brands

    Why: Preparation, not prediction: outcome-prediction language is detected and surfaced, never delivered as analysis.

    Instead: The passage is flagged for the attorney; the War Room prepares questions, it never forecasts.

    Enforced by src/lib/candor.ts (buildCandorReport); proved by src/lib/candor.test.ts; surfaces: war-room, assistant, draft; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • Running a model on a person's own document or facts on the consumer brand.

    Consumer lane

    Why: The consumer brand prepares documents from released, attorney-reviewed templates that the person's answers fill in; review, redline, revision, editing and document chat are the attorney lane's.

    Instead: Use the template lane, or the attorney-finalization door.

    Enforced by src/lib/consumer-lane.ts (consumerAiRetiredResponse); proved by src/lib/consumer-ai-retired.test.ts; surfaces: consumer-lane; owner: the owner (LegalDraft Technologies LLC) for every consumer-facing sentence and claim; platform engineering for the rails; evidence M03 2026-09-24.

  • Sending a byte to a vendor outside the permitted list, over a non-https scheme, to a private network, or with a data class the vendor is not cleared for.

    Both brands

    Why: The permitted-vendor list is a reviewed constant an environment variable can only narrow; a refused vendor receives zero bytes and nothing routes elsewhere.

    Instead: The owner reviews the constant; the surface reports the refusal instead of substituting a vendor.

    Enforced by src/lib/egress/vendors.ts (assertPermittedEgress); proved by src/lib/egress/vendors.test.ts; surfaces: platform; owner: the owner, with counsel, for the terms, privacy, and disclaimers; platform engineering for status, changelog, accessibility, and the scorecard; evidence M02 2026-09-24.

  • A component whose bounded probe did not answer reads unknown on /status and /api/status, never operational.

    Both brands

    Why: Unknown is a real answer; a green light for a probe that timed out would be a claim without evidence.

    Instead: Wait for the next probe, or read the component's configuration and readiness columns, which are separate from the probe.

    Enforced by src/lib/status/probes.ts (statusReport); proved by src/lib/status/probes.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M13 2026-09-25.

  • A vitals beacon carrying anything beyond the six coarse fields (route pattern, metric, value, device class, connection class, deployment id).

    Both brands

    Why: Field performance is measured without identity or content; a beacon with a user, a session, a title or a document is dropped whole.

    Instead: Nothing to do: the beacon the platform ships sends only the six fields.

    Enforced by src/lib/vitals/field.ts (parseSample); proved by src/lib/vitals/field.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M13 2026-09-25.

  • Deleting a matter, an account or a firm while a legal hold covers it.

    Both brands

    Why: A legal hold beats deletion: the receipt removes nothing and names the hold and its review date.

    Instead: The attorney or the owner releases the hold by name when it ends; the deletion then runs and produces its receipt.

    Enforced by src/lib/lifecycle/lifecycle-map.ts (deletionReceipt); proved by src/lib/lifecycle/lifecycle-map.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M18 2026-09-25.

  • Placing a legal hold without a reason or without a review date within a year.

    Both brands

    Why: A hold without a review date becomes silent indefinite retention; every hold is reviewed at least once a year and a late review is stated on every receipt.

    Instead: Place the hold with its reason and a review date, and review it on that date.

    Enforced by src/lib/lifecycle/lifecycle-map.ts (validateHold); proved by src/lib/lifecycle/lifecycle-map.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M18 2026-09-25.

  • Serving a restored database before the later ledgers are re-applied: a deleted row, a revoked share, key or grant, a superseded approval, or a job that would resume by itself.

    Both brands

    Why: Deletion receipts, revocations, approvals and key history outlive any restore and are re-applied before a restore may serve.

    Instead: Apply the post-restore actions and pass the verification; interrupted jobs are re-run only by a person.

    Enforced by src/lib/lifecycle/restore.ts (postRestoreActions); proved by src/lib/lifecycle/restore.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M18 2026-09-25.

  • A procurement, trust or lifecycle document claiming a certification the platform does not hold (SOC 2 certified or compliant, HIPAA compliant, bank-grade and the like).

    Both brands

    Why: Implemented controls, planned examinations and certifications stay separate; the evidence status says plainly that the platform is not SOC 2 certified.

    Instead: Read the controls with their evidence in the procurement package; a certification appears only after its report exists.

    Enforced by src/lib/lifecycle/procurement.ts (FORBIDDEN_CLAIMS); proved by src/lib/lifecycle/procurement.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M18 2026-09-25.

  • A published accuracy or outcome percentage without its count and denominator, or over a denominator too small to carry it.

    Both brands

    Why: Raw counts, denominators, exclusions and reviewer disagreement are published; a percentage appears only beside its count and only over thirty or more observations.

    Instead: Read the count and the denominator; the percentage appears when the denominator can carry it.

    Enforced by src/lib/quality/benchmark.ts (measure); proved by src/lib/quality/benchmark.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M19 2026-09-25.

  • A claim that the platform outperforms a named competitor without a matched, blinded study on the same matters with its method published.

    Both brands

    Why: Comparisons are facts with their qualifications, never rankings; superiority needs a matched study.

    Instead: Compare what each product publishes; the benchmark reports this platform on its own terms.

    Enforced by src/lib/quality/benchmark.ts (comparativeClaimAllowed); proved by src/lib/quality/benchmark.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M19 2026-09-25.

  • Adopting or advertising an upgrade as better on fewer than twenty blind, versioned pairs, on an unmet margin, or with a serious regression.

    Both brands

    Why: An upgrade must improve agreed outcomes by the stated margin without an unacceptable regression; anything less is insufficient evidence.

    Instead: Run more blind pairs; keep the preserved baseline in service meanwhile.

    Enforced by src/lib/quality/paired.ts (upgradeVerdict); proved by src/lib/quality/paired.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M19 2026-09-25.

  • A saving, a return on investment or a projection presented as unit economics, or a price changed from the economics module.

    Both brands

    Why: Unit economics come from observed records only, by task and source volume; the price model stays unless separately decided.

    Instead: Read the observed cost per accepted deliverable with its counts.

    Enforced by src/lib/quality/economics.ts (economics); proved by src/lib/quality/economics.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M19 2026-09-25.

  • Opening the accounts door before the SMTP proof and the Auth switches, opening commerce before the acceptance, or treating the activation record as approved without the owner.

    Both brands

    Why: The agent can make the activation record ready; only the owner approves it, workflow by workflow and cohort by cohort.

    Instead: The owner reviews the record, chooses the cohorts and approves it by name.

    Enforced by src/lib/quality/activation.ts (activationRecord); proved by src/lib/quality/activation.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M19 2026-09-25.

  • Counting a configuration check, a keyless run that stops at the transport, or a DraftBench skip as live proof of a program.

    Both brands

    Why: A program reads proved only from a keyed receipt whose every stage completed; receipts carry no text, no names and no key.

    Instead: The owner runs npm run live-proof with the keys in a session shell and commits the receipts.

    Enforced by src/lib/quality/live-proof.ts (programStatus); proved by src/lib/quality/live-proof.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M19 2026-09-25.

  • Opening paid consumer offers on an empty template library, or letting consumer readiness change attorney drafting, revision, the dual engines or the specialist tools.

    Consumer lane

    Why: Consumer readiness is tracked on its own evidence; the attorney core never reads it.

    Instead: Release templates per state with an attorney release; the attorney desks are unaffected either way.

    Enforced by src/lib/quality/consumer-readiness.ts (consumerOffersMayOpen); proved by src/lib/quality/consumer-readiness.test.ts; surfaces: consumer-lane; owner: the owner (LegalDraft Technologies LLC) for every consumer-facing sentence and claim; platform engineering for the rails; evidence M19 2026-09-25.

  • A positioning statement that ranks, uses a superlative or disparages another product.

    Both brands

    Why: Positioning states what this platform publishes beside a dated public fact about the other product and its qualification; compare it, never rank it.

    Instead: Read the positioning facts with their evidence and qualifications.

    Enforced by src/lib/positioning/positioning.ts (RANKING_WORDS); proved by src/lib/positioning/positioning.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M20 2026-09-25.

  • Building trust accounting, outcome prediction, deposition capture hardware, a public marketing-domain intake form, an in-house e-signature system or an autonomous litigation agent; or deleting a function because an expansion was declined.

    Both brands

    Why: The do-not-build list is held as data a law checks; a declined expansion never removes what exists.

    Instead: Use the bounded answers: connectors, proposals only, the attorney-lane intake link, DocuSign under the firm’s credentials.

    Enforced by src/lib/strategy/options.ts (DO_NOT_BUILD); proved by src/lib/strategy/options.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M20 2026-09-25.

  • Preparing a marital settlement agreement or a parenting plan on the consumer brand.

    Consumer lane

    Why: The family instruments are the attorney desk's: an attorney drafts them through the grounded method, on the Supreme Court of Florida's own forms as exemplars. On the consumer brand they are left off the catalog, the template pages and the assistant, and the draft route refuses them.

    Instead: Use the Supreme Court of Florida's family law forms, or work with an attorney on the attorney platform.

    Enforced by src/lib/draft-types.ts (isAttorneyOnlyDocType); proved by src/lib/family/family-drafting.test.ts; surfaces: draft, consumer-lane; owner: the owner (LegalDraft Technologies LLC) for every consumer-facing sentence and claim; platform engineering for the rails; evidence R4-09 2026-09-26.

Not live yet

A dependency, lane or key is not live; the surface says so and names the owner item instead of improvising.

  • A retrieval lane that did not run reporting an empty result as if it had.

    Both brands

    Why: A failed or not-configured lane is named with its gap on every partial result; the usable lanes stay usable and the authorization scope never widens; a silent empty lane fails the call.

    Instead: The gap names the lane and the cause; the usable lanes' results stand; the owner keys or repairs the lane.

    Enforced by src/lib/evidence/retrieval-spaces.ts (laneResult); proved by src/lib/evidence/retrieval-spaces.test.ts; surfaces: workspace, discovery; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M08 2026-09-24.

  • A connector whose registry entry reads planned or pilot presented as connected, syncing or live anywhere.

    Both brands

    Why: Every claim derives from the one registry; the Clio connector is not live until the owner records confirmed demand, applies migration 20260925040000 and activates it, and the roadmap connectors FamilyLawGPS built dormant (MyCase, LawPay, Google Calendar) wait on the same terms, each naming what its activation also needs; until then nothing connects.

    Instead: Use the export and compose-link paths that are live today; the owner activates a connector on confirmed demand.

    Enforced by src/lib/connectors/connector.ts (syncStatusView); proved by src/lib/connectors/connector.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence R4-15b 2026-09-29.

  • Selling a matter, a tier or an upgrade before the purchase-to-approved-export acceptance passed in controlled accounts.

    Both brands

    Why: Commerce is not live: the interlock stays closed until every acceptance scenario passed with evidence, and the scenarios read not run until the owner runs them (an owner item).

    Instead: Evaluate on the sample matter; purchases open when the owner records the acceptance and the activation.

    Enforced by src/lib/quality/commerce-acceptance.ts (acceptancePassed); proved by src/lib/quality/commerce-acceptance.test.ts; surfaces: platform; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M19 2026-09-25.

Never accepted

An input shape the surface never took; the receipt names the check that refused it.

  • Drafting without a valid governing state.

    Both brands

    Why: Every instrument is state-specific; an execution rule, a clause pack and an exemplar lane all resolve by state.

    Instead: Choose the governing state before drafting.

    Enforced by src/lib/execution-rules.ts (executionRuleFor); proved by src/lib/execution-rules.test.ts; surfaces: draft; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • A "deterministic" label on a document the clause library does not cover.

    Both brands

    Why: Only library-assembled operative text is deterministic; anything else is a grounded model draft and is labelled as one.

    Instead: The draft proceeds on the grounded lane with the honest label.

    Enforced by src/lib/clauses/registry-ids.ts (hasClauseTemplateId); proved by src/lib/labels.test.ts; surfaces: draft; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • Assembling an instrument while a mandatory intake fact is missing.

    Both brands

    Why: A missing required fact yields a defective instrument; the gate names each missing key.

    Instead: Supply every required fact named in the report.

    Enforced by src/lib/gates.ts (checkRequiredFacts); proved by src/lib/gates.test.ts; surfaces: draft; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M03 2026-09-24.

  • Parsing an upload whose bytes do not match its declared type, whose archive expands beyond the fixed limits, or whose "text" is not text.

    Both brands

    Why: A hostile file must not exhaust a worker or become a trusted source; the check runs before any parser.

    Instead: The receipt names the failed check; attach a genuine PDF, Word file or plain text.

    Enforced by src/lib/upload-guard.ts (checkUpload); proved by src/lib/upload-guard.test.ts; surfaces: workspace, review, redline, cite-check; owner: the owner, with counsel, for the terms, privacy, and disclaimers; platform engineering for status, changelog, accessibility, and the scorecard; evidence M02 2026-09-24.

  • A request path carrying a literal or encoded backslash, an invalid escape, double encoding or a control character.

    Both brands

    Why: The proxy answers 404 with the base security headers before routing and without a redirect.

    Instead: Request the route as published.

    Enforced by src/lib/http-security.ts (malformedPathReason); proved by src/lib/malformed-path.test.ts; surfaces: platform; owner: the owner, with counsel, for the terms, privacy, and disclaimers; platform engineering for status, changelog, accessibility, and the scorecard; evidence M01 2026-09-24.

  • A workflow requested for a state or task the coverage registry does not list as supported.

    Both brands

    Why: A state in the dropdown is not a launch gate; each advertised workflow names its rights, effective version, evaluated output and support owner, and the registry states the unsupported states explicitly.

    Instead: Use the workflow in a supported state, or the owner adds the state to the registry with its rights, version, evaluated output and owner first.

    Enforced by src/lib/coverage/gate.ts (taskCoverage); proved by src/lib/coverage/gate.test.ts; surfaces: platform, workspace; owner: the attorney using the desk, under their own supervision; platform engineering for the gates; evidence M09 2026-09-24.

Companions: Governance · Engine status · Trust center.

LegalDraft is self-help legal document software. LegalDraft is not a law firm, does not provide legal advice, and does not decide what legal action you should take. Your documents are prepared from your own answers on templates; the software chooses no term for you, and no attorney has reviewed your document unless you engage one. Communications with LegalDraft are not protected by attorney-client privilege. For legal advice, consult an independent licensed attorney.