iobroker.autodoc 0.9.38 → 0.9.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,11 +4,16 @@
4
4
 
5
5
  Automatically generates structured documentation (HTML, Markdown, JSON) for your ioBroker installation — on demand, on a schedule, or when the system changes.
6
6
 
7
- **Version:** 0.9.38
7
+ **Version:** 0.9.43
8
+
9
+ **Installation**
10
+
11
+ 1. Open **[ioBroker Admin](https://www.iobroker.net/#en/documentation)** and install **`iobroker.autodoc`** (see the [npm package](https://www.npmjs.com/package/iobroker.autodoc); **latest** on npm may lag behind this repo — check the registry version).
12
+ 2. Optional: clone or install from **[GitHub](https://github.com/crunchip77/ioBroker.autodoc)**.
13
+ 3. Official adapter index: **[ioBroker.repositories](https://github.com/ioBroker/ioBroker.repositories)** (**latest**). Maintainer workflow / PR: **[TODO — § 1.1 Release](TODO.md#release-veroeffentlichung)**.
8
14
 
9
15
  | | |
10
16
  | --- | --- |
11
- | **Install** | [ioBroker Admin](https://www.iobroker.net/#en/documentation) — [npm](https://www.npmjs.com/package/iobroker.autodoc) package **`iobroker.autodoc`** (current **0.9.38**), **default adapter list** via [ioBroker.repositories](https://github.com/ioBroker/ioBroker.repositories) (**latest**), or install from this **Git** repository (URL / clone). See [TODO — release](TODO.md#release-veroeffentlichung) for maintainer notes. |
12
17
  | **Repository** | [github.com/crunchip77/ioBroker.autodoc](https://github.com/crunchip77/ioBroker.autodoc) |
13
18
  | **Issues** | [GitHub Issues](https://github.com/crunchip77/ioBroker.autodoc/issues) |
14
19
 
@@ -36,22 +41,30 @@ No other adapters are **required** for AutoDoc itself. Optional: a **web server*
36
41
 
37
42
  ## Configuration
38
43
 
44
+ ### Documentation instance overview
45
+
39
46
  Configure the instance in **ioBroker Admin** (tabs for basics, manual notes, advanced options, notifications, AI). Generation can be triggered manually, on startup, on a timer, and after adapter changes (debounced).
40
47
 
41
- Short **orientation** for operators (install paths, tabs, exports, hashes, checker): **[`docs/user-guide/README.md`](docs/user-guide/README.md)** · **German** scenario walkthrough (**„Muster-Einfamilienhaus“** etc.): **[`docs/user-guide/README.de.md`](docs/user-guide/README.de.md)**.
48
+ **Documentation language** (Basic settings) drives headings and fixed wording in **all HTML profiles** and in Markdown. It also controls the **short summary lines** for inventory comparison (“changes since last run”) and for **changelog** cards when you regenerate — older stored changelog rows are shown in the **current** export language, not the language they had when saved.
49
+
50
+ In **Advanced → What to include & limits**, **Hide “changes since last run” in Admin exports** removes only the yellow delta box at the top of the **Admin** HTML system chapter and the matching subsection in **Admin** Markdown. The **Changelog** chapter, **User**, and **Onboarding** exports are not affected.
51
+
52
+ The **User / Family** profile adds a brief everyday sentence after the title block when AutoDoc found **at least one** inventory change since the previous snapshot (skipped on the first run and when nothing changed). **Onboarding** does not include that extra notice.
53
+
54
+ Short **orientation** for operators (install paths, tabs, exports, hashes, checker): **[`docs/user-guide/README.md`](docs/user-guide/README.md)** · **German** config wiki (tabs, screenshots, demo scenario): **[`docs/user-guide/README.de.md`](docs/user-guide/README.de.md)**.
42
55
 
43
56
  Useful **states** (selection): `action.generate`; **`action.exportPdf`** (writes **PDF** profiles from the latest HTML under `/files` when optional **`puppeteer`** is installed in the adapter directory — no full regeneration); `info.lastGeneration` / `info.nextGeneration`; `info.htmlUrlAdmin` / `info.htmlUrlUser` / `info.htmlUrlOnboarding`; `info.templateVersion` (HTML template / renderer alignment); `info.forumCardPlain` (plaintext “system card” for forums, updated when documentation is generated).
44
57
 
45
- **Exports & storage:** after each successful run, **`documentation.exportHashes`** holds **SHA-256 (hex)** for the latest MD / JSON / Admin HTML served from `/files`, and **merges digests for `autodoc-{admin,user,onboarding}.pdf`** whenever a PDF export step wrote those files. In Admin **Advanced**, **Documentation states storage** is **`full`** (defaults; last bodies in `documentation.*`) or **`metadata`** (lightweight states; canonical files remain under `/files`).
58
+ **Exports & storage:** after each successful run, **`documentation.exportHashes`** holds **SHA-256 (hex)** for the latest MD / JSON / Admin HTML served from `/files`, and **merges digests for `autodoc-{admin,user,onboarding}.pdf`** whenever a PDF export step wrote those files. Canonical full Markdown, JSON model, and Admin HTML live **only** under **`/files/`** (`autodoc-latest.*`, profile HTML). The states **`documentation.markdown`**, **`documentation.html`**, and **`documentation.json`** hold **short placeholders** only — use **`info.htmlUrl*`**, **`/files/`**, or download actions for full text.
46
59
 
47
60
  ### Media, Redis, and state storage (short)
48
61
 
49
62
  - **Canonical exports** always live under **`/files/autodoc.<instance>/`** and are **overwritten** each run (no accumulation of old HTML versions there).
50
- - If the **object / Redis** database should stay small, prefer **`metadata`** for documentation states (see **Exports & storage** above): scripts and integrations that need **full text** should read **`/files/`** or use **`info.htmlUrl*`** / download actions.
51
- - **Photos and large binaries:** do **not** rely on storing big images in ioBroker’s virtual file storage — **especially with Redis** (binary blobs inflate RAM). Use **external URLs** (your NAS, HTTP server) or small **inline SVG** diagrams; the same guideline keeps **jsonl** setups predictable.
63
+ - **`documentation.*` body states** are **placeholders only** (large payloads are not duplicated in the object database). Scripts and integrations that need **full text** read **`/files/`** or use **`info.htmlUrl*`** / download actions.
64
+ - **Photos and large binaries:** do **not** store big images or blobs as **large state values** in ioBroker’s **object database** — **especially with Redis** (binary payloads inflate RAM). Use **external URLs** (your NAS, HTTP server) or small **inline SVG** diagrams; the same guideline keeps **jsonl** setups predictable. AutoDoc keeps **full** Markdown/HTML/JSON under **`/files/`**; **`documentation.markdown`**, **`documentation.html`**, and **`documentation.json`** are **short placeholders** only — not a media store.
52
65
  - Rationale, options, and future media work: [`PLAN.md` — Media (MVP) & limits](PLAN.md#architektur-medien-mvp) and [Architecture boundaries](PLAN.md#architektur-grenzen).
53
66
 
54
- ### Public base URL (QR code and “Copy link”)
67
+ ### Public base URL
55
68
 
56
69
  The **Onboarding** HTML includes a QR code and a **Copy link** control. Both use the same target: the onboarding file under `/files/autodoc.<instance>/autodoc-onboarding.html`, prefixed with the **ioBroker base URL** from the adapter settings (**Advanced** tab: *ioBroker base URL (optional)*).
57
70
 
@@ -70,13 +83,133 @@ The **Onboarding** HTML includes a QR code and a **Copy link** control. Both use
70
83
 
71
84
  **AI context hints** are injected only into the LLM prompt; they are **not** printed in the documentation. For **guest onboarding**, prefer everyday facts. Heavy IT or project wording (adapters, repos, …) can cause the model to leak jargon into guest text; a **safety step** then replaces that AI block with neutral guest wording. That is intentional. The **resident / family** profile does not use the same guest-only restriction. Configure them in Admin under **KI documentation / AI documentation** (after enabling a provider); full wording appears in the hint above the field.
72
85
 
86
+ Copy-paste **examples** (field IDs, syntax): [**Mermaid**](#mermaid-cookbook-examples) · [**JSON arrays**](#json-cookbook-snippets) · [**Custom CSS**](#html-custom-css-examples). **Stable URLs** for bookmarks / Admin `staticLink`: **`blob/main/README.md#…`** — GitHub opens Markdown in **Preview** (readable); fragments match heading slugs below (same names as local `#…` links). Scroll-to-section is **best effort** in GitHub’s viewer; **repository root** URLs like `…/ioBroker.autodoc#json-cookbook-snippets` remain unreliable. After large README edits, **re-check slugs** against **`blob/main`**.
87
+
88
+ `https://github.com/crunchip77/ioBroker.autodoc/blob/main/README.md#documentation-instance-overview`
89
+
90
+ `https://github.com/crunchip77/ioBroker.autodoc/blob/main/README.md#public-base-url`
91
+
92
+ `https://github.com/crunchip77/ioBroker.autodoc/blob/main/README.md#optional-pdf-export-puppeteer`
93
+
94
+ `https://github.com/crunchip77/ioBroker.autodoc/blob/main/README.md#mermaid-cookbook-examples`
95
+
96
+ `https://github.com/crunchip77/ioBroker.autodoc/blob/main/README.md#json-cookbook-snippets`
97
+
98
+ `https://github.com/crunchip77/ioBroker.autodoc/blob/main/README.md#html-custom-css-examples`
99
+
100
+ <h3 id="mermaid-cookbook-examples">Mermaid cookbook examples</h3>
101
+
102
+ Paste into **My documentation → Mermaid diagram** (`manualMermaidDiagram`). Use **plain line breaks** inside the field (no HTML). Prefer **`flowchart LR`** so wide diagrams fit the HTML page; very large graphs are hard to read — split concepts across separate diagrams if needed.
103
+
104
+ **Embedded SVG:** when **`@mermaid-js/mermaid-cli`** is installed in the adapter directory and generation succeeds, diagrams become inline SVG in HTML (good for offline / PDF). If embedding fails or the CLI is missing, the export keeps a `<pre class="mermaid">` block and the browser may load Mermaid from jsDelivr — see **Optional PDF export** and **`docs/user-guide`** (“Optional Mermaid CLI”).
105
+
106
+ Minimal left-to-right overview:
107
+
108
+ ```text
109
+ flowchart LR
110
+ Internet([Internet]) --> Router[Router]
111
+ Router --> ioB(ioBroker host)
112
+ ioB --> Heating[Heating adapters]
113
+ ioB --> Lights[Lights / rooms]
114
+ ```
115
+
116
+ Small **subgraph** (group related nodes):
117
+
118
+ ```text
119
+ flowchart LR
120
+ subgraph LAN["Home LAN"]
121
+ A[js-controller] --> B[javascript.0]
122
+ A --> C[other instances]
123
+ end
124
+ ```
125
+
126
+ **Tips**
127
+
128
+ - Stick to **supported Mermaid** constructs you have seen working elsewhere; exotic directives may break `mmdc`.
129
+ - **Auto host topology** is separate (`autoMermaidHostGraph`); hide it with chapter id **`mermaidAuto`** in the Admin hide list, **`mermaid`** for this manual diagram only (`lib/docTemplateConfig.js`).
130
+
131
+ <h3 id="json-cookbook-snippets">JSON cookbook snippets</h3>
132
+
133
+ Admin stores these fields as **strings**; content must be **valid JSON** (`"` keys/strings, no trailing commas). Empty roster means defaults: use **`[]`** where you do not want to override order or hide anything.
134
+
135
+ **Allowed chapter ids** come from the adapter (`lib/docTemplateConfig.js`):
136
+
137
+ | Profile | Order fields | Hidden fields | Notes |
138
+ | --- | --- | --- | --- |
139
+ | Admin | `adminChapterOrderJson` | `adminHiddenChaptersJson` | Order default: `manual`, `system`, `adapters`, `rooms`, `scripts`, `schedule`, `userdata`, `aliases`, `maintenance`, `diagnosis`, `troubleshooting`, `custom`, `changelog`, `appendices`. Extra hide-only ids: **`mermaid`**, **`mermaidAuto`**. |
140
+ | User | `userChapterOrderJson` | `userHiddenChaptersJson` | Keys include `manual`, `ai`, `guestHelp`, `atAGlance`, `rooms`, `scripts`, `routines`, `ownerPlaybook`, `mermaid`, `adapters`, `custom`, `system`, `troubleshooting`. |
141
+ | Onboarding | `onboardingChapterOrderJson` | `onboardingHiddenChaptersJson` | Keys include `welcome`, `quickstart`, `tips`, `guestHelp`, `stats`, `ai`, `capabilities`, `mermaid`, `rooms`, `routines`, `ownerPlaybook`, `automations`, `adapters`, `custom`, `hint`, `system`, `manual`. |
142
+
143
+ **Reorder Admin** — put system overview directly after manual context:
144
+
145
+ ```json
146
+ ["manual", "system", "adapters", "rooms", "scripts", "schedule", "userdata", "aliases", "maintenance", "diagnosis", "troubleshooting", "custom", "changelog", "appendices"]
147
+ ```
148
+
149
+ **Hide** Admin changelog and appendices:
150
+
151
+ ```json
152
+ ["changelog", "appendices"]
153
+ ```
154
+
155
+ **Hide User scripts chapter:**
156
+
157
+ ```json
158
+ ["scripts"]
159
+ ```
160
+
161
+ **Reorder User** — bring **`system`** up after rooms (full key list, same ids as default order otherwise):
162
+
163
+ ```json
164
+ ["manual", "guestHelp", "ai", "atAGlance", "rooms", "system", "scripts", "routines", "ownerPlaybook", "mermaid", "adapters", "custom", "troubleshooting"]
165
+ ```
166
+
167
+ **Custom Markdown chapters** (`customDocSectionsJson`) — array of objects with **`title`**, **`body`** (or **`bodyMarkdown`**), optional **`profiles`** (`"admin"` | `"user"` | `"onboarding"`). Omit **`profiles`** to show in **all** profiles.
168
+
169
+ ```json
170
+ [
171
+ {
172
+ "title": "Emergency contacts",
173
+ "body": "## Numbers\n- **Repair:** …\n- **Utility:** …",
174
+ "profiles": ["user", "onboarding"]
175
+ },
176
+ {
177
+ "title": "Operator notes",
178
+ "body": "## Rack layout\nShort **Markdown** only; keep secrets out.",
179
+ "profiles": ["admin"]
180
+ }
181
+ ]
182
+ ```
183
+
184
+ Max **12** sections; very long bodies are truncated at generation time.
185
+
186
+ <h3 id="html-custom-css-examples">HTML custom CSS examples</h3>
187
+
188
+ Under **Admin → HTML export & extra sections**, **Font stack** (`htmlFontStack`) and **Extra CSS** (`htmlExtraCss`) tweak only the **exported HTML** (not Markdown). The renderer wraps pages in `lib/htmlRenderer.js` (`wrapPage`): sidebar links live under **`nav ul li a`**, layout uses **`#layout`**, **`nav`**, and **`main`** — inspect generated HTML if you need a selector.
189
+
190
+ **Font stack:** one CSS `font-family` list (risky characters `< > { }` are stripped). Example paste:
191
+
192
+ ```css
193
+ "Source Serif 4", Georgia, serif
194
+ ```
195
+
196
+ **Extra CSS:** append short rules after the built-in stylesheet. Prefer **existing palette tokens** (`var(--link)`, `var(--nav-bg)`, `var(--border)`, `var(--surface)`, … from the `:root` / `body.dark` blocks); **`htmlThemePreset`** swaps those via `html.autodoc-preset-*` classes — there is no separate `--accent` token on `:root` (some components use `var(--accent, #0066cc)` as a **local** fallback only).
197
+
198
+ Starter snippet you can paste into **Extra CSS**:
199
+
200
+ ```css
201
+ nav { width: 260px; }
202
+ nav ul li a:hover { opacity: 0.92; }
203
+ h2 { border-bottom-color: var(--link); }
204
+ ```
205
+
73
206
  ## Features (overview)
74
207
 
75
208
  - Discovery across instances, hosts, enums, scripts, aliases, userdata, system config
76
209
  - Standalone HTML per profile with search, dark mode, responsive layout
77
210
  - Markdown + JSON export and version history (rotation configurable)
78
211
  - Maintenance-oriented hints (documentation score for open checklist items; disabled instances listed as inventory, not penalized)
79
- - Multilingual Admin UI strings (EN / DE / FR full; more locales with English copy until translated — [CONTRIBUTING](CONTRIBUTING.md#admin-ui-translations-i18n)); generated copy follows your configured project language where applicable
212
+ - Multilingual Admin UI strings (EN / DE / FR full; more locales with English copy until translated — [CONTRIBUTING](CONTRIBUTING.md#admin-ui-translations-i18n)); generated documentation text follows **Documentation language**, including changelog/compare summary lines and optional inventory-change notices in User exports
80
213
  - Optional AI providers (e.g. Ollama, Groq, Anthropic) with strict opt-in
81
214
 
82
215
  For **roadmap and planning**: [`TODO.md`](TODO.md) (open work at the top, full completed checklists in the appendix) and [`PLAN.md`](PLAN.md) (vision, rationale, architecture brainstorming).
@@ -87,20 +220,50 @@ For **roadmap and planning**: [`TODO.md`](TODO.md) (open work at the top, full c
87
220
 
88
221
  **Admin `common.news`** in `io-package.json` lists only versions **published on npm** (Adapter Checker **E2004**). The detailed sections below are the **user-facing** changelog (Git-era releases plus npm); older entries are in [`CHANGELOG_OLD.md`](CHANGELOG_OLD.md).
89
222
 
90
- ### **WORK IN PROGRESS**
223
+ ### **WORK IN PROGRESS** (`dev` — before merge / next `npm run release`; fold into `### x.y.z` below or drop before publish)
91
224
 
92
- - **Release prep:** Draft user-facing bullets here before **`npm run release`** (`CONTRIBUTING.md`). **Standard list:** nach neuen npm-Versionen ggf. **ioBroker.repositories** mitziehen **[`TODO.md` § 1.1](TODO.md#release-veroeffentlichung)** · **[`PLAN.md`](PLAN.md)**.
225
+ - **Liste / Checker:** Eintrag **`autodoc` latest** unter **ioBroker.repositories** wartet weiter auf Maintainer-**Merge**; danach sollte **`W4001`** im Adapter Checker weg sein ([CONTRIBUTING](./CONTRIBUTING.md)), siehe **[TODO § 1.1](TODO.md#release-veroeffentlichung)**.
226
+ - **Gehosteter Checker / iobroker.dev:** häufig **504** oder Timeouts; lokal `npm run adapter-check` kann **E9999** im **`--local`‑Pfad liefern (**CONTRIBUTING**) — Releases an **CI** und **`npm test`** festmachen, nicht nur an der Web-UI.
227
+ - **Roadmap:** laufende Themen vor allem in **[`TODO.md`](TODO.md)** und **[`PLAN.md`](PLAN.md)**; diesen Abschnitt vor dem nächsten Release in eine neue **`### x.y.z`**-Sektion übernehmen oder kürzen.
228
+
229
+ ### 0.9.43 (2026-05-13)
230
+
231
+ - **Admin / Adapter Checker:** **`common.news`** lists only semver versions that exist as tarballs on **npm** (ioBroker Adapter Checker **E2004**). Removed **`news`** keys **0.9.39**, **0.9.40**, and **0.9.41** — those bumps never shipped to the registry between **0.9.38** and **0.9.42**. The narrative below remains the **user-facing** history for those Git-era steps.
232
+ - **`common.news` copy:** **0.9.42** admin news now compares against **0.9.38** (last npm release before **0.9.42**).
233
+ - **Runtime:** unchanged.
234
+
235
+ ### 0.9.42 (2026-05-13)
236
+
237
+ - **npm / process:** Patch **0.9.42** — **no functional change** vs **0.9.38** (previous tarball on npm before **0.9.42**); `package.json` / `io-package.json` / README **`Version:`** aligned for npm publish only (release-script housekeeping).
238
+
239
+ ### 0.9.41 (2026-05-13)
240
+
241
+ *Semver steps **0.9.39–0.9.41** were Git-era only — no tarballs on npm until **0.9.42**; **`common.news`** aligned with npm in **0.9.43** (**E2004**).*
242
+
243
+ - **npm / process:** Patch **0.9.41** — **no functional change** vs **0.9.40**; `package.json` / `io-package.json` / README **`Version:`** aligned for npm publish only (release-script housekeeping).
244
+
245
+ ### 0.9.40 (2026-05-13)
246
+
247
+ - **Maintainer docs & release tooling:** **[CONTRIBUTING.md](CONTRIBUTING.md)** documents **`npm run release`** only from **`main`**; **[`docs/iobroker-adapter-references.md`](docs/iobroker-adapter-references.md)** documents the literal README changelog heading ``### **WORK IN PROGRESS**`` required by `@alcalzone/release-script` / ioBroker plugins (do not rename — avoids **`check:changelog`** failures).
248
+ - **Lint:** JSDoc **`@param` / `@returns` descriptions** completed for **`lib/docChangeFormat.js`** (clean **`npm run lint`**).
249
+ - **Runtime:** no adapter behaviour or export pipeline change in this patch release.
250
+
251
+ ### 0.9.39 (2026-05-13)
252
+
253
+ - **Breaking — storage:** Admin setting **`documentationStatesMode`** (**Documentation in States**) is **removed**. **`documentation.markdown`**, **`documentation.html`**, and **`documentation.json`** are **always** short placeholders; canonical full exports live **only** under **`/files/`** (and optional filesystem export). **`documentation.exportHashes`** unchanged — integrations must use **`/files/`**, **`info.htmlUrl*`**, or download actions for full body text (`common.news`).
254
+ - **Docs / links:** **`readme`** in `io-package.json`, **`homepage`** in `package.json`, and Admin **`staticLink`** help URLs use GitHub **`main`** (`blob/main/…`) so default-branch installs match help targets.
255
+ - **Localization & exports:** **Documentation language** drives one-line saved **changelog** rows and **“changes since last run”** / compare text. **`hideAdminDeltaSinceLastRun`** still hides only the yellow **Admin** delta box + matching Admin Markdown subsection. **User / Family:** short plain-language inventory-change notice when the snapshot differs (skipped on first run / no changes); **Onboarding** unchanged.
256
+ - **Docs — wiki & cookbook:** **`docs/user-guide/README(.de).md`** refresh; README [**Mermaid**](#mermaid-cookbook-examples) / [**JSON**](#json-cookbook-snippets) / [**CSS**](#html-custom-css-examples) cookbooks maintained for copy-paste. **Export copy** (Admin HTML/Markdown): **Betrieb — Referenz** disclaimer, **Diagnose** framing, onboarding chapter-order help (**`quickstart`** vs discovery).
93
257
 
94
258
  ### 0.9.38 (2026-05-12)
95
259
 
96
- - **Advanced — storage default:** **`documentationStatesMode`** default for **new** instances is now **`metadata`** (full HTML/Markdown/JSON in **`/files/`** only; `documentation.*` states are placeholders). Lowers object-database load for typical installs (e.g. Redis). **Existing** instances keep their saved value until you change **Dokumentation in States** in Admin. Scripts that relied on full text in states should use **`/files/`** paths or download actions (`common.news` + Admin help).
97
- - **Rationale:** With the adapter in **ioBroker.repositories** **latest**, new installations should avoid silently growing the **full**-mode footprint for everyone.
260
+ - **Advanced — storage (historical npm note):** release **0.9.38** introduced default **`metadata`** for **new** instances so full exports prefer **`/files/`** (`common.news`). **All** installs now behave like that **without** a toggle **`documentationStatesMode`** was dropped in **0.9.39** (always placeholders + **`/files/`**).
98
261
 
99
262
  ### 0.9.37 (2026-05-10)
100
263
 
101
264
  - **Tooling:** `runPdfExport` initializes the PDF digest map with a typed empty collection so **`npm run check`** (TypeScript) passes; no change to PDF export behavior.
102
265
  - **Docs:** Adapter-neutral **[`docs/iobroker-adapter-references.md`](docs/iobroker-adapter-references.md)** linked from **`TODO.md`**, **`CONTRIBUTING.md`**, and the Cursor project rule; **`PLAN.md`** phase **5.x.1** aligned with **`TODO.md`** (MVP complete).
103
- - **Distribution (follow-up):** **ioBroker.repositories** — **`autodoc`** in **latest**; damit im Admin neben **npm** und Git‑URL in der **Standard-Adapterliste** (siehe [TODO § 1.1](TODO.md#release-veroeffentlichung)).
266
+ - **Distribution (follow-up):** **ioBroker.repositories** — PR **`autodoc` latest** eingereicht (**Merge ausstehend**); danach Eintrag in der **Standard-Adapterliste** neben **npm** und Git‑URL (siehe [TODO § 1.1](TODO.md#release-veroeffentlichung)).
104
267
 
105
268
  ### 0.9.36 (2026-05-09)
106
269
 
@@ -111,16 +274,10 @@ For **roadmap and planning**: [`TODO.md`](TODO.md) (open work at the top, full c
111
274
  - **npm:** publish **`iobroker.autodoc`** on the public registry so hosts can `npm install` the adapter tarball without cloning.
112
275
  - **README:** install table reflects **npm** plus Git; default-list installs still depended on **ioBroker.repositories** (unchanged at that release).
113
276
 
114
- ### 0.9.34 (2026-05-08)
115
-
116
- - **`documentation.exportHashes`:** after a successful PDF step, **SHA-256** entries for **`autodoc-admin.pdf`**, **`autodoc-user.pdf`**, **`autodoc-onboarding.pdf`** are merged into the same state (generation with **`pdfExportAfterGeneration`** or manual **`action.exportPdf`**).
117
- - **Mermaid / HTML:** jsDelivr **`mermaid.min.js`** is injected **only** when the page still contains **`<pre class="mermaid">`** (fully SVG-embedded exports skip the CDN). `RENDERER_VERSION` **2026.05.08.1**.
118
- - **Admin:** **`Doc layout pdf hint`** on tab **HTML export & extra sections**; **export-hashes** help text mentions PDF digests; **`manualMermaidDiagram`** help clarified.
119
- - **Quick Start:** scripts-with-description lines are ordered **by name** for stable output.
120
- - **`docs/user-guide`:** tab overview, **exportHashes**/Mermaid wording; **SCREENSHOTS.md** + eingebettete **PNG-Screenshots** für alle sechs Konfig-Tabs (neben den SVG-Wireframes), Hinweise Lesbarkeit/GitHub-Vorschau.
121
-
122
277
  ## License
123
278
 
124
279
  MIT License
125
280
 
281
+ <!-- Maintainer: Admin staticLinks — wiki DE vs English README cookbooks on **blob/main**. Sync README.de.md + jsonConfig if headings change. -->
282
+
126
283
  Copyright (c) 2026 crunchip77 <41550245+crunchip77@users.noreply.github.com>