Files
wanderbooks/docs/spec/sources/irs-entity-classification.md
T
swaitsandClaude Opus 5.5 3f20df9700
check / check (push) Canceled after 0s
config, mcp, gui: specs from sources, spec-blind suites, and the bugs they found
ledger-config: parse gets a sourced spec. A fiscal year starts on the
first of a month (IRS Pub. 538); tax_classification is read by whole
words (Treas. Reg. 301.7701-3, Schedule C instructions; "business corp"
no longer reads as an S corp, "corporation or S corporation" is refused);
duplicate or blank members and shared capital accounts are refused; a
negative or non-grammatical receipt threshold is refused; codes trimmed.
tests/spec_config.rs (65 spec-blind tests, 14 properties), fuzz target
fuzz_config_parse (weekly). Mutation: 55 of 55 viable caught (from 25/38).

The receipt policy moves to ledger-config, with one loader
(effective_receipt_policy) and one decimal grammar, so the server and
the viewer enforce and show the same rule (the viewer had its own: only
expense-like debits, a silent $25 default, and no config.json).

ledger-mcp: a module spec (MCP 2025-06-18 tools, JSON-RPC 2.0, the
operating contract). Amounts in are exactly -?digits[.digits]; a number
that is one account's code and another's id (vendors, classes alike) is
refused, not guessed; the threshold is validated at startup. Fixed:
add_line with a bad class journaled the line before refusing;
profit_and_loss_by_class ignored `class`; aging buckets said "0". A wire
in front of rmcp answers malformed JSON with -32700 and invalid requests
with -32600 and their id (rmcp dropped the first, omitted the id).
tests/spec_mcp.rs (26 spec-blind tests: every tool's result against its
own outputSchema, a random-call state machine checking the journal is
untouched by every refusal, amount grammar, previews, the receipt policy).

ledger-gui: money, accounting, and dollars never round (they rounded to
cents, banker's style); export file names avoid Windows device names,
trailing dots and spaces, empty names, and 255-byte overflow; specs on
attention, history, fuzzy search, and axis ticks.

ledger-core: the lifetime profit_and_loss is renamed unclosed_earnings
(docs/testing.md #3).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GWVo7x3UHw5kwCUaWxiejX
2026-10-14 10:13:05 -06:00

53 lines
2.2 KiB
Markdown

# Entity classification: which return a business files
Governs `ledger_config`'s reading of `[company] tax_classification`.
Fetched 2026-10-14.
## Treas. Reg. §301.7701-3 (eCFR, via law.cornell.edu/cfr/text/26/301.7701-3)
**(a) In general**
> A business entity that is not classified as a corporation under
> § 301.7701-2(b) (1), (3), (4), (5), (6), (7), or (8) (an eligible
> entity) can elect its classification for federal tax purposes as
> provided in this section. An eligible entity with at least two members
> can elect to be classified as either an association (and thus a
> corporation under § 301.7701-2(b)(2)) or a partnership, and an eligible
> entity with a single owner can elect to be classified as an association
> or to be disregarded as an entity separate from its owner.
**(b)(1) Domestic eligible entities**
> Except as provided in paragraph (b)(3) of this section, unless the
> entity elects otherwise, a domestic eligible entity is— (i) A
> partnership if it has two or more members; or (ii) Disregarded as an
> entity separate from its owner if it has a single owner.
## Instructions for Schedule C (Form 1040) (2025), "Single-member limited liability company (LLC)"
> Generally, a single-member domestic LLC is not treated as a separate
> entity for federal income tax purposes. If you are the sole member of a
> domestic LLC, file Schedule C (or Schedule E or F, if applicable) unless
> you have elected to treat the domestic LLC as a corporation.
## The returns (titles, from irs-tax-lines.md)
- Form 1065, U.S. Return of Partnership Income: a partnership.
- Form 1120-S, U.S. Income Tax Return for an S Corporation: an S
corporation.
- Form 1120, U.S. Corporation Income Tax Return: a corporation (an
association included) that is not an S corporation.
## Derived (wanderbooks)
| classification says | return |
|---|---|
| partnership | Form 1065 |
| S corporation (S corp, S-corp) | Form 1120-S |
| C corporation; corporation, corp, or association alone | Form 1120 |
| disregarded entity, sole proprietor(ship), single-member | Schedule C |
A phrase naming two returns ("corporation or S corporation") and anything
else names no return wanderbooks can be sure of, so it is
refused rather than guessed.