You are a data serializer. Your only job is to represent the given content in the requested syntax, exactly.

TARGET FORMAT (.mini, family 'tc'):
.mini FORMAT — family 'tc' v1 (Software test cases)
Manual or automated test cases: module, title, precondition, ordered steps, expected result, priority, type and automation flag.
Rules:
- Plain UTF-8 text. The FIRST line is the header: 'tc|d=<str>?, l=<str>?, t=<str>?, proj=<str>?, n=<int>'. n is mandatory and must equal the exact number of record lines.
- After the header, ONE line per record and nothing else (no comments, no code fences, no blank lines in between).
- Each record has these fields in THIS order, separated by '|' (position is the semantics; field names are never written):
  1. id: str
  2. module: str
  3. title: str
  4. precondition: str
  5. steps: ','-separated list of str, 1 to 20 elements
  6. expected: str
  7. priority: one of {low|medium|high|critical}
  8. type: one of {functional|integration|performance|security|usability|regression}
  9. automated: bool
- If a list element contains the separator ',', enclose the element in double quotes CSV-style ("impact, justice and evidence"; the * marker goes after the closing quote) or escape the separator as '\,'. A literal trailing asterisk is written '\*'.
- Escapes valid in any value: '\|' for a literal vertical bar, '\\' for a backslash, '\n' for a line break.
- Numbers unquoted; booleans true/false. Scalar fields are never quoted.
- An empty field means null (allowed only for optional fields).
- Record: 9 core fields.
Valid example:
tc|n=1|d=20260603|l=en|t=SIMA release 1.2 regression|proj=SIMA
TC-001|auth|Login with valid credentials|User registered and active|open /login,enter valid email and password,click Sign in|Dashboard is shown and session cookie is set|high|functional|true
Header values to use: d=20260603, l=en, t=SIMA release 1.2 regression, proj=SIMA.

CONTENT TO REPRESENT (12 records; keep the order; copy every text verbatim; '(none)' means the field is empty/null):
Record 1: id=TC-001; module=auth; title=Login with valid credentials; precondition=User registered and active; steps=(3 items) open /login / enter valid email and password / click Sign in; expected=Dashboard is shown and session cookie is set; priority=high; type=functional; automated=true
Record 2: id=TC-002; module=auth; title=Login with wrong password; precondition=User registered; steps=(3 items) open /login / enter valid email and wrong password / click Sign in; expected=Error message; no session created; priority=high; type=functional; automated=true
Record 3: id=TC-003; module=auth; title=Password reset email; precondition=User registered; steps=(2 items) open /reset / submit registered email; expected=Reset email delivered within 60 s; priority=medium; type=integration; automated=false
Record 4: id=TC-004; module=courses; title=Create course; precondition=Logged-in student; steps=(3 items) open /courses/new / fill name, period and topics / save; expected=Course appears in dashboard; priority=high; type=functional; automated=true
Record 5: id=TC-005; module=lessons; title=Upload audio lecture; precondition=Course exists; credits available; steps=(3 items) open /api/new / select course and upload 20 MB mp3 / confirm credit estimate; expected=LessonJob created with status queued; priority=high; type=functional; automated=true
Record 6: id=TC-006; module=lessons; title=Reject unsupported file; precondition=Course exists; steps=(2 items) open /api/new / upload .exe file; expected=Validation error; nothing stored; priority=medium; type=security; automated=true
Record 7: id=TC-007; module=pipeline; title=Transcription completes; precondition=Job queued; Whisper available; steps=(2 items) run worker / wait for stage transcribe; expected=Transcript stored; stage advances to generate; priority=high; type=integration; automated=true
Record 8: id=TC-008; module=pipeline; title=.mini bank parses; precondition=Generation stage finished; steps=(2 items) fetch job output / run parser; expected=All records valid; n equals record lines; priority=high; type=functional; automated=true
Record 9: id=TC-009; module=pipeline; title=Incoherent items repaired; precondition=Bank with declarative items; steps=(2 items) run coherence filter / run repair; expected=Items repaired or excluded with trace; priority=medium; type=functional; automated=true
Record 10: id=TC-010; module=quiz; title=Adaptive quiz updates theta; precondition=Lesson ready; profile exists; steps=(2 items) start quiz with 6 items / answer all; expected=theta and SE updated; XP awarded; priority=high; type=functional; automated=true
Record 11: id=TC-011; module=quiz; title=Quiz under load; precondition=50 concurrent students; steps=(2 items) start 50 quizzes / answer concurrently; expected=p95 latency below 2 s; no errors; priority=medium; type=performance; automated=false
Record 12: id=TC-012; module=admin; title=Credit ledger consistency; precondition=Several jobs processed; steps=(2 items) open admin ledger / sum entries; expected=Ledger total equals profile balance; priority=low; type=functional; automated=false

OUTPUT: only the .mini document. No explanations, no markdown code fences, no comments.