Files
nibiru-framework.com/docs/scripts/extraction/lora-augmentation.summary.txt
stephan f8f58c4ab9 Sweep: link fixes, splash i18n parity, neuronetz badge, mobile, training source
LINK AUDIT — every internal link now resolves to a real page:
  - BrandHeader doc-nav 'Showcase' target → /{locale}/showcase/projects/
    (the showcase/ directory has no index, only patterns/projects)
  - Translated-slug bugs across de/es/fr/ja: ~30 broken links from the
    overnight translator that auto-localised path segments. Mapped back to
    the actual English slugs:
      de:  warum-nibiru → why-nibiru, kuenstliche-intelligenz/orakel → ai/oracle,
           kI/modul/* → ai/module/*, praesentation/projekte → showcase/projects
      es:  ai/modulo/* → ai/module/*, diseno/* → design/*,
           porque-nibiru / por-que-nibiru → why-nibiru,
           presentacion/proyectos → showcase/projects
      fr:  ia/module/* → ai/module/*, ia/module/formation → ai/module/training,
           pourquoi-nibiru → why-nibiru, presentation/projets → showcase/projects
      ja:  ai/milestones → ai/roadmap
  - Cross-locale leaks: bare `/ai/oracle` (no locale) → `/{locale}/ai/oracle/`
    in de/index.mdx, fr/index.mdx, fr/ai/module/overview.md, en/ai/corpus.md
  - `/en/start/` (which 404s — start/ has no index) was hardcoded in five
    design/components.md atelier-button hrefs across all locales →
    `/{locale}/start/installation/`
  - `/en/reference` removed from en/downloads.mdx — the reference doc tree
    isn't built yet; replaced with a github link to the v2 markdown source
  - Collapsed stray double-slashes (`/de/why-nibiru//` etc.) introduced by
    the slug-replacement sed sweep

Final audit shows 0 broken internal links (down from ~37).

TRAINING SOURCE NOW SHIPS — root cause of "I cannot find the training data
in the repository": the curated source files were gitignored.
  - .gitignore at scripts/extraction/ now whitelists framework-reference-v2.md
    and lora-augmentation.summary.txt alongside lora-augmentation.jsonl
  - The 1620-line v2 reference, the 323-record augmentation jsonl, and the
    summary report all enter the repo so the production Docker build sees
    them and contributors can find them by browsing gitea

NEURONETZ AI DEEPLINK BADGE — small "AI by Neuronetz ↗" pill in the splash
footer's bottom strip. Logo mark mirrored locally to
public/img/external/neuronetz-mark.svg (pulled from neuronetz.ai/favicon.svg)
so the page doesn't hot-link off-domain on every paint. Magenta border on
hover; opens neuronetz.ai in a new tab with rel=noopener.

SPLASH I18N PARITY — de/es/fr/ja index.mdx now import + render the same
component stack as en (CometTrail · MmvcStage · MissionControl · LaunchSequence
· SpacecraftGrid · EditorialContent · LandingFooter · ToTop · LandingScripts),
so every locale shows the full splash structure. The component bodies
themselves are still English (proper i18n is the next step); for now this
brings structural parity.

MOBILE RESPONSIVE SWEEP:
  - LandingFooter: 4-col grid stacks 2-col @ 768px and 1-col @ 480px;
    bottom strip wraps vertical at 480px
  - MmvcStage: 5-step progress rail tightens its gaps under 720px and
    drops the bar segments entirely under 480px so the labels fit
  - Docs bridge §11: tighter H1/H2 spacing, breadcrumbs/doc-meta on
    narrow viewports, pagination cards stack 1-col, help-strip stacks
    vertical, tables get horizontal-scroll on overflow
  - Doc-header: nav-version chip hides under 480px so the search-pill
    + brand fit comfortably

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 19:36:25 +02:00

69 lines
4.4 KiB
Plaintext

Nibiru Framework — LoRA Augmentation Corpus Summary
=====================================================
Source: /home/stephan/PhpstormProjects/Nibiru/docs/scripts/extraction/framework-reference-v2.md
Output: /home/stephan/PhpstormProjects/Nibiru/docs/scripts/extraction/lora-augmentation.jsonl
Format: JSONL (one record per line)
Records: 323
Validation
----------
All 323 lines are valid JSON. All records carry the required keys:
instruction, input, output, metadata.{language, source, section, kind, citations}.
(Verified with `jq` schema check — 0 records failed.)
Breakdown by `kind`
-------------------
code-recall 121
workflow 97
inikey 29
comparison 26
gotcha 16
debug 16
edge-case 15
refactor 3
Coverage
--------
All 14 top-level sections of the v2 reference are exercised:
- §0 Executive Summary
- §1 Namespace Map
- §2 Singletons & Factories (Config, Pdo, Db, Form, Controller, View)
- §3 Database Layer (drivers, autogenerator pipeline, multi-database)
- §4 Module System (structure, registry, loading flow, plugin pattern, lifecycle)
- §5 Form System (architecture, substitution, type classes, ordering, div wrap, assembly, production usage)
- §6 Request/Response Lifecycle
- §7 INI Key Reference
- §8 Namespace Conventions
- §9 Constants
- §10 Production Patterns NOT in Core
- §11 Gotchas & Footguns
- §12 Request Handling Trace
- Appendices: File Index, Quick Reference
Cross-section workflow / debug / refactor records (~30) cover full-stack scenarios:
adding a new module, adding a new table, switching DB sections per model,
debugging Postgres-mode mask footgun, end-to-end form-to-DB save flow, etc.
Sample records (3 for sanity-check)
-----------------------------------
Sample 1 (kind=code-recall, line 14):
{"instruction":"Show me the exact `__construct()` body the autogenerator produces for a MySQL model.","input":"","output":"```php\npublic function __construct()\n{\n Pdo::settingsSection('DATABASE');\n self::initTable( self::TABLE );\n}\n```\nFrom `loach.mssql.database-connection/application/model/WarehouseLoach/timeanddate.php:30-34`. The first line writes the static `Pdo::$section`; the second registers the table schema with the adapter's static `$table` array.","metadata":{"language":"en","source":"framework-reference-v2","section":"2.2 Pdo","kind":"code-recall","citations":["loach.mssql.database-connection/application/model/WarehouseLoach/timeanddate.php:30-34","framework-reference-v2.md §2.2"]}}
Sample 2 (kind=inikey, line 100):
{"instruction":"Which INI key sets the PHP timezone?","input":"","output":"`[SETTINGS][timezone]`. Read by `Dispatcher::run()`. Defaults to `UTC`. From `framework-reference-v2.md §7 [SETTINGS]`.","metadata":{"language":"en","source":"framework-reference-v2","section":"7 INI [SETTINGS]","kind":"inikey","citations":["framework-reference-v2.md §7"]}}
Sample 3 (kind=workflow, line 220):
{"instruction":"How does the autogenerator handle a brand-new application with zero existing model files?","input":"","output":"`Model::createOutFolder()` at `core/c/model.php:28` does `mkdir -p` (chmod 0777) for the target folder, then `createClassFiles()` at line 37 loops through scanned tables (or one table if `--table=` was passed) and calls `generateClassByTableName($table)` for each. For each class file:\n1. If overwrite mode, `unlink` existing.\n2. Otherwise `fopen('w'); fclose()` to create an empty stub.\n3. Build template, do all 8 placeholder substitutions plus driver/odbc switching.\n4. Write file and chmod 0777.\n\nSo zero existing files becomes a full set of generated models on the first request. From `framework-reference-v2.md §3.2`.","metadata":{"language":"en","source":"framework-reference-v2","section":"3.2 Autogenerator Pipeline","kind":"workflow","citations":["core/c/model.php:28","core/c/model.php:37","core/c/model.php:53","framework-reference-v2.md §3.2"]}}
Notes for downstream merge
--------------------------
- Every record has a real file:line citation OR a quoted code block.
- Code blocks are quoted from the v2 reference; nothing is invented.
- Phrasing varies across natural developer styles ("Walk me through…",
"Quick question:…", "Why does…", "I'm trying to…", "Show me…",
"I'm getting `Class … not found`…", etc.).
- The `kind` taxonomy follows the spec: edge-case, comparison, workflow,
debug, refactor, code-recall, inikey, gotcha.