hmgr 0.0.16 → 0.0.17

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.
@@ -2271,6 +2271,16 @@
2271
2271
  }
2272
2272
  $('dsk-suche').addEventListener('input', filtereDskListe);
2273
2273
 
2274
+ /** Quelle · [Pfad ·] Ref für eine Skill-Karte im „Skills hinzufügen"-Dialog (F106): der Pfad
2275
+ unterscheidet Skills, die unter demselben Namen mehrfach im selben Repo liegen (z. B. je
2276
+ Harness ein eigener Ordner). Ein Wurzel-Skill hat pfad === '' und zeigt kein Pfad-Segment. */
2277
+ function skillQuelleBeschriftung(skill) {
2278
+ var teile = [skill.quelleName];
2279
+ if (skill.pfad) teile.push(skill.pfad);
2280
+ teile.push('Ref ' + skill.ref);
2281
+ return teile.join(' · ');
2282
+ }
2283
+
2274
2284
  function oeffneSkillsHinzufuegen(z) {
2275
2285
  skillsKontext = { modus: 'einzeln', z: z };
2276
2286
  $('dsk-ziel').textContent = zielTitel(z);
@@ -2295,7 +2305,7 @@
2295
2305
  // Dieselben Marken wie im Katalog (F13): hier fällt die Entscheidung, was installiert wird.
2296
2306
  var marken = skillMarkenBox(skill);
2297
2307
  if (marken) txt.appendChild(marken);
2298
- var quelleSpanEl = e('span', 'mono', skill.quelleName + ' · Ref ' + skill.ref);
2308
+ var quelleSpanEl = e('span', 'mono', skillQuelleBeschriftung(skill));
2299
2309
  quelleSpanEl.title = skill.quelleText;
2300
2310
  txt.appendChild(quelleSpanEl);
2301
2311
  if (schon) txt.appendChild(e('span', 'notiz', 'Hängt hier schon.'));
@@ -2337,7 +2347,7 @@
2337
2347
  // Dieselben Marken wie im Katalog (F13): hier fällt die Entscheidung, was installiert wird.
2338
2348
  var marken = skillMarkenBox(skill);
2339
2349
  if (marken) txt.appendChild(marken);
2340
- var quelleSpanEl = e('span', 'mono', skill.quelleName + ' · Ref ' + skill.ref);
2350
+ var quelleSpanEl = e('span', 'mono', skillQuelleBeschriftung(skill));
2341
2351
  quelleSpanEl.title = skill.quelleText;
2342
2352
  txt.appendChild(quelleSpanEl);
2343
2353
  if (ueberall) txt.appendChild(e('span', 'notiz', 'Hängt schon überall.'));
@@ -3489,7 +3499,12 @@
3489
3499
  liste.appendChild(e('li', 'leerhinweis', 'Noch keine Quelle. „Quelle hinzufügen …" legt die erste an.'));
3490
3500
  return;
3491
3501
  }
3492
- QUELLEN.forEach(function (q) {
3502
+ // Kopie statt QUELLEN direkt: baueQuellenfilter() und andere Stellen iterieren über QUELLEN in
3503
+ // Lieferreihenfolge, die soll unangetastet bleiben (F105).
3504
+ var quellenSortiert = QUELLEN.slice().sort(function (a, b) {
3505
+ return a.name.localeCompare(b.name, 'de', { sensitivity: 'base' });
3506
+ });
3507
+ quellenSortiert.forEach(function (q) {
3493
3508
  var li = document.createElement('li');
3494
3509
  li.appendChild(repoIcon(q));
3495
3510
  var beschriftung = e('b', null, q.name);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hmgr",
3
- "version": "0.0.16",
3
+ "version": "0.0.17",
4
4
  "description": "Harness Manager: Skills und Plugins für AI-Harnesses verwalten",
5
5
  "license": "MIT",
6
6
  "author": "Tim Kaufmann",