feat(fleet): fiscal profile + compliance calendar + ADC register (erp#54, T11 data)

fleet/profile/ goes from stub to the machine-readable business-rules surface
the fleet reads (PRD agent-catalog document surface + compliance ADC framework):

- fiscal.yaml — entity, VAT position, 8 rules (regime reel simplifie until
  2026-12-31 -> quarterly CA3 from 2027-01-01 per LF 2025 art. 38; KM export
  autoliquidation 259-1 CGI box E2; FR 20% deductible; intra-EU reverse
  charge; FX 766/666; SaaS expensed; CCA 455 lane). Every rule carries
  effective_from/effective_until AND decision: adc-NNN; every date cites its
  PRD anchor as an inline comment (verified against factory origin/main).
- calendar.yaml — 15 entries: acomptes TVA (2026-07 month-window, 2026-12-15),
  last CA12 FY-2026 (2027-05-04), CA3 quarterly windows, CFE (December),
  AG comptes annuels (2027-06-30), e-invoicing milestones (2026-09-01
  reception, 2027-09-01 emission/e-reporting), URSSAF echeancier with the
  in-file NOTE that a real direct debit exists since May 2026 (erp#57 revisit
  of the payroll-dormant assumption), KM deferred due dates + renewal stub.
- JSON Schemas for both + scripts/validate.py (stdlib-only: strict YAML-subset
  parser, JSON-Schema-subset checker, rule->ADC resolution, calendar checks).
- decisions/ — ADC register: template + adc-001..005 Accepted formalizations
  (autoliquidation KM, FX->766/666, SaaS expensed, reel simplifie until
  abolition, CCA personal-card lane) + adc-006/007 Proposed stubs (retainer
  currency -> erp#53; capital path -> erp#51). Agents draft, the operator
  Accepts — never the reverse; immutable once merged, supersede never edit.
- Mutation policy in-file: PRs only (T12 proposes, human merges).
- Same-change: profile README stub -> real doc; fleet/README.md layout line
  and AGENTS.md fleet row updated (profile no longer a stub).

Validation: PASS — 8 rules, 15 entries, 7 ADCs, 0 errors, 7 warnings (the
warnings list exactly what awaits operator verification). Human gate left
open on purpose: operator sanity-read of the calendar + Acceptance of
adc-001..005.

Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01VRShc4QhLLU73FLHx9vskh
This commit is contained in:
2026-07-18 23:45:00 +02:00
co-authored by Claude Fable 5
parent 66b277abfa
commit a482bb18c4
16 changed files with 1531 additions and 3 deletions
@@ -0,0 +1,62 @@
---
id: adc-003
title: "AI/SaaS subscriptions expensed (6xx), never immobilized at current unit costs"
status: Accepted
decided: 2026-07-18
effective_from: 2026-01-01
effective_until: null
supersedes: null
superseded_by: null
---
# adc-003 — AI/SaaS subscriptions expensed (6xx), never immobilized
> **Accepted as formalization** of what the PRD seed table calls "implicit
> today" (PRD [compliance ADC seed table](https://gitea.arcodange.lab/arcodange-org/factory/src/branch/main/vibe/PRD/ai-back-office/compliance.md#accounting-decision-records-adc)).
> Operator sanity read = erp#54 human gate.
## Context
Arcodange's supplier side is dominated by recurring AI/SaaS subscriptions
(Anthropic, Cloudflare, OVH, etc.) at small monthly unit costs. Each entry
raised the same implicit question: expense (6xx) or immobilize (20x/205)?
## Decision
AI/SaaS subscription costs are **expensed to class-6 accounts in the period
invoiced**, never immobilized at current unit costs. Review clause: if a
perpetual licence or a single subscription materially exceeds the
small-equipment tolerance, a **superseding ADC is drafted before the method
changes** (permanence des méthodes).
## Base légale & doctrine
- PCG art. 211-1 — an asset requires control and expected future economic
benefits; a monthly subscription confers neither beyond the period billed.
- BOI-BIC-CHG-20-30-10 — the 500 EUR HT small-equipment tolerance. *General
doctrine cite, not sourced from a PRD leaf — expert-comptable confirmation
requested.*
- Subscriptions are services (no transferred right of ownership) → charges.
## Alternatives rejected
- **Immobilizing (205 concessions et droits similaires) + amortization** —
disproportionate tracking for small monthly amounts and no durable right is
acquired; rejected at current unit costs.
## Consequences
- Accounts touched: class-6 service/subscription charge accounts.
- Downstream rule: `fiscal.yaml` `saas-subscriptions-expensed`.
- Annexe: immobilization policy disclosed from this record at close.
## QA & validation
- Consistent with every supplier entry recorded to date (ERP state).
- Expert-comptable review: pending — specifically the BOI tolerance cite above.
## References
- PRD compliance.md § ADC seed table (adc-003).
- `fiscal.yaml` rule `saas-subscriptions-expensed`.
- erp#54 (register seeding).