Compare commits
5
Commits
8882cf8ee2
..
2.4.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
eeace26de9 | ||
|
|
635ecd6673 | ||
|
|
1c55484bf7 | ||
|
|
f4ba85bcb9 | ||
|
|
47442be3ef |
@@ -38,15 +38,20 @@ Commands are registered via `ChatLogV2.CHAT_COMMANDS` — not Hooks.on("chatMess
|
|||||||
|
|
||||||
## Testing
|
## Testing
|
||||||
|
|
||||||
|
Deux fichiers de test, pas de build :
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
# standalone, no npm needed — install jest globally or use npx
|
# Tests Jest (globals importés via @jest/globals, flag ESM requis)
|
||||||
npx jest scripts/tests/travellerNpcGenerator.test.js
|
NODE_OPTIONS="--experimental-vm-modules" npx jest scripts/tests/travellerNpcGenerator.test.js
|
||||||
|
|
||||||
|
# Mini-runner maison (Jest rapporte un faux positif « at least one test »)
|
||||||
|
node scripts/tests/allyEnemyGenerator.test.js
|
||||||
```
|
```
|
||||||
|
|
||||||
- Single file, 1096 lines, hand-rolled FoundryVTT mocks.
|
- `travellerNpcGenerator.test.js` : Jest (`describe`/`it`/`expect`), mock FoundryVTT fait main, ~1100 lignes. Couvre : utilitaires, lookups, validation, caractéristiques/compétences, conversion de compétences, génération complète, ModuleCache, erreurs, config validation.
|
||||||
- Covers: utilities, lookups, validation, characteristic/skill generation, skill conversion, full NPC gen, ModuleCache, errors, config validation.
|
- `allyEnemyGenerator.test.js` : son propre runner (`test()`/`assertEqual`), 39 tests, à lancer avec `node` directement.
|
||||||
- No CI test step — you must run manually.
|
- Config Jest minimale dans `jest.config.cjs` (`testMatch` + `transform: {}`).
|
||||||
- No Jest config file — relies on defaults.
|
- Pas de CI test step — à lancer manuellement.
|
||||||
|
|
||||||
## Versioning
|
## Versioning
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,147 @@
|
|||||||
|
# MgT2e — Compendium Amiral Denisov
|
||||||
|
|
||||||
|
Module **FoundryVTT** pour **Mongoose Traveller 2e (MgT2e)**, regroupant des compendiums de référence et une suite d'outils d'aide au MJ (commerce, PNJ, rencontres, missions, cartes stellaires, calendrier impérial).
|
||||||
|
|
||||||
|
**Compatibilité :** FoundryVTT v13 et v14
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ✨ Fonctionnalités
|
||||||
|
|
||||||
|
### Commandes de chat
|
||||||
|
|
||||||
|
| Commande | Rôle |
|
||||||
|
|---|---|
|
||||||
|
| `/commerce` | Génération d'offres de commerce (3 onglets) |
|
||||||
|
| `/pnj` | Génération de PNJ rapide (4 onglets) |
|
||||||
|
| `/rencontre` | Rencontres aléatoires |
|
||||||
|
| `/mission` | Contrats / missions aléatoires |
|
||||||
|
| `/sector` | Carte stellaire interactive (Traveller Map) |
|
||||||
|
| `/subsector` | Carte d'un sous-secteur |
|
||||||
|
| `/cal` | Fenêtre du calendrier impérial |
|
||||||
|
|
||||||
|
### Génération de PNJ
|
||||||
|
|
||||||
|
- **PNJ rapide** : nom, carrière, caractéristiques, compétences (localisées en français), relations
|
||||||
|
- **PNJ détaillé (Traveller)** : génération selon les règles du générateur officiel, création de fiche `npc` MgT2e avec spécialités de compétences natives
|
||||||
|
- **Alliés & Ennemis** : relations générées via tables D66, modificateurs d'affinité/inimité, caractéristiques spéciales
|
||||||
|
- **Création d'acteur** : possibilité de créer directement une fiche PNJ et de l'ouvrir
|
||||||
|
|
||||||
|
### Import par lot de PNJ
|
||||||
|
|
||||||
|
- **`scripts/batchNpcCreator.js`** : importe un répertoire d'images (fichiers) comme PNJs, grille de raccourcis dans la barre latérale *Acteurs* (Commerce, PNJ, Rencontre, Mission), bouton *Traveller Map* dans la barre latérale *Scènes*
|
||||||
|
|
||||||
|
### Carte stellaire (Traveller Map)
|
||||||
|
|
||||||
|
- Carte interactive en IFRAME avec recherche de mondes
|
||||||
|
- Carte de chat complète : UWP (avec détail), importance, économie, culture, population, noblesse, bases, remarques, allégeance, étoiles
|
||||||
|
- **Synchronisation** : le MJ peut partager la vue actuelle (hex, zoom) avec tous les joueurs via socket
|
||||||
|
- **Vue joueur** en lecture seule, mise à jour en temps réel
|
||||||
|
- **Synchronisation du canvas** : le MJ peut aligner la vue des joueurs sur la sienne
|
||||||
|
|
||||||
|
### Calendrier impérial
|
||||||
|
|
||||||
|
- Fenêtre compacte affichant la date impériale (`Wonday, 234-1116 IC ─ 14:30`)
|
||||||
|
- **Configurable par le MJ** : année, jour (1-365), heure:minute locale, planète
|
||||||
|
- Boutons rapides `+1 jour` et `+1 heure` (report 24 h → jour, 365 → 1)
|
||||||
|
- **Conversions calendaires** : Solomani, Vilani, Zhodani (Olympiades), Aslan, K'Kree, Hiver (formules approximatives de [Date_Conversion](https://wiki.travellerrpg.com/Date_Conversion))
|
||||||
|
- **Synchronisé pour les joueurs** en temps réel via socket
|
||||||
|
- **Auto-ouverture** au démarrage (désactivable) et **sauvegarde de la position** de la fenêtre
|
||||||
|
- **Notes de bord** : bouton crayon → saisie d'une note datée (date impériale + date réelle), ajoutée à un journal de session
|
||||||
|
|
||||||
|
### Compendiums
|
||||||
|
|
||||||
|
14 compendiums organisés en dossiers thématiques :
|
||||||
|
|
||||||
|
| Dossier | Contenu |
|
||||||
|
|---|---|
|
||||||
|
| **Équipements** | armures, objets, équipement, ordinateur, contenants, armes |
|
||||||
|
| **Références** | compétences, maladie/poison/blessure, espèces, talents psioniques, carrières |
|
||||||
|
| **PNJ & Items** | tables PNJ, PNJ, compétences, maladies, espèces, talents, carrières |
|
||||||
|
| **Journaux** | journal psioniques |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📦 Installation
|
||||||
|
|
||||||
|
1. **Copie manuelle** : placer le dossier dans `FoundryVTT/Data/modules/mgt2-compendium-amiral-denisov/`
|
||||||
|
2. **Manifest** : dans FoundryVTT, *Add-on Modules → Install Module* avec l'URL du manifest
|
||||||
|
|
||||||
|
Activer ensuite le module dans la configuration du monde.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎮 Utilisation
|
||||||
|
|
||||||
|
### Commencer une partie
|
||||||
|
|
||||||
|
Tapez une commande dans le chat (ex. `/pnj`) ou utilisez les raccourcis de la barre latérale. Le message d'accueil au lancement rappelle les commandes disponibles.
|
||||||
|
|
||||||
|
### Calendrier impérial
|
||||||
|
|
||||||
|
1. `/cal` (ou auto-ouverture au démarrage)
|
||||||
|
2. Clic sur la roue dentée **⚙** (MJ) pour configurer la date
|
||||||
|
3. Clic sur le crayon **✎** (MJ) pour ajouter une note au journal de bord
|
||||||
|
|
||||||
|
### Paramètres du monde
|
||||||
|
|
||||||
|
Dans *Configuration → Réglages → Module Settings* :
|
||||||
|
|
||||||
|
| Réglage | Description |
|
||||||
|
|---|---|
|
||||||
|
| **Calendrier impérial : auto-ouverture** | Ouvrir automatiquement la fenêtre au démarrage |
|
||||||
|
| **Journal de bord** | Nom du journal utilisé pour les notes de session (créé automatiquement) |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🛠 Développement
|
||||||
|
|
||||||
|
### Structure
|
||||||
|
|
||||||
|
```
|
||||||
|
module.json Manifeste du module (source de vérité pour la version)
|
||||||
|
scripts/
|
||||||
|
data/ Tables de données (NPC, commerce, alliés/ennemis, générateur Traveller)
|
||||||
|
tests/ Tests unitaires (Jest)
|
||||||
|
*.js Logique des outils
|
||||||
|
*.css → styles/ Styles
|
||||||
|
templates/ Templates Handlebars
|
||||||
|
packs/ Compendiums (niveau de base de données)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Prérequis
|
||||||
|
|
||||||
|
- Aucun gestionnaire de paquets, aucun build — JavaScript ESM chargé directement par FoundryVTT
|
||||||
|
- `package.json` créé uniquement pour les tests (`"type": "module"`)
|
||||||
|
|
||||||
|
### Tests
|
||||||
|
|
||||||
|
Deux styles de tests coexistent (pas de configuration Jest, `package.json` n'existe que pour `"type": "module"` + mock FoundryVTT fait main) :
|
||||||
|
|
||||||
|
- **`allyEnemyGenerator.test.js`** — mini-runner maison (`test()`/`assertEqual`), à lancer avec Node directement :
|
||||||
|
|
||||||
|
```sh
|
||||||
|
node scripts/tests/allyEnemyGenerator.test.js # "All N tests passed"
|
||||||
|
```
|
||||||
|
|
||||||
|
- **`travellerNpcGenerator.test.js`** — Jest (`describe`/`it`), à lancer avec le flag ESM :
|
||||||
|
|
||||||
|
```sh
|
||||||
|
NODE_OPTIONS="--experimental-vm-modules" npx jest scripts/tests/travellerNpcGenerator.test.js
|
||||||
|
```
|
||||||
|
|
||||||
|
### Conventions
|
||||||
|
|
||||||
|
- Tout le contenu (libellés, commentaires, messages de commit) est en **français**
|
||||||
|
- Dialogs : `ApplicationV2` + `HandlebarsApplicationMixin`
|
||||||
|
- Compatibilité v13/v14 : certains hooks doivent gérer les API jQuery (v13) et DOM (v14)
|
||||||
|
- Dés à lancer : toujours `await new Roll(formula).evaluate()`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📄 Licence & Crédits
|
||||||
|
|
||||||
|
- Contenu Traveller © Mongoose Publishing — sous licence pour *Mongoose Traveller 2e*
|
||||||
|
- Cartes stellaire via [Traveller Map](https://www.travellermap.com)
|
||||||
|
- Règles de conversion calendaires d'après [Traveller Wiki](https://wiki.travellerrpg.com/Date_Conversion)
|
||||||
|
- Module initié par **JdR.Ninja**
|
||||||
+2
-3
@@ -3,9 +3,8 @@
|
|||||||
"title": "MgT2e - Compendium Amiral Denisov",
|
"title": "MgT2e - Compendium Amiral Denisov",
|
||||||
"version": "1.3.0",
|
"version": "1.3.0",
|
||||||
"compatibility": {
|
"compatibility": {
|
||||||
"minimum": "13",
|
"minimum": "14",
|
||||||
"verified": "13",
|
"verified": "14"
|
||||||
"maximum": "14"
|
|
||||||
},
|
},
|
||||||
"socket": "true",
|
"socket": "true",
|
||||||
"description": "Module de compendium et d'outils Mongoose Traveller 2e pour FoundryVTT écrit par JdR.Ninja.\nInclut les commandes /commerce, /pnj, /rencontre et /mission pour automatiser le commerce, les PNJ rapides, les rencontres et les contrats aléatoires. La fenêtre /pnj inclut un onglet 'PNJ Détaillé' pour la génération de PNJ Traveller selon les règles du générateur officiel, en s'appuyant sur les compétences natives des fiches.",
|
"description": "Module de compendium et d'outils Mongoose Traveller 2e pour FoundryVTT écrit par JdR.Ninja.\nInclut les commandes /commerce, /pnj, /rencontre et /mission pour automatiser le commerce, les PNJ rapides, les rencontres et les contrats aléatoires. La fenêtre /pnj inclut un onglet 'PNJ Détaillé' pour la génération de PNJ Traveller selon les règles du générateur officiel, en s'appuyant sur les compétences natives des fiches.",
|
||||||
|
|||||||
+1
-1
@@ -1 +1 @@
|
|||||||
MANIFEST-000172
|
MANIFEST-000180
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.342427 7fb3977fe6c0 Recovering log #170
|
2026/07/25-16:54:40.235374 7fb397fff6c0 Recovering log #178
|
||||||
2026/07/23-23:13:20.352394 7fb3977fe6c0 Delete type=3 #168
|
2026/07/25-16:54:40.246219 7fb397fff6c0 Delete type=3 #176
|
||||||
2026/07/23-23:13:20.352478 7fb3977fe6c0 Delete type=0 #170
|
2026/07/25-16:54:40.246321 7fb397fff6c0 Delete type=0 #178
|
||||||
2026/07/23-23:28:58.848551 7fb394b4f6c0 Level-0 table #175: started
|
2026/07/25-17:22:36.365586 7fb394b4f6c0 Level-0 table #183: started
|
||||||
2026/07/23-23:28:58.848570 7fb394b4f6c0 Level-0 table #175: 0 bytes OK
|
2026/07/25-17:22:36.365618 7fb394b4f6c0 Level-0 table #183: 0 bytes OK
|
||||||
2026/07/23-23:28:58.855420 7fb394b4f6c0 Delete type=0 #173
|
2026/07/25-17:22:36.372300 7fb394b4f6c0 Delete type=0 #181
|
||||||
2026/07/23-23:28:58.862569 7fb394b4f6c0 Manual compaction at level-0 from '!folders!673DRfEBYUliGnKJ' @ 72057594037927935 : 1 .. '!items!yoIqL0RQEnzNVJB6' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.379902 7fb394b4f6c0 Manual compaction at level-0 from '!folders!673DRfEBYUliGnKJ' @ 72057594037927935 : 1 .. '!items!yoIqL0RQEnzNVJB6' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.876595 7fb394b4f6c0 Manual compaction at level-1 from '!folders!673DRfEBYUliGnKJ' @ 72057594037927935 : 1 .. '!items!yoIqL0RQEnzNVJB6' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.380052 7fb394b4f6c0 Manual compaction at level-1 from '!folders!673DRfEBYUliGnKJ' @ 72057594037927935 : 1 .. '!items!yoIqL0RQEnzNVJB6' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:54.209328 7f050a7fc6c0 Recovering log #166
|
2026/07/25-16:21:45.460294 7fb3977fe6c0 Recovering log #174
|
||||||
2026/07/09-07:47:54.260960 7f050a7fc6c0 Delete type=3 #164
|
2026/07/25-16:21:45.470482 7fb3977fe6c0 Delete type=3 #172
|
||||||
2026/07/09-07:47:54.261047 7f050a7fc6c0 Delete type=0 #166
|
2026/07/25-16:21:45.470569 7fb3977fe6c0 Delete type=0 #174
|
||||||
2026/07/09-07:48:38.285484 7f0509bff6c0 Level-0 table #171: started
|
2026/07/25-16:34:16.350463 7fb394b4f6c0 Level-0 table #179: started
|
||||||
2026/07/09-07:48:38.285523 7f0509bff6c0 Level-0 table #171: 0 bytes OK
|
2026/07/25-16:34:16.350531 7fb394b4f6c0 Level-0 table #179: 0 bytes OK
|
||||||
2026/07/09-07:48:38.322960 7f0509bff6c0 Delete type=0 #169
|
2026/07/25-16:34:16.357551 7fb394b4f6c0 Delete type=0 #177
|
||||||
2026/07/09-07:48:38.360389 7f0509bff6c0 Manual compaction at level-0 from '!folders!673DRfEBYUliGnKJ' @ 72057594037927935 : 1 .. '!items!yoIqL0RQEnzNVJB6' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.510151 7fb394b4f6c0 Manual compaction at level-0 from '!folders!673DRfEBYUliGnKJ' @ 72057594037927935 : 1 .. '!items!yoIqL0RQEnzNVJB6' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.398070 7f0509bff6c0 Manual compaction at level-1 from '!folders!673DRfEBYUliGnKJ' @ 72057594037927935 : 1 .. '!items!yoIqL0RQEnzNVJB6' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.680246 7fb394b4f6c0 Manual compaction at level-1 from '!folders!673DRfEBYUliGnKJ' @ 72057594037927935 : 1 .. '!items!yoIqL0RQEnzNVJB6' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000271
|
MANIFEST-000279
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.211553 7fb3977fe6c0 Recovering log #269
|
2026/07/25-16:54:40.104032 7fb3e4fff6c0 Recovering log #277
|
||||||
2026/07/23-23:13:20.223303 7fb3977fe6c0 Delete type=3 #267
|
2026/07/25-16:54:40.114576 7fb3e4fff6c0 Delete type=3 #275
|
||||||
2026/07/23-23:13:20.223383 7fb3977fe6c0 Delete type=0 #269
|
2026/07/25-16:54:40.114680 7fb3e4fff6c0 Delete type=0 #277
|
||||||
2026/07/23-23:28:58.785832 7fb394b4f6c0 Level-0 table #274: started
|
2026/07/25-17:22:36.288710 7fb394b4f6c0 Level-0 table #282: started
|
||||||
2026/07/23-23:28:58.785870 7fb394b4f6c0 Level-0 table #274: 0 bytes OK
|
2026/07/25-17:22:36.288757 7fb394b4f6c0 Level-0 table #282: 0 bytes OK
|
||||||
2026/07/23-23:28:58.792980 7fb394b4f6c0 Delete type=0 #272
|
2026/07/25-17:22:36.295586 7fb394b4f6c0 Delete type=0 #280
|
||||||
2026/07/23-23:28:58.799738 7fb394b4f6c0 Manual compaction at level-0 from '!items!8xqChkoKK7i0c9M1' @ 72057594037927935 : 1 .. '!items!wpBopoosZiWXjlKD' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.302495 7fb394b4f6c0 Manual compaction at level-0 from '!items!8xqChkoKK7i0c9M1' @ 72057594037927935 : 1 .. '!items!wpBopoosZiWXjlKD' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.799884 7fb394b4f6c0 Manual compaction at level-1 from '!items!8xqChkoKK7i0c9M1' @ 72057594037927935 : 1 .. '!items!wpBopoosZiWXjlKD' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.302790 7fb394b4f6c0 Manual compaction at level-1 from '!items!8xqChkoKK7i0c9M1' @ 72057594037927935 : 1 .. '!items!wpBopoosZiWXjlKD' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:53.705532 7f050a7fc6c0 Recovering log #265
|
2026/07/25-16:21:45.335501 7fb397fff6c0 Recovering log #273
|
||||||
2026/07/09-07:47:53.770870 7f050a7fc6c0 Delete type=3 #263
|
2026/07/25-16:21:45.346461 7fb397fff6c0 Delete type=3 #271
|
||||||
2026/07/09-07:47:53.770946 7f050a7fc6c0 Delete type=0 #265
|
2026/07/25-16:21:45.346548 7fb397fff6c0 Delete type=0 #273
|
||||||
2026/07/09-07:48:37.982535 7f0509bff6c0 Level-0 table #270: started
|
2026/07/25-16:34:16.287513 7fb394b4f6c0 Level-0 table #278: started
|
||||||
2026/07/09-07:48:37.982591 7f0509bff6c0 Level-0 table #270: 0 bytes OK
|
2026/07/25-16:34:16.287557 7fb394b4f6c0 Level-0 table #278: 0 bytes OK
|
||||||
2026/07/09-07:48:38.024733 7f0509bff6c0 Delete type=0 #268
|
2026/07/25-16:34:16.294033 7fb394b4f6c0 Delete type=0 #276
|
||||||
2026/07/09-07:48:38.059906 7f0509bff6c0 Manual compaction at level-0 from '!items!8xqChkoKK7i0c9M1' @ 72057594037927935 : 1 .. '!items!wpBopoosZiWXjlKD' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.294225 7fb394b4f6c0 Manual compaction at level-0 from '!items!8xqChkoKK7i0c9M1' @ 72057594037927935 : 1 .. '!items!wpBopoosZiWXjlKD' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.060367 7f0509bff6c0 Manual compaction at level-1 from '!items!8xqChkoKK7i0c9M1' @ 72057594037927935 : 1 .. '!items!wpBopoosZiWXjlKD' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.301494 7fb394b4f6c0 Manual compaction at level-1 from '!items!8xqChkoKK7i0c9M1' @ 72057594037927935 : 1 .. '!items!wpBopoosZiWXjlKD' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000155
|
MANIFEST-000163
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.371043 7fb397fff6c0 Recovering log #153
|
2026/07/25-16:54:40.265755 7fb397fff6c0 Recovering log #161
|
||||||
2026/07/23-23:13:20.382506 7fb397fff6c0 Delete type=3 #151
|
2026/07/25-16:54:40.276688 7fb397fff6c0 Delete type=3 #159
|
||||||
2026/07/23-23:13:20.382608 7fb397fff6c0 Delete type=0 #153
|
2026/07/25-16:54:40.276786 7fb397fff6c0 Delete type=0 #161
|
||||||
2026/07/23-23:28:58.862587 7fb394b4f6c0 Level-0 table #158: started
|
2026/07/25-17:22:36.380101 7fb394b4f6c0 Level-0 table #166: started
|
||||||
2026/07/23-23:28:58.862604 7fb394b4f6c0 Level-0 table #158: 0 bytes OK
|
2026/07/25-17:22:36.380168 7fb394b4f6c0 Level-0 table #166: 0 bytes OK
|
||||||
2026/07/23-23:28:58.869670 7fb394b4f6c0 Delete type=0 #156
|
2026/07/25-17:22:36.386681 7fb394b4f6c0 Delete type=0 #164
|
||||||
2026/07/23-23:28:58.876613 7fb394b4f6c0 Manual compaction at level-0 from '!items!57vgsVVCy9MRKM2M' @ 72057594037927935 : 1 .. '!items!vJInnoigCTJzuY2S' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.535741 7fb394b4f6c0 Manual compaction at level-0 from '!items!57vgsVVCy9MRKM2M' @ 72057594037927935 : 1 .. '!items!vJInnoigCTJzuY2S' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.876906 7fb394b4f6c0 Manual compaction at level-1 from '!items!57vgsVVCy9MRKM2M' @ 72057594037927935 : 1 .. '!items!vJInnoigCTJzuY2S' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.806569 7fb394b4f6c0 Manual compaction at level-1 from '!items!57vgsVVCy9MRKM2M' @ 72057594037927935 : 1 .. '!items!vJInnoigCTJzuY2S' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:54.321155 7f050a7fc6c0 Recovering log #149
|
2026/07/25-16:21:45.488403 7fb397fff6c0 Recovering log #157
|
||||||
2026/07/09-07:47:54.377672 7f050a7fc6c0 Delete type=3 #147
|
2026/07/25-16:21:45.499075 7fb397fff6c0 Delete type=3 #155
|
||||||
2026/07/09-07:47:54.377740 7f050a7fc6c0 Delete type=0 #149
|
2026/07/25-16:21:45.499160 7fb397fff6c0 Delete type=0 #157
|
||||||
2026/07/09-07:48:38.398090 7f0509bff6c0 Level-0 table #154: started
|
2026/07/25-16:34:16.357718 7fb394b4f6c0 Level-0 table #162: started
|
||||||
2026/07/09-07:48:38.398123 7f0509bff6c0 Level-0 table #154: 0 bytes OK
|
2026/07/25-16:34:16.357749 7fb394b4f6c0 Level-0 table #162: 0 bytes OK
|
||||||
2026/07/09-07:48:38.434275 7f0509bff6c0 Delete type=0 #152
|
2026/07/25-16:34:16.364285 7fb394b4f6c0 Delete type=0 #160
|
||||||
2026/07/09-07:48:38.666470 7f0509bff6c0 Manual compaction at level-0 from '!items!57vgsVVCy9MRKM2M' @ 72057594037927935 : 1 .. '!items!vJInnoigCTJzuY2S' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.510175 7fb394b4f6c0 Manual compaction at level-0 from '!items!57vgsVVCy9MRKM2M' @ 72057594037927935 : 1 .. '!items!vJInnoigCTJzuY2S' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.666636 7f0509bff6c0 Manual compaction at level-1 from '!items!57vgsVVCy9MRKM2M' @ 72057594037927935 : 1 .. '!items!vJInnoigCTJzuY2S' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.680277 7fb394b4f6c0 Manual compaction at level-1 from '!items!57vgsVVCy9MRKM2M' @ 72057594037927935 : 1 .. '!items!vJInnoigCTJzuY2S' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000274
|
MANIFEST-000282
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.226719 7fb397fff6c0 Recovering log #272
|
2026/07/25-16:54:40.118657 7fb3977fe6c0 Recovering log #280
|
||||||
2026/07/23-23:13:20.237906 7fb397fff6c0 Delete type=3 #270
|
2026/07/25-16:54:40.129567 7fb3977fe6c0 Delete type=3 #278
|
||||||
2026/07/23-23:13:20.238024 7fb397fff6c0 Delete type=0 #272
|
2026/07/25-16:54:40.129662 7fb3977fe6c0 Delete type=0 #280
|
||||||
2026/07/23-23:28:58.793098 7fb394b4f6c0 Level-0 table #277: started
|
2026/07/25-17:22:36.295712 7fb394b4f6c0 Level-0 table #285: started
|
||||||
2026/07/23-23:28:58.793122 7fb394b4f6c0 Level-0 table #277: 0 bytes OK
|
2026/07/25-17:22:36.295740 7fb394b4f6c0 Level-0 table #285: 0 bytes OK
|
||||||
2026/07/23-23:28:58.799598 7fb394b4f6c0 Delete type=0 #275
|
2026/07/25-17:22:36.302356 7fb394b4f6c0 Delete type=0 #283
|
||||||
2026/07/23-23:28:58.799893 7fb394b4f6c0 Manual compaction at level-0 from '!items!04MdBSzwkYWUMJBC' @ 72057594037927935 : 1 .. '!items!yqjKyTCgpclCuHyK' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.302757 7fb394b4f6c0 Manual compaction at level-0 from '!items!04MdBSzwkYWUMJBC' @ 72057594037927935 : 1 .. '!items!yqjKyTCgpclCuHyK' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.799917 7fb394b4f6c0 Manual compaction at level-1 from '!items!04MdBSzwkYWUMJBC' @ 72057594037927935 : 1 .. '!items!yqjKyTCgpclCuHyK' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.317403 7fb394b4f6c0 Manual compaction at level-1 from '!items!04MdBSzwkYWUMJBC' @ 72057594037927935 : 1 .. '!items!yqjKyTCgpclCuHyK' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:53.773960 7f050b7fe6c0 Recovering log #268
|
2026/07/25-16:21:45.349559 7fb396ffd6c0 Recovering log #276
|
||||||
2026/07/09-07:47:53.821289 7f050b7fe6c0 Delete type=3 #266
|
2026/07/25-16:21:45.359598 7fb396ffd6c0 Delete type=3 #274
|
||||||
2026/07/09-07:47:53.821386 7f050b7fe6c0 Delete type=0 #268
|
2026/07/25-16:21:45.359698 7fb396ffd6c0 Delete type=0 #276
|
||||||
2026/07/09-07:48:38.024951 7f0509bff6c0 Level-0 table #273: started
|
2026/07/25-16:34:16.308405 7fb394b4f6c0 Level-0 table #281: started
|
||||||
2026/07/09-07:48:38.024989 7f0509bff6c0 Level-0 table #273: 0 bytes OK
|
2026/07/25-16:34:16.308432 7fb394b4f6c0 Level-0 table #281: 0 bytes OK
|
||||||
2026/07/09-07:48:38.059685 7f0509bff6c0 Delete type=0 #271
|
2026/07/25-16:34:16.316009 7fb394b4f6c0 Delete type=0 #279
|
||||||
2026/07/09-07:48:38.059971 7f0509bff6c0 Manual compaction at level-0 from '!items!04MdBSzwkYWUMJBC' @ 72057594037927935 : 1 .. '!items!yqjKyTCgpclCuHyK' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.322893 7fb394b4f6c0 Manual compaction at level-0 from '!items!04MdBSzwkYWUMJBC' @ 72057594037927935 : 1 .. '!items!yqjKyTCgpclCuHyK' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.060328 7f0509bff6c0 Manual compaction at level-1 from '!items!04MdBSzwkYWUMJBC' @ 72057594037927935 : 1 .. '!items!yqjKyTCgpclCuHyK' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.323046 7fb394b4f6c0 Manual compaction at level-1 from '!items!04MdBSzwkYWUMJBC' @ 72057594037927935 : 1 .. '!items!yqjKyTCgpclCuHyK' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000208
|
MANIFEST-000216
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/07/23-23:13:20.299129 7fb3977fe6c0 Recovering log #206
|
2026/07/25-16:54:40.192611 7fb3e4fff6c0 Recovering log #214
|
||||||
2026/07/23-23:13:20.309987 7fb3977fe6c0 Delete type=3 #204
|
2026/07/25-16:54:40.203144 7fb3e4fff6c0 Delete type=3 #212
|
||||||
2026/07/23-23:13:20.310082 7fb3977fe6c0 Delete type=0 #206
|
2026/07/25-16:54:40.203218 7fb3e4fff6c0 Delete type=0 #214
|
||||||
2026/07/23-23:28:58.827990 7fb394b4f6c0 Level-0 table #211: started
|
2026/07/25-17:22:36.334207 7fb394b4f6c0 Level-0 table #219: started
|
||||||
2026/07/23-23:28:58.828009 7fb394b4f6c0 Level-0 table #211: 0 bytes OK
|
2026/07/25-17:22:36.334237 7fb394b4f6c0 Level-0 table #219: 0 bytes OK
|
||||||
2026/07/23-23:28:58.834717 7fb394b4f6c0 Delete type=0 #209
|
2026/07/25-17:22:36.344490 7fb394b4f6c0 Delete type=0 #217
|
||||||
2026/07/23-23:28:58.848539 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.358562 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/07/09-07:47:54.050067 7f050b7fe6c0 Recovering log #202
|
2026/07/25-16:21:45.418689 7fb397fff6c0 Recovering log #210
|
||||||
2026/07/09-07:47:54.099565 7f050b7fe6c0 Delete type=3 #200
|
2026/07/25-16:21:45.429568 7fb397fff6c0 Delete type=3 #208
|
||||||
2026/07/09-07:47:54.099699 7f050b7fe6c0 Delete type=0 #202
|
2026/07/25-16:21:45.429651 7fb397fff6c0 Delete type=0 #210
|
||||||
2026/07/09-07:48:38.167794 7f0509bff6c0 Level-0 table #207: started
|
2026/07/25-16:34:16.329833 7fb394b4f6c0 Level-0 table #215: started
|
||||||
2026/07/09-07:48:38.167822 7f0509bff6c0 Level-0 table #207: 0 bytes OK
|
2026/07/25-16:34:16.329859 7fb394b4f6c0 Level-0 table #215: 0 bytes OK
|
||||||
2026/07/09-07:48:38.205849 7f0509bff6c0 Delete type=0 #205
|
2026/07/25-16:34:16.336695 7fb394b4f6c0 Delete type=0 #213
|
||||||
2026/07/09-07:48:38.206313 7f0509bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.350122 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000216
|
MANIFEST-000224
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.270613 7fb3977fe6c0 Recovering log #214
|
2026/07/25-16:54:40.162927 7fb3e4fff6c0 Recovering log #222
|
||||||
2026/07/23-23:13:20.281127 7fb3977fe6c0 Delete type=3 #212
|
2026/07/25-16:54:40.173541 7fb3e4fff6c0 Delete type=3 #220
|
||||||
2026/07/23-23:13:20.281195 7fb3977fe6c0 Delete type=0 #214
|
2026/07/25-16:54:40.173643 7fb3e4fff6c0 Delete type=0 #222
|
||||||
2026/07/23-23:28:58.814280 7fb394b4f6c0 Level-0 table #219: started
|
2026/07/25-17:22:36.324212 7fb394b4f6c0 Level-0 table #227: started
|
||||||
2026/07/23-23:28:58.814303 7fb394b4f6c0 Level-0 table #219: 0 bytes OK
|
2026/07/25-17:22:36.324245 7fb394b4f6c0 Level-0 table #227: 0 bytes OK
|
||||||
2026/07/23-23:28:58.820924 7fb394b4f6c0 Delete type=0 #217
|
2026/07/25-17:22:36.333994 7fb394b4f6c0 Delete type=0 #225
|
||||||
2026/07/23-23:28:58.827855 7fb394b4f6c0 Manual compaction at level-0 from '!folders!8swFcTr6RH7BnGiu' @ 72057594037927935 : 1 .. '!items!zRJfxioYBRq4iSBR' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.358543 7fb394b4f6c0 Manual compaction at level-0 from '!folders!8swFcTr6RH7BnGiu' @ 72057594037927935 : 1 .. '!items!zRJfxioYBRq4iSBR' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.834845 7fb394b4f6c0 Manual compaction at level-1 from '!folders!8swFcTr6RH7BnGiu' @ 72057594037927935 : 1 .. '!items!zRJfxioYBRq4iSBR' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.358932 7fb394b4f6c0 Manual compaction at level-1 from '!folders!8swFcTr6RH7BnGiu' @ 72057594037927935 : 1 .. '!items!zRJfxioYBRq4iSBR' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:53.935957 7f050b7fe6c0 Recovering log #210
|
2026/07/25-16:21:45.391004 7fb397fff6c0 Recovering log #218
|
||||||
2026/07/09-07:47:53.985176 7f050b7fe6c0 Delete type=3 #208
|
2026/07/25-16:21:45.401154 7fb397fff6c0 Delete type=3 #216
|
||||||
2026/07/09-07:47:53.985278 7f050b7fe6c0 Delete type=0 #210
|
2026/07/25-16:21:45.401258 7fb397fff6c0 Delete type=0 #218
|
||||||
2026/07/09-07:48:38.131413 7f0509bff6c0 Level-0 table #215: started
|
2026/07/25-16:34:16.316171 7fb394b4f6c0 Level-0 table #223: started
|
||||||
2026/07/09-07:48:38.131448 7f0509bff6c0 Level-0 table #215: 0 bytes OK
|
2026/07/25-16:34:16.316199 7fb394b4f6c0 Level-0 table #223: 0 bytes OK
|
||||||
2026/07/09-07:48:38.167610 7f0509bff6c0 Delete type=0 #213
|
2026/07/25-16:34:16.322746 7fb394b4f6c0 Delete type=0 #221
|
||||||
2026/07/09-07:48:38.206192 7f0509bff6c0 Manual compaction at level-0 from '!folders!8swFcTr6RH7BnGiu' @ 72057594037927935 : 1 .. '!items!zRJfxioYBRq4iSBR' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.323022 7fb394b4f6c0 Manual compaction at level-0 from '!folders!8swFcTr6RH7BnGiu' @ 72057594037927935 : 1 .. '!items!zRJfxioYBRq4iSBR' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.206346 7f0509bff6c0 Manual compaction at level-1 from '!folders!8swFcTr6RH7BnGiu' @ 72057594037927935 : 1 .. '!items!zRJfxioYBRq4iSBR' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.329820 7fb394b4f6c0 Manual compaction at level-1 from '!folders!8swFcTr6RH7BnGiu' @ 72057594037927935 : 1 .. '!items!zRJfxioYBRq4iSBR' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000208
|
MANIFEST-000216
|
||||||
|
|||||||
+7
-7
@@ -1,7 +1,7 @@
|
|||||||
2026/07/23-23:13:20.312789 7fb3e4fff6c0 Recovering log #206
|
2026/07/25-16:54:40.207018 7fb396ffd6c0 Recovering log #214
|
||||||
2026/07/23-23:13:20.323973 7fb3e4fff6c0 Delete type=3 #204
|
2026/07/25-16:54:40.218111 7fb396ffd6c0 Delete type=3 #212
|
||||||
2026/07/23-23:13:20.324072 7fb3e4fff6c0 Delete type=0 #206
|
2026/07/25-16:54:40.218206 7fb396ffd6c0 Delete type=0 #214
|
||||||
2026/07/23-23:28:58.834856 7fb394b4f6c0 Level-0 table #211: started
|
2026/07/25-17:22:36.344663 7fb394b4f6c0 Level-0 table #219: started
|
||||||
2026/07/23-23:28:58.834878 7fb394b4f6c0 Level-0 table #211: 0 bytes OK
|
2026/07/25-17:22:36.344695 7fb394b4f6c0 Level-0 table #219: 0 bytes OK
|
||||||
2026/07/23-23:28:58.840987 7fb394b4f6c0 Delete type=0 #209
|
2026/07/25-17:22:36.351019 7fb394b4f6c0 Delete type=0 #217
|
||||||
2026/07/23-23:28:58.855551 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.358578 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2026/07/09-07:47:54.102814 7f050affd6c0 Recovering log #202
|
2026/07/25-16:21:45.432370 7fb3e4fff6c0 Recovering log #210
|
||||||
2026/07/09-07:47:54.154259 7f050affd6c0 Delete type=3 #200
|
2026/07/25-16:21:45.442645 7fb3e4fff6c0 Delete type=3 #208
|
||||||
2026/07/09-07:47:54.154356 7f050affd6c0 Delete type=0 #202
|
2026/07/25-16:21:45.442704 7fb3e4fff6c0 Delete type=0 #210
|
||||||
2026/07/09-07:48:38.323204 7f0509bff6c0 Level-0 table #207: started
|
2026/07/25-16:34:16.336838 7fb394b4f6c0 Level-0 table #215: started
|
||||||
2026/07/09-07:48:38.323240 7f0509bff6c0 Level-0 table #207: 0 bytes OK
|
2026/07/25-16:34:16.336867 7fb394b4f6c0 Level-0 table #215: 0 bytes OK
|
||||||
2026/07/09-07:48:38.360093 7f0509bff6c0 Delete type=0 #205
|
2026/07/25-16:34:16.343246 7fb394b4f6c0 Delete type=0 #213
|
||||||
2026/07/09-07:48:38.360539 7f0509bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.350151 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000189
|
MANIFEST-000197
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.327415 7fb396ffd6c0 Recovering log #187
|
2026/07/25-16:54:40.221457 7fb3e4fff6c0 Recovering log #195
|
||||||
2026/07/23-23:13:20.338557 7fb396ffd6c0 Delete type=3 #185
|
2026/07/25-16:54:40.231541 7fb3e4fff6c0 Delete type=3 #193
|
||||||
2026/07/23-23:13:20.338661 7fb396ffd6c0 Delete type=0 #187
|
2026/07/25-16:54:40.231630 7fb3e4fff6c0 Delete type=0 #195
|
||||||
2026/07/23-23:28:58.841114 7fb394b4f6c0 Level-0 table #192: started
|
2026/07/25-17:22:36.358974 7fb394b4f6c0 Level-0 table #200: started
|
||||||
2026/07/23-23:28:58.841135 7fb394b4f6c0 Level-0 table #192: 0 bytes OK
|
2026/07/25-17:22:36.359013 7fb394b4f6c0 Level-0 table #200: 0 bytes OK
|
||||||
2026/07/23-23:28:58.848420 7fb394b4f6c0 Delete type=0 #190
|
2026/07/25-17:22:36.365407 7fb394b4f6c0 Delete type=0 #198
|
||||||
2026/07/23-23:28:58.855565 7fb394b4f6c0 Manual compaction at level-0 from '!journal!26ZqV9BvS47hrLmV' @ 72057594037927935 : 1 .. '!journal.pages!26ZqV9BvS47hrLmV.ZS4936SEQUT9IA8i' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.379885 7fb394b4f6c0 Manual compaction at level-0 from '!journal!26ZqV9BvS47hrLmV' @ 72057594037927935 : 1 .. '!journal.pages!26ZqV9BvS47hrLmV.ZS4936SEQUT9IA8i' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.862579 7fb394b4f6c0 Manual compaction at level-1 from '!journal!26ZqV9BvS47hrLmV' @ 72057594037927935 : 1 .. '!journal.pages!26ZqV9BvS47hrLmV.ZS4936SEQUT9IA8i' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.380062 7fb394b4f6c0 Manual compaction at level-1 from '!journal!26ZqV9BvS47hrLmV' @ 72057594037927935 : 1 .. '!journal.pages!26ZqV9BvS47hrLmV.ZS4936SEQUT9IA8i' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:54.157744 7f050b7fe6c0 Recovering log #183
|
2026/07/25-16:21:45.445936 7fb397fff6c0 Recovering log #191
|
||||||
2026/07/09-07:47:54.205288 7f050b7fe6c0 Delete type=3 #181
|
2026/07/25-16:21:45.456628 7fb397fff6c0 Delete type=3 #189
|
||||||
2026/07/09-07:47:54.205375 7f050b7fe6c0 Delete type=0 #183
|
2026/07/25-16:21:45.456706 7fb397fff6c0 Delete type=0 #191
|
||||||
2026/07/09-07:48:38.206467 7f0509bff6c0 Level-0 table #188: started
|
2026/07/25-16:34:16.343456 7fb394b4f6c0 Level-0 table #196: started
|
||||||
2026/07/09-07:48:38.206514 7f0509bff6c0 Level-0 table #188: 0 bytes OK
|
2026/07/25-16:34:16.343486 7fb394b4f6c0 Level-0 table #196: 0 bytes OK
|
||||||
2026/07/09-07:48:38.247875 7f0509bff6c0 Delete type=0 #186
|
2026/07/25-16:34:16.349952 7fb394b4f6c0 Delete type=0 #194
|
||||||
2026/07/09-07:48:38.360346 7f0509bff6c0 Manual compaction at level-0 from '!journal!26ZqV9BvS47hrLmV' @ 72057594037927935 : 1 .. '!journal.pages!26ZqV9BvS47hrLmV.ZS4936SEQUT9IA8i' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.350230 7fb394b4f6c0 Manual compaction at level-0 from '!journal!26ZqV9BvS47hrLmV' @ 72057594037927935 : 1 .. '!journal.pages!26ZqV9BvS47hrLmV.ZS4936SEQUT9IA8i' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.360529 7f0509bff6c0 Manual compaction at level-1 from '!journal!26ZqV9BvS47hrLmV' @ 72057594037927935 : 1 .. '!journal.pages!26ZqV9BvS47hrLmV.ZS4936SEQUT9IA8i' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.350280 7fb394b4f6c0 Manual compaction at level-1 from '!journal!26ZqV9BvS47hrLmV' @ 72057594037927935 : 1 .. '!journal.pages!26ZqV9BvS47hrLmV.ZS4936SEQUT9IA8i' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000216
|
MANIFEST-000224
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.241560 7fb3977fe6c0 Recovering log #214
|
2026/07/25-16:54:40.134268 7fb3e4fff6c0 Recovering log #222
|
||||||
2026/07/23-23:13:20.252073 7fb3977fe6c0 Delete type=3 #212
|
2026/07/25-16:54:40.144763 7fb3e4fff6c0 Delete type=3 #220
|
||||||
2026/07/23-23:13:20.252157 7fb3977fe6c0 Delete type=0 #214
|
2026/07/25-16:54:40.144868 7fb3e4fff6c0 Delete type=0 #222
|
||||||
2026/07/23-23:28:58.800005 7fb394b4f6c0 Level-0 table #219: started
|
2026/07/25-17:22:36.302800 7fb394b4f6c0 Level-0 table #227: started
|
||||||
2026/07/23-23:28:58.800025 7fb394b4f6c0 Level-0 table #219: 0 bytes OK
|
2026/07/25-17:22:36.302838 7fb394b4f6c0 Level-0 table #227: 0 bytes OK
|
||||||
2026/07/23-23:28:58.806410 7fb394b4f6c0 Delete type=0 #217
|
2026/07/25-17:22:36.309558 7fb394b4f6c0 Delete type=0 #225
|
||||||
2026/07/23-23:28:58.827830 7fb394b4f6c0 Manual compaction at level-0 from '!items!QHovFMj93BC7bqBu' @ 72057594037927935 : 1 .. '!items!yleVHgRqGoYLvzxT' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.324180 7fb394b4f6c0 Manual compaction at level-0 from '!items!QHovFMj93BC7bqBu' @ 72057594037927935 : 1 .. '!items!yleVHgRqGoYLvzxT' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.827948 7fb394b4f6c0 Manual compaction at level-1 from '!items!QHovFMj93BC7bqBu' @ 72057594037927935 : 1 .. '!items!yleVHgRqGoYLvzxT' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.334192 7fb394b4f6c0 Manual compaction at level-1 from '!items!QHovFMj93BC7bqBu' @ 72057594037927935 : 1 .. '!items!yleVHgRqGoYLvzxT' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:53.824918 7f050bfff6c0 Recovering log #210
|
2026/07/25-16:21:45.362950 7fb397fff6c0 Recovering log #218
|
||||||
2026/07/09-07:47:53.877561 7f050bfff6c0 Delete type=3 #208
|
2026/07/25-16:21:45.374396 7fb397fff6c0 Delete type=3 #216
|
||||||
2026/07/09-07:47:53.877656 7f050bfff6c0 Delete type=0 #210
|
2026/07/25-16:21:45.374487 7fb397fff6c0 Delete type=0 #218
|
||||||
2026/07/09-07:48:38.060381 7f0509bff6c0 Level-0 table #215: started
|
2026/07/25-16:34:16.294555 7fb394b4f6c0 Level-0 table #223: started
|
||||||
2026/07/09-07:48:38.060435 7f0509bff6c0 Level-0 table #215: 0 bytes OK
|
2026/07/25-16:34:16.294610 7fb394b4f6c0 Level-0 table #223: 0 bytes OK
|
||||||
2026/07/09-07:48:38.094447 7f0509bff6c0 Delete type=0 #213
|
2026/07/25-16:34:16.301357 7fb394b4f6c0 Delete type=0 #221
|
||||||
2026/07/09-07:48:38.206140 7f0509bff6c0 Manual compaction at level-0 from '!items!QHovFMj93BC7bqBu' @ 72057594037927935 : 1 .. '!items!yleVHgRqGoYLvzxT' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.316155 7fb394b4f6c0 Manual compaction at level-0 from '!items!QHovFMj93BC7bqBu' @ 72057594037927935 : 1 .. '!items!yleVHgRqGoYLvzxT' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.206298 7f0509bff6c0 Manual compaction at level-1 from '!items!QHovFMj93BC7bqBu' @ 72057594037927935 : 1 .. '!items!yleVHgRqGoYLvzxT' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.322906 7fb394b4f6c0 Manual compaction at level-1 from '!items!QHovFMj93BC7bqBu' @ 72057594037927935 : 1 .. '!items!yleVHgRqGoYLvzxT' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
BIN
Binary file not shown.
+1
-1
@@ -1 +1 @@
|
|||||||
MANIFEST-000208
|
MANIFEST-000216
|
||||||
|
|||||||
+7
-7
@@ -1,7 +1,7 @@
|
|||||||
2026/07/23-23:13:20.255880 7fb397fff6c0 Recovering log #206
|
2026/07/25-16:54:40.148506 7fb3977fe6c0 Recovering log #214
|
||||||
2026/07/23-23:13:20.267231 7fb397fff6c0 Delete type=3 #204
|
2026/07/25-16:54:40.159742 7fb3977fe6c0 Delete type=3 #212
|
||||||
2026/07/23-23:13:20.267325 7fb397fff6c0 Delete type=0 #206
|
2026/07/25-16:54:40.159842 7fb3977fe6c0 Delete type=0 #214
|
||||||
2026/07/23-23:28:58.806539 7fb394b4f6c0 Level-0 table #211: started
|
2026/07/25-17:22:36.317424 7fb394b4f6c0 Level-0 table #219: started
|
||||||
2026/07/23-23:28:58.806563 7fb394b4f6c0 Level-0 table #211: 0 bytes OK
|
2026/07/25-17:22:36.317453 7fb394b4f6c0 Level-0 table #219: 0 bytes OK
|
||||||
2026/07/23-23:28:58.814154 7fb394b4f6c0 Delete type=0 #209
|
2026/07/25-17:22:36.324008 7fb394b4f6c0 Delete type=0 #217
|
||||||
2026/07/23-23:28:58.827845 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.334172 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
+7
-7
@@ -1,7 +1,7 @@
|
|||||||
2026/07/09-07:47:53.881056 7f050affd6c0 Recovering log #202
|
2026/07/25-16:21:45.377631 7fb3e4fff6c0 Recovering log #210
|
||||||
2026/07/09-07:47:53.932822 7f050affd6c0 Delete type=3 #200
|
2026/07/25-16:21:45.388254 7fb3e4fff6c0 Delete type=3 #208
|
||||||
2026/07/09-07:47:53.932920 7f050affd6c0 Delete type=0 #202
|
2026/07/25-16:21:45.388347 7fb3e4fff6c0 Delete type=0 #210
|
||||||
2026/07/09-07:48:38.094630 7f0509bff6c0 Level-0 table #207: started
|
2026/07/25-16:34:16.301508 7fb394b4f6c0 Level-0 table #215: started
|
||||||
2026/07/09-07:48:38.094656 7f0509bff6c0 Level-0 table #207: 0 bytes OK
|
2026/07/25-16:34:16.301533 7fb394b4f6c0 Level-0 table #215: 0 bytes OK
|
||||||
2026/07/09-07:48:38.131201 7f0509bff6c0 Delete type=0 #205
|
2026/07/25-16:34:16.308270 7fb394b4f6c0 Delete type=0 #213
|
||||||
2026/07/09-07:48:38.206170 7f0509bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.322878 7fb394b4f6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000216
|
MANIFEST-000224
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.284848 7fb3e4fff6c0 Recovering log #214
|
2026/07/25-16:54:40.177967 7fb397fff6c0 Recovering log #222
|
||||||
2026/07/23-23:13:20.295603 7fb3e4fff6c0 Delete type=3 #212
|
2026/07/25-16:54:40.189174 7fb397fff6c0 Delete type=3 #220
|
||||||
2026/07/23-23:13:20.295699 7fb3e4fff6c0 Delete type=0 #214
|
2026/07/25-16:54:40.189264 7fb397fff6c0 Delete type=0 #222
|
||||||
2026/07/23-23:28:58.821039 7fb394b4f6c0 Level-0 table #219: started
|
2026/07/25-17:22:36.351191 7fb394b4f6c0 Level-0 table #227: started
|
||||||
2026/07/23-23:28:58.821061 7fb394b4f6c0 Level-0 table #219: 0 bytes OK
|
2026/07/25-17:22:36.351222 7fb394b4f6c0 Level-0 table #227: 0 bytes OK
|
||||||
2026/07/23-23:28:58.827699 7fb394b4f6c0 Delete type=0 #217
|
2026/07/25-17:22:36.358358 7fb394b4f6c0 Delete type=0 #225
|
||||||
2026/07/23-23:28:58.827863 7fb394b4f6c0 Manual compaction at level-0 from '!folders!qrqRBmTP6UuS30DF' @ 72057594037927935 : 1 .. '!items!yFvuDyV00NdojxGt' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.358960 7fb394b4f6c0 Manual compaction at level-0 from '!folders!qrqRBmTP6UuS30DF' @ 72057594037927935 : 1 .. '!items!yFvuDyV00NdojxGt' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.827882 7fb394b4f6c0 Manual compaction at level-1 from '!folders!qrqRBmTP6UuS30DF' @ 72057594037927935 : 1 .. '!items!yFvuDyV00NdojxGt' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.379865 7fb394b4f6c0 Manual compaction at level-1 from '!folders!qrqRBmTP6UuS30DF' @ 72057594037927935 : 1 .. '!items!yFvuDyV00NdojxGt' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:53.990492 7f050affd6c0 Recovering log #210
|
2026/07/25-16:21:45.404647 7fb3e4fff6c0 Recovering log #218
|
||||||
2026/07/09-07:47:54.046515 7f050affd6c0 Delete type=3 #208
|
2026/07/25-16:21:45.415371 7fb3e4fff6c0 Delete type=3 #216
|
||||||
2026/07/09-07:47:54.046608 7f050affd6c0 Delete type=0 #210
|
2026/07/25-16:21:45.415456 7fb3e4fff6c0 Delete type=0 #218
|
||||||
2026/07/09-07:48:38.248094 7f0509bff6c0 Level-0 table #215: started
|
2026/07/25-16:34:16.323056 7fb394b4f6c0 Level-0 table #223: started
|
||||||
2026/07/09-07:48:38.248127 7f0509bff6c0 Level-0 table #215: 0 bytes OK
|
2026/07/25-16:34:16.323083 7fb394b4f6c0 Level-0 table #223: 0 bytes OK
|
||||||
2026/07/09-07:48:38.285238 7f0509bff6c0 Delete type=0 #213
|
2026/07/25-16:34:16.329677 7fb394b4f6c0 Delete type=0 #221
|
||||||
2026/07/09-07:48:38.360368 7f0509bff6c0 Manual compaction at level-0 from '!folders!qrqRBmTP6UuS30DF' @ 72057594037927935 : 1 .. '!items!yFvuDyV00NdojxGt' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.343438 7fb394b4f6c0 Manual compaction at level-0 from '!folders!qrqRBmTP6UuS30DF' @ 72057594037927935 : 1 .. '!items!yFvuDyV00NdojxGt' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.360421 7f0509bff6c0 Manual compaction at level-1 from '!folders!qrqRBmTP6UuS30DF' @ 72057594037927935 : 1 .. '!items!yFvuDyV00NdojxGt' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.350140 7fb394b4f6c0 Manual compaction at level-1 from '!folders!qrqRBmTP6UuS30DF' @ 72057594037927935 : 1 .. '!items!yFvuDyV00NdojxGt' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
+1
-1
@@ -1 +1 @@
|
|||||||
MANIFEST-000054
|
MANIFEST-000062
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.623767 7fb397fff6c0 Recovering log #52
|
2026/07/25-16:54:40.546836 7fb3e4fff6c0 Recovering log #60
|
||||||
2026/07/23-23:13:20.635887 7fb397fff6c0 Delete type=3 #50
|
2026/07/25-16:54:40.559140 7fb3e4fff6c0 Delete type=3 #58
|
||||||
2026/07/23-23:13:20.635964 7fb397fff6c0 Delete type=0 #52
|
2026/07/25-16:54:40.559230 7fb3e4fff6c0 Delete type=0 #60
|
||||||
2026/07/23-23:28:59.127268 7fb394b4f6c0 Level-0 table #57: started
|
2026/07/25-17:22:36.806586 7fb394b4f6c0 Level-0 table #65: started
|
||||||
2026/07/23-23:28:59.127288 7fb394b4f6c0 Level-0 table #57: 0 bytes OK
|
2026/07/25-17:22:36.806624 7fb394b4f6c0 Level-0 table #65: 0 bytes OK
|
||||||
2026/07/23-23:28:59.133948 7fb394b4f6c0 Delete type=0 #55
|
2026/07/25-17:22:36.813457 7fb394b4f6c0 Delete type=0 #63
|
||||||
2026/07/23-23:28:59.152862 7fb394b4f6c0 Manual compaction at level-0 from '!actors!DL3zXfXxWMOQhXJY' @ 72057594037927935 : 1 .. '!actors.items!JAHYXFedTxNlGYX8.nmIgA3CQkOSEpCSP' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.832126 7fb394b4f6c0 Manual compaction at level-0 from '!actors!DL3zXfXxWMOQhXJY' @ 72057594037927935 : 1 .. '!actors.items!JAHYXFedTxNlGYX8.nmIgA3CQkOSEpCSP' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:59.192641 7fb394b4f6c0 Manual compaction at level-1 from '!actors!DL3zXfXxWMOQhXJY' @ 72057594037927935 : 1 .. '!actors.items!JAHYXFedTxNlGYX8.nmIgA3CQkOSEpCSP' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.880816 7fb394b4f6c0 Manual compaction at level-1 from '!actors!DL3zXfXxWMOQhXJY' @ 72057594037927935 : 1 .. '!actors.items!JAHYXFedTxNlGYX8.nmIgA3CQkOSEpCSP' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:54.696879 7f050b7fe6c0 Recovering log #48
|
2026/07/25-16:21:45.739454 7fb397fff6c0 Recovering log #56
|
||||||
2026/07/09-07:47:54.748540 7f050b7fe6c0 Delete type=3 #46
|
2026/07/25-16:21:45.751415 7fb397fff6c0 Delete type=3 #54
|
||||||
2026/07/09-07:47:54.748653 7f050b7fe6c0 Delete type=0 #48
|
2026/07/25-16:21:45.751507 7fb397fff6c0 Delete type=0 #56
|
||||||
2026/07/09-07:48:38.622656 7f0509bff6c0 Level-0 table #53: started
|
2026/07/25-16:34:16.722283 7fb394b4f6c0 Level-0 table #61: started
|
||||||
2026/07/09-07:48:38.622702 7f0509bff6c0 Level-0 table #53: 0 bytes OK
|
2026/07/25-16:34:16.722319 7fb394b4f6c0 Level-0 table #61: 0 bytes OK
|
||||||
2026/07/09-07:48:38.666188 7f0509bff6c0 Delete type=0 #51
|
2026/07/25-16:34:16.729649 7fb394b4f6c0 Delete type=0 #59
|
||||||
2026/07/09-07:48:38.666530 7f0509bff6c0 Manual compaction at level-0 from '!actors!DL3zXfXxWMOQhXJY' @ 72057594037927935 : 1 .. '!actors.items!JAHYXFedTxNlGYX8.nmIgA3CQkOSEpCSP' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.800931 7fb394b4f6c0 Manual compaction at level-0 from '!actors!DL3zXfXxWMOQhXJY' @ 72057594037927935 : 1 .. '!actors.items!JAHYXFedTxNlGYX8.nmIgA3CQkOSEpCSP' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.924791 7f0509bff6c0 Manual compaction at level-1 from '!actors!DL3zXfXxWMOQhXJY' @ 72057594037927935 : 1 .. '!actors.items!JAHYXFedTxNlGYX8.nmIgA3CQkOSEpCSP' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.860353 7fb394b4f6c0 Manual compaction at level-1 from '!actors!DL3zXfXxWMOQhXJY' @ 72057594037927935 : 1 .. '!actors.items!JAHYXFedTxNlGYX8.nmIgA3CQkOSEpCSP' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000496
|
MANIFEST-000530
|
||||||
|
|||||||
+63
-55
@@ -1,55 +1,63 @@
|
|||||||
2026/07/23-23:13:20.386580 7fb3e4fff6c0 Recovering log #490
|
2026/07/25-16:54:40.280606 7fb3e4fff6c0 Recovering log #517
|
||||||
2026/07/23-23:13:20.397323 7fb3e4fff6c0 Delete type=3 #488
|
2026/07/25-16:54:40.291187 7fb3e4fff6c0 Delete type=3 #513
|
||||||
2026/07/23-23:13:20.397433 7fb3e4fff6c0 Delete type=0 #490
|
2026/07/25-16:54:40.291276 7fb3e4fff6c0 Delete type=0 #517
|
||||||
2026/07/23-23:23:15.326958 7fb394b4f6c0 Level-0 table #499: started
|
2026/07/25-16:55:19.321188 7fb394b4f6c0 Level-0 table #533: started
|
||||||
2026/07/23-23:23:15.448595 7fb394b4f6c0 Level-0 table #499: 7834230 bytes OK
|
2026/07/25-16:55:19.444275 7fb394b4f6c0 Level-0 table #533: 8047048 bytes OK
|
||||||
2026/07/23-23:23:15.478227 7fb394b4f6c0 Delete type=0 #497
|
2026/07/25-16:55:19.451577 7fb394b4f6c0 Delete type=0 #531
|
||||||
2026/07/23-23:28:58.884492 7fb394b4f6c0 Level-0 table #501: started
|
2026/07/25-17:21:46.121006 7fb394b4f6c0 Level-0 table #535: started
|
||||||
2026/07/23-23:28:58.977768 7fb394b4f6c0 Level-0 table #501: 7889604 bytes OK
|
2026/07/25-17:21:46.222937 7fb394b4f6c0 Level-0 table #535: 8120620 bytes OK
|
||||||
2026/07/23-23:28:58.985219 7fb394b4f6c0 Delete type=0 #498
|
2026/07/25-17:21:46.230171 7fb394b4f6c0 Delete type=0 #532
|
||||||
2026/07/23-23:28:59.005051 7fb394b4f6c0 Manual compaction at level-0 from '!tables!BbXMbmHKcLJrBCmk' @ 72057594037927935 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3820202 : 1
|
2026/07/25-17:22:03.264081 7fb394b4f6c0 Level-0 table #537: started
|
||||||
2026/07/23-23:28:59.005065 7fb394b4f6c0 Compacting 1@0 + 1@1 files
|
2026/07/25-17:22:03.358383 7fb394b4f6c0 Level-0 table #537: 8159715 bytes OK
|
||||||
2026/07/23-23:28:59.027797 7fb394b4f6c0 Generated table #502@0: 8029 keys, 2133424 bytes
|
2026/07/25-17:22:03.366011 7fb394b4f6c0 Delete type=0 #534
|
||||||
2026/07/23-23:28:59.060873 7fb394b4f6c0 Generated table #503@0: 15581 keys, 2160339 bytes
|
2026/07/25-17:22:36.394386 7fb394b4f6c0 Level-0 table #539: started
|
||||||
2026/07/23-23:28:59.093860 7fb394b4f6c0 Generated table #504@0: 16197 keys, 2162627 bytes
|
2026/07/25-17:22:36.518263 7fb394b4f6c0 Level-0 table #539: 8197558 bytes OK
|
||||||
2026/07/23-23:28:59.118458 7fb394b4f6c0 Generated table #505@0: 10667 keys, 1429523 bytes
|
2026/07/25-17:22:36.525099 7fb394b4f6c0 Delete type=0 #536
|
||||||
2026/07/23-23:28:59.118487 7fb394b4f6c0 Compacted 1@0 + 1@1 files => 7885913 bytes
|
2026/07/25-17:22:36.535793 7fb394b4f6c0 Manual compaction at level-0 from '!tables!BbXMbmHKcLJrBCmk' @ 72057594037927935 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 4024266 : 1
|
||||||
2026/07/23-23:28:59.125206 7fb394b4f6c0 compacted to: files[ 0 4 4 0 0 0 0 ]
|
2026/07/25-17:22:36.535803 7fb394b4f6c0 Compacting 3@0 + 1@1 files
|
||||||
2026/07/23-23:28:59.125746 7fb394b4f6c0 Delete type=2 #499
|
2026/07/25-17:22:36.589302 7fb394b4f6c0 Generated table #540@0: 7833 keys, 2132558 bytes
|
||||||
2026/07/23-23:28:59.126653 7fb394b4f6c0 Delete type=2 #501
|
2026/07/25-17:22:36.667506 7fb394b4f6c0 Generated table #541@0: 15560 keys, 2160278 bytes
|
||||||
2026/07/23-23:28:59.146200 7fb394b4f6c0 Manual compaction at level-0 from '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3820202 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.735222 7fb394b4f6c0 Generated table #542@0: 16090 keys, 2162299 bytes
|
||||||
2026/07/23-23:28:59.152887 7fb394b4f6c0 Manual compaction at level-1 from '!tables!BbXMbmHKcLJrBCmk' @ 72057594037927935 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!Eg3PdOfCx9R54Tm6.T0efyp9R4iVnw6sH' @ 3849743 : 1
|
2026/07/25-17:22:36.791787 7fb394b4f6c0 Generated table #543@0: 12983 keys, 1738102 bytes
|
||||||
2026/07/23-23:28:59.152892 7fb394b4f6c0 Compacting 1@1 + 1@2 files
|
2026/07/25-17:22:36.791824 7fb394b4f6c0 Compacted 3@0 + 1@1 files => 8193237 bytes
|
||||||
2026/07/23-23:28:59.180484 7fb394b4f6c0 Generated table #506@1: 8029 keys, 2133424 bytes
|
2026/07/25-17:22:36.798979 7fb394b4f6c0 compacted to: files[ 0 4 4 0 0 0 0 ]
|
||||||
2026/07/23-23:28:59.185650 7fb394b4f6c0 Generated table #507@1: 194 keys, 31125 bytes
|
2026/07/25-17:22:36.799753 7fb394b4f6c0 Delete type=2 #533
|
||||||
2026/07/23-23:28:59.185674 7fb394b4f6c0 Compacted 1@1 + 1@2 files => 2164549 bytes
|
2026/07/25-17:22:36.801735 7fb394b4f6c0 Delete type=2 #535
|
||||||
2026/07/23-23:28:59.191764 7fb394b4f6c0 compacted to: files[ 0 3 5 0 0 0 0 ]
|
2026/07/25-17:22:36.803482 7fb394b4f6c0 Delete type=2 #537
|
||||||
2026/07/23-23:28:59.192080 7fb394b4f6c0 Delete type=2 #492
|
2026/07/25-17:22:36.805232 7fb394b4f6c0 Delete type=2 #539
|
||||||
2026/07/23-23:28:59.192445 7fb394b4f6c0 Delete type=2 #502
|
2026/07/25-17:22:36.813620 7fb394b4f6c0 Manual compaction at level-0 from '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 4024266 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:59.192765 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!Eg3PdOfCx9R54Tm6.T0efyp9R4iVnw6sH' @ 3849743 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!bQ64721XzgOetD2v.Iel5jZzA6un4CIln' @ 3857121 : 1
|
2026/07/25-17:22:36.832161 7fb394b4f6c0 Manual compaction at level-1 from '!tables!BbXMbmHKcLJrBCmk' @ 72057594037927935 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!Eg3PdOfCx9R54Tm6.NHK48nIoycLq56X4' @ 4160142 : 1
|
||||||
2026/07/23-23:28:59.192769 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
2026/07/25-17:22:36.832171 7fb394b4f6c0 Compacting 1@1 + 1@2 files
|
||||||
2026/07/23-23:28:59.224987 7fb394b4f6c0 Generated table #508@1: 15581 keys, 2160339 bytes
|
2026/07/25-17:22:36.867333 7fb394b4f6c0 Generated table #544@1: 7833 keys, 2132558 bytes
|
||||||
2026/07/23-23:28:59.228694 7fb394b4f6c0 Generated table #509@1: 380 keys, 55475 bytes
|
2026/07/25-17:22:36.872505 7fb394b4f6c0 Generated table #545@1: 338 keys, 55239 bytes
|
||||||
2026/07/23-23:28:59.228705 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 2215814 bytes
|
2026/07/25-17:22:36.872544 7fb394b4f6c0 Compacted 1@1 + 1@2 files => 2187797 bytes
|
||||||
2026/07/23-23:28:59.234758 7fb394b4f6c0 compacted to: files[ 0 2 5 0 0 0 0 ]
|
2026/07/25-17:22:36.879490 7fb394b4f6c0 compacted to: files[ 0 3 5 0 0 0 0 ]
|
||||||
2026/07/23-23:28:59.235102 7fb394b4f6c0 Delete type=2 #493
|
2026/07/25-17:22:36.879931 7fb394b4f6c0 Delete type=2 #523
|
||||||
2026/07/23-23:28:59.235444 7fb394b4f6c0 Delete type=2 #503
|
2026/07/25-17:22:36.880474 7fb394b4f6c0 Delete type=2 #540
|
||||||
2026/07/23-23:28:59.235643 7fb394b4f6c0 Delete type=2 #507
|
2026/07/25-17:22:36.880920 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!Eg3PdOfCx9R54Tm6.NHK48nIoycLq56X4' @ 4160142 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!bQ64721XzgOetD2v.6a2Kk3rl0H7Rij2U' @ 4171077 : 1
|
||||||
2026/07/23-23:28:59.265883 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!bQ64721XzgOetD2v.Iel5jZzA6un4CIln' @ 3857121 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!jup6vzXHR8WYariQ.GxWFsOxdtOvL2L1G' @ 3832544 : 1
|
2026/07/25-17:22:36.880928 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
||||||
2026/07/23-23:28:59.265898 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
2026/07/25-17:22:36.931840 7fb394b4f6c0 Generated table #546@1: 15560 keys, 2160278 bytes
|
||||||
2026/07/23-23:28:59.300050 7fb394b4f6c0 Generated table #510@1: 16197 keys, 2162627 bytes
|
2026/07/25-17:22:36.938177 7fb394b4f6c0 Generated table #547@1: 737 keys, 105748 bytes
|
||||||
2026/07/23-23:28:59.304730 7fb394b4f6c0 Generated table #511@1: 582 keys, 78853 bytes
|
2026/07/25-17:22:36.938217 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 2266026 bytes
|
||||||
2026/07/23-23:28:59.304750 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 2241480 bytes
|
2026/07/25-17:22:36.945137 7fb394b4f6c0 compacted to: files[ 0 2 5 0 0 0 0 ]
|
||||||
2026/07/23-23:28:59.310780 7fb394b4f6c0 compacted to: files[ 0 1 5 0 0 0 0 ]
|
2026/07/25-17:22:36.945519 7fb394b4f6c0 Delete type=2 #525
|
||||||
2026/07/23-23:28:59.311077 7fb394b4f6c0 Delete type=2 #494
|
2026/07/25-17:22:36.946090 7fb394b4f6c0 Delete type=2 #541
|
||||||
2026/07/23-23:28:59.311410 7fb394b4f6c0 Delete type=2 #504
|
2026/07/25-17:22:36.946379 7fb394b4f6c0 Delete type=2 #545
|
||||||
2026/07/23-23:28:59.311639 7fb394b4f6c0 Delete type=2 #509
|
2026/07/25-17:22:36.965952 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!bQ64721XzgOetD2v.6a2Kk3rl0H7Rij2U' @ 4171077 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!gXa1mHCjJYOtPiRx.w274XsrKfEGnYr0a' @ 4145219 : 1
|
||||||
2026/07/23-23:28:59.311850 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!jup6vzXHR8WYariQ.GxWFsOxdtOvL2L1G' @ 3832544 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3820202 : 1
|
2026/07/25-17:22:36.965988 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
||||||
2026/07/23-23:28:59.311854 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
2026/07/25-17:22:37.021652 7fb394b4f6c0 Generated table #548@1: 16090 keys, 2162299 bytes
|
||||||
2026/07/23-23:28:59.335767 7fb394b4f6c0 Generated table #512@1: 10667 keys, 1429523 bytes
|
2026/07/25-17:22:37.028936 7fb394b4f6c0 Generated table #549@1: 1170 keys, 156119 bytes
|
||||||
2026/07/23-23:28:59.335802 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 1429523 bytes
|
2026/07/25-17:22:37.028974 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 2318418 bytes
|
||||||
2026/07/23-23:28:59.342236 7fb394b4f6c0 compacted to: files[ 0 0 4 0 0 0 0 ]
|
2026/07/25-17:22:37.035841 7fb394b4f6c0 compacted to: files[ 0 1 5 0 0 0 0 ]
|
||||||
2026/07/23-23:28:59.342363 7fb394b4f6c0 Delete type=2 #495
|
2026/07/25-17:22:37.036188 7fb394b4f6c0 Delete type=2 #527
|
||||||
2026/07/23-23:28:59.342654 7fb394b4f6c0 Delete type=2 #505
|
2026/07/25-17:22:37.036784 7fb394b4f6c0 Delete type=2 #542
|
||||||
2026/07/23-23:28:59.342949 7fb394b4f6c0 Delete type=2 #511
|
2026/07/25-17:22:37.037237 7fb394b4f6c0 Delete type=2 #547
|
||||||
2026/07/23-23:28:59.365378 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3820202 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:37.044891 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!gXa1mHCjJYOtPiRx.w274XsrKfEGnYr0a' @ 4145219 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 4128290 : 1
|
||||||
|
2026/07/25-17:22:37.044907 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
||||||
|
2026/07/25-17:22:37.084375 7fb394b4f6c0 Generated table #550@1: 12983 keys, 1738102 bytes
|
||||||
|
2026/07/25-17:22:37.084414 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 1738102 bytes
|
||||||
|
2026/07/25-17:22:37.091282 7fb394b4f6c0 compacted to: files[ 0 0 4 0 0 0 0 ]
|
||||||
|
2026/07/25-17:22:37.091499 7fb394b4f6c0 Delete type=2 #529
|
||||||
|
2026/07/25-17:22:37.091903 7fb394b4f6c0 Delete type=2 #543
|
||||||
|
2026/07/25-17:22:37.092142 7fb394b4f6c0 Delete type=2 #549
|
||||||
|
2026/07/25-17:22:37.106687 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 4128290 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
+55
-21
@@ -1,21 +1,55 @@
|
|||||||
2026/07/09-07:47:54.381539 7f050b7fe6c0 Recovering log #482
|
2026/07/25-16:21:45.501792 7fb3e4fff6c0 Recovering log #500
|
||||||
2026/07/09-07:47:54.449522 7f050b7fe6c0 Delete type=3 #480
|
2026/07/25-16:21:45.512008 7fb3e4fff6c0 Delete type=3 #496
|
||||||
2026/07/09-07:47:54.449639 7f050b7fe6c0 Delete type=0 #482
|
2026/07/25-16:21:45.512073 7fb3e4fff6c0 Delete type=0 #500
|
||||||
2026/07/09-07:48:38.434501 7f0509bff6c0 Level-0 table #491: started
|
2026/07/25-16:24:19.128277 7fb394b4f6c0 Level-0 table #516: started
|
||||||
2026/07/09-07:48:38.581067 7f0509bff6c0 Level-0 table #491: 7799304 bytes OK
|
2026/07/25-16:24:19.244728 7fb394b4f6c0 Level-0 table #516: 7956529 bytes OK
|
||||||
2026/07/09-07:48:38.618635 7f0509bff6c0 Delete type=0 #489
|
2026/07/25-16:24:19.251153 7fb394b4f6c0 Delete type=0 #514
|
||||||
2026/07/09-07:48:38.666492 7f0509bff6c0 Manual compaction at level-0 from '!tables!BbXMbmHKcLJrBCmk' @ 72057594037927935 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.371434 7fb394b4f6c0 Level-0 table #518: started
|
||||||
2026/07/09-07:48:38.666799 7f0509bff6c0 Manual compaction at level-1 from '!tables!BbXMbmHKcLJrBCmk' @ 72057594037927935 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3720162 : 1
|
2026/07/25-16:34:16.500326 7fb394b4f6c0 Level-0 table #518: 7998817 bytes OK
|
||||||
2026/07/09-07:48:38.666823 7f0509bff6c0 Compacting 1@1 + 4@2 files
|
2026/07/25-16:34:16.508005 7fb394b4f6c0 Delete type=0 #515
|
||||||
2026/07/09-07:48:38.720439 7f0509bff6c0 Generated table #492@1: 8118 keys, 2133880 bytes
|
2026/07/25-16:34:16.510322 7fb394b4f6c0 Manual compaction at level-0 from '!tables!BbXMbmHKcLJrBCmk' @ 72057594037927935 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3921570 : 1
|
||||||
2026/07/09-07:48:38.784916 7f0509bff6c0 Generated table #493@1: 15560 keys, 2160741 bytes
|
2026/07/25-16:34:16.510331 7fb394b4f6c0 Compacting 1@0 + 1@1 files
|
||||||
2026/07/09-07:48:38.845800 7f0509bff6c0 Generated table #494@1: 16194 keys, 2162194 bytes
|
2026/07/25-16:34:16.542074 7fb394b4f6c0 Generated table #519@0: 7972 keys, 2131647 bytes
|
||||||
2026/07/09-07:48:38.885126 7f0509bff6c0 Generated table #495@1: 9938 keys, 1338663 bytes
|
2026/07/25-16:34:16.588781 7fb394b4f6c0 Generated table #520@0: 15567 keys, 2160383 bytes
|
||||||
2026/07/09-07:48:38.885173 7f0509bff6c0 Compacted 1@1 + 4@2 files => 7795478 bytes
|
2026/07/25-16:34:16.635707 7fb394b4f6c0 Generated table #521@0: 16112 keys, 2162117 bytes
|
||||||
2026/07/09-07:48:38.921695 7f0509bff6c0 compacted to: files[ 0 0 4 0 0 0 0 ]
|
2026/07/25-16:34:16.671030 7fb394b4f6c0 Generated table #522@0: 11487 keys, 1540844 bytes
|
||||||
2026/07/09-07:48:38.922132 7f0509bff6c0 Delete type=2 #484
|
2026/07/25-16:34:16.671069 7fb394b4f6c0 Compacted 1@0 + 1@1 files => 7994991 bytes
|
||||||
2026/07/09-07:48:38.922665 7f0509bff6c0 Delete type=2 #485
|
2026/07/25-16:34:16.677382 7fb394b4f6c0 compacted to: files[ 0 4 4 0 0 0 0 ]
|
||||||
2026/07/09-07:48:38.923013 7f0509bff6c0 Delete type=2 #486
|
2026/07/25-16:34:16.678276 7fb394b4f6c0 Delete type=2 #516
|
||||||
2026/07/09-07:48:38.923358 7f0509bff6c0 Delete type=2 #487
|
2026/07/25-16:34:16.679572 7fb394b4f6c0 Delete type=2 #518
|
||||||
2026/07/09-07:48:38.923944 7f0509bff6c0 Delete type=2 #491
|
2026/07/25-16:34:16.680429 7fb394b4f6c0 Manual compaction at level-0 from '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3921570 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:39.004029 7f0509bff6c0 Manual compaction at level-1 from '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3720162 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.680597 7fb394b4f6c0 Manual compaction at level-1 from '!tables!BbXMbmHKcLJrBCmk' @ 72057594037927935 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!Eg3PdOfCx9R54Tm6.QmTmqRtZ2zqUbNDK' @ 3951925 : 1
|
||||||
|
2026/07/25-16:34:16.680618 7fb394b4f6c0 Compacting 1@1 + 1@2 files
|
||||||
|
2026/07/25-16:34:16.710701 7fb394b4f6c0 Generated table #523@1: 7972 keys, 2131647 bytes
|
||||||
|
2026/07/25-16:34:16.714887 7fb394b4f6c0 Generated table #524@1: 166 keys, 27091 bytes
|
||||||
|
2026/07/25-16:34:16.714917 7fb394b4f6c0 Compacted 1@1 + 1@2 files => 2158738 bytes
|
||||||
|
2026/07/25-16:34:16.721082 7fb394b4f6c0 compacted to: files[ 0 3 5 0 0 0 0 ]
|
||||||
|
2026/07/25-16:34:16.721504 7fb394b4f6c0 Delete type=2 #506
|
||||||
|
2026/07/25-16:34:16.722019 7fb394b4f6c0 Delete type=2 #519
|
||||||
|
2026/07/25-16:34:16.743211 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!Eg3PdOfCx9R54Tm6.QmTmqRtZ2zqUbNDK' @ 3951925 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!bQ64721XzgOetD2v.EReJqu3wyM6vwWR7' @ 3963654 : 1
|
||||||
|
2026/07/25-16:34:16.743231 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
||||||
|
2026/07/25-16:34:16.788469 7fb394b4f6c0 Generated table #525@1: 15567 keys, 2160383 bytes
|
||||||
|
2026/07/25-16:34:16.793007 7fb394b4f6c0 Generated table #526@1: 370 keys, 53494 bytes
|
||||||
|
2026/07/25-16:34:16.793036 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 2213877 bytes
|
||||||
|
2026/07/25-16:34:16.799791 7fb394b4f6c0 compacted to: files[ 0 2 5 0 0 0 0 ]
|
||||||
|
2026/07/25-16:34:16.800112 7fb394b4f6c0 Delete type=2 #508
|
||||||
|
2026/07/25-16:34:16.800586 7fb394b4f6c0 Delete type=2 #520
|
||||||
|
2026/07/25-16:34:16.800854 7fb394b4f6c0 Delete type=2 #524
|
||||||
|
2026/07/25-16:34:16.801124 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!bQ64721XzgOetD2v.EReJqu3wyM6vwWR7' @ 3963654 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!jup6vzXHR8WYariQ.9MLFLfBZxah8tU5d' @ 3930763 : 1
|
||||||
|
2026/07/25-16:34:16.801134 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
||||||
|
2026/07/25-16:34:16.847533 7fb394b4f6c0 Generated table #527@1: 16112 keys, 2162117 bytes
|
||||||
|
2026/07/25-16:34:16.852860 7fb394b4f6c0 Generated table #528@1: 669 keys, 88745 bytes
|
||||||
|
2026/07/25-16:34:16.852890 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 2250862 bytes
|
||||||
|
2026/07/25-16:34:16.859163 7fb394b4f6c0 compacted to: files[ 0 1 5 0 0 0 0 ]
|
||||||
|
2026/07/25-16:34:16.859513 7fb394b4f6c0 Delete type=2 #510
|
||||||
|
2026/07/25-16:34:16.859993 7fb394b4f6c0 Delete type=2 #521
|
||||||
|
2026/07/25-16:34:16.860259 7fb394b4f6c0 Delete type=2 #526
|
||||||
|
2026/07/25-16:34:16.868258 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!jup6vzXHR8WYariQ.9MLFLfBZxah8tU5d' @ 3930763 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3921570 : 1
|
||||||
|
2026/07/25-16:34:16.868275 7fb394b4f6c0 Compacting 1@1 + 2@2 files
|
||||||
|
2026/07/25-16:34:16.902985 7fb394b4f6c0 Generated table #529@1: 11487 keys, 1540844 bytes
|
||||||
|
2026/07/25-16:34:16.903023 7fb394b4f6c0 Compacted 1@1 + 2@2 files => 1540844 bytes
|
||||||
|
2026/07/25-16:34:16.910466 7fb394b4f6c0 compacted to: files[ 0 0 4 0 0 0 0 ]
|
||||||
|
2026/07/25-16:34:16.910669 7fb394b4f6c0 Delete type=2 #512
|
||||||
|
2026/07/25-16:34:16.911042 7fb394b4f6c0 Delete type=2 #522
|
||||||
|
2026/07/25-16:34:16.911269 7fb394b4f6c0 Delete type=2 #528
|
||||||
|
2026/07/25-16:34:16.928914 7fb394b4f6c0 Manual compaction at level-1 from '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 3921570 : 1 .. '!tables.results!xe7x4qufBpzLaEby.zzqLG98O4eFQZHp0' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000162
|
MANIFEST-000170
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/23-23:13:20.355723 7fb3e4fff6c0 Recovering log #160
|
2026/07/25-16:54:40.250077 7fb3977fe6c0 Recovering log #168
|
||||||
2026/07/23-23:13:20.367231 7fb3e4fff6c0 Delete type=3 #158
|
2026/07/25-16:54:40.261282 7fb3977fe6c0 Delete type=3 #166
|
||||||
2026/07/23-23:13:20.367336 7fb3e4fff6c0 Delete type=0 #160
|
2026/07/25-16:54:40.261388 7fb3977fe6c0 Delete type=0 #168
|
||||||
2026/07/23-23:28:58.855573 7fb394b4f6c0 Level-0 table #165: started
|
2026/07/25-17:22:36.372487 7fb394b4f6c0 Level-0 table #173: started
|
||||||
2026/07/23-23:28:58.855593 7fb394b4f6c0 Level-0 table #165: 0 bytes OK
|
2026/07/25-17:22:36.372517 7fb394b4f6c0 Level-0 table #173: 0 bytes OK
|
||||||
2026/07/23-23:28:58.862452 7fb394b4f6c0 Delete type=0 #163
|
2026/07/25-17:22:36.379686 7fb394b4f6c0 Delete type=0 #171
|
||||||
2026/07/23-23:28:58.869797 7fb394b4f6c0 Manual compaction at level-0 from '!items!0ZfAXacF6oWS120o' @ 72057594037927935 : 1 .. '!items!xFUyR7XECD8QJcIw' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.379949 7fb394b4f6c0 Manual compaction at level-0 from '!items!0ZfAXacF6oWS120o' @ 72057594037927935 : 1 .. '!items!xFUyR7XECD8QJcIw' @ 0 : 0; will stop at (end)
|
||||||
2026/07/23-23:28:58.876623 7fb394b4f6c0 Manual compaction at level-1 from '!items!0ZfAXacF6oWS120o' @ 72057594037927935 : 1 .. '!items!xFUyR7XECD8QJcIw' @ 0 : 0; will stop at (end)
|
2026/07/25-17:22:36.379970 7fb394b4f6c0 Manual compaction at level-1 from '!items!0ZfAXacF6oWS120o' @ 72057594037927935 : 1 .. '!items!xFUyR7XECD8QJcIw' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/07/09-07:47:54.264845 7f050affd6c0 Recovering log #156
|
2026/07/25-16:21:45.473663 7fb3e4fff6c0 Recovering log #164
|
||||||
2026/07/09-07:47:54.317032 7f050affd6c0 Delete type=3 #154
|
2026/07/25-16:21:45.484922 7fb3e4fff6c0 Delete type=3 #162
|
||||||
2026/07/09-07:47:54.317136 7f050affd6c0 Delete type=0 #156
|
2026/07/25-16:21:45.484999 7fb3e4fff6c0 Delete type=0 #164
|
||||||
2026/07/09-07:48:38.360596 7f0509bff6c0 Level-0 table #161: started
|
2026/07/25-16:34:16.364464 7fb394b4f6c0 Level-0 table #169: started
|
||||||
2026/07/09-07:48:38.360657 7f0509bff6c0 Level-0 table #161: 0 bytes OK
|
2026/07/25-16:34:16.364495 7fb394b4f6c0 Level-0 table #169: 0 bytes OK
|
||||||
2026/07/09-07:48:38.397839 7f0509bff6c0 Delete type=0 #159
|
2026/07/25-16:34:16.371260 7fb394b4f6c0 Delete type=0 #167
|
||||||
2026/07/09-07:48:38.622627 7f0509bff6c0 Manual compaction at level-0 from '!items!0ZfAXacF6oWS120o' @ 72057594037927935 : 1 .. '!items!xFUyR7XECD8QJcIw' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.510187 7fb394b4f6c0 Manual compaction at level-0 from '!items!0ZfAXacF6oWS120o' @ 72057594037927935 : 1 .. '!items!xFUyR7XECD8QJcIw' @ 0 : 0; will stop at (end)
|
||||||
2026/07/09-07:48:38.666513 7f0509bff6c0 Manual compaction at level-1 from '!items!0ZfAXacF6oWS120o' @ 72057594037927935 : 1 .. '!items!xFUyR7XECD8QJcIw' @ 0 : 0; will stop at (end)
|
2026/07/25-16:34:16.680263 7fb394b4f6c0 Manual compaction at level-1 from '!items!0ZfAXacF6oWS120o' @ 72057594037927935 : 1 .. '!items!xFUyR7XECD8QJcIw' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
+35
-2
@@ -22,10 +22,16 @@ export class CalendarApp extends HandlebarsApplicationMixin(ApplicationV2) {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
constructor({ onConfig, onClose } = {}) {
|
constructor({ onConfig, onClose, onNote } = {}) {
|
||||||
super();
|
super();
|
||||||
|
const saved = game.settings?.get(MODULE_ID, 'calendarPosition');
|
||||||
|
if (saved?.left != null && saved?.top != null) {
|
||||||
|
this.position.left = saved.left;
|
||||||
|
this.position.top = saved.top;
|
||||||
|
}
|
||||||
this._onConfig = onConfig;
|
this._onConfig = onConfig;
|
||||||
this._onClose = onClose;
|
this._onClose = onClose;
|
||||||
|
this._onNote = onNote;
|
||||||
this._data = { year: 1116, day: 1, hour: 12, minute: 0, planet: '' };
|
this._data = { year: 1116, day: 1, hour: 12, minute: 0, planet: '' };
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -46,6 +52,26 @@ export class CalendarApp extends HandlebarsApplicationMixin(ApplicationV2) {
|
|||||||
html.find('.mgt2-cal-config-btn').on('click', () => {
|
html.find('.mgt2-cal-config-btn').on('click', () => {
|
||||||
this._onConfig?.();
|
this._onConfig?.();
|
||||||
});
|
});
|
||||||
|
html.find('.mgt2-cal-note-btn').on('click', () => {
|
||||||
|
this._onNote?.();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
setPosition(position) {
|
||||||
|
const result = super.setPosition(position);
|
||||||
|
this._debouncedSavePos();
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
_debouncedSavePos() {
|
||||||
|
if (this._savePosTimeout) clearTimeout(this._savePosTimeout);
|
||||||
|
this._savePosTimeout = setTimeout(() => {
|
||||||
|
game.settings?.set(MODULE_ID, 'calendarPosition', {
|
||||||
|
left: this.position.left,
|
||||||
|
top: this.position.top,
|
||||||
|
});
|
||||||
|
this._savePosTimeout = null;
|
||||||
|
}, 300);
|
||||||
}
|
}
|
||||||
|
|
||||||
updateDisplay(data) {
|
updateDisplay(data) {
|
||||||
@@ -53,8 +79,15 @@ export class CalendarApp extends HandlebarsApplicationMixin(ApplicationV2) {
|
|||||||
this.render();
|
this.render();
|
||||||
}
|
}
|
||||||
|
|
||||||
close() {
|
async close() {
|
||||||
|
if (game.settings) {
|
||||||
|
await game.settings.set(MODULE_ID, 'calendarPosition', {
|
||||||
|
left: this.position.left,
|
||||||
|
top: this.position.top,
|
||||||
|
});
|
||||||
|
}
|
||||||
this._onConfig = null;
|
this._onConfig = null;
|
||||||
|
this._onNote = null;
|
||||||
this._onClose?.();
|
this._onClose?.();
|
||||||
this._onClose = null;
|
this._onClose = null;
|
||||||
return super.close();
|
return super.close();
|
||||||
|
|||||||
@@ -0,0 +1,59 @@
|
|||||||
|
const { ApplicationV2, HandlebarsApplicationMixin } = foundry.applications.api;
|
||||||
|
const MODULE_ID = 'mgt2-compendium-amiral-denisov';
|
||||||
|
|
||||||
|
export class JournalNoteDialog extends HandlebarsApplicationMixin(ApplicationV2) {
|
||||||
|
static DEFAULT_OPTIONS = {
|
||||||
|
id: 'mgt2-journal-note',
|
||||||
|
classes: ['mgt2-calendar'],
|
||||||
|
position: { width: 320, height: 'auto' },
|
||||||
|
window: {
|
||||||
|
icon: 'fas fa-pen',
|
||||||
|
title: 'Note de bord',
|
||||||
|
resizable: false,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
static PARTS = {
|
||||||
|
main: {
|
||||||
|
template: `modules/${MODULE_ID}/templates/journal-note-dialog.hbs`,
|
||||||
|
root: true,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
constructor({ imperialDate, realDate, onSave } = {}) {
|
||||||
|
super();
|
||||||
|
this._imperialDate = imperialDate;
|
||||||
|
this._realDate = realDate;
|
||||||
|
this._onSave = onSave;
|
||||||
|
}
|
||||||
|
|
||||||
|
get title() {
|
||||||
|
return 'Note de bord';
|
||||||
|
}
|
||||||
|
|
||||||
|
async _prepareContext() {
|
||||||
|
return {
|
||||||
|
imperialDate: this._imperialDate,
|
||||||
|
realDate: this._realDate,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
async _onRender(context, options) {
|
||||||
|
await super._onRender(context, options);
|
||||||
|
const html = $(this.element);
|
||||||
|
|
||||||
|
html.find('[data-action="save"]').on('click', async () => {
|
||||||
|
const content = html.find('[name="content"]').val()?.trim();
|
||||||
|
try {
|
||||||
|
await this._onSave?.(content);
|
||||||
|
} catch (err) {
|
||||||
|
console.error(`${MODULE_ID} | Erreur sauvegarde note:`, err);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
close() {
|
||||||
|
this._onSave = null;
|
||||||
|
return super.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -93,3 +93,13 @@ export function formatImperialDate({ year, day, hour, minute, planet } = {}) {
|
|||||||
export function getDefaultCalendar() {
|
export function getDefaultCalendar() {
|
||||||
return { year: 1116, day: 1, hour: 12, minute: 0, planet: '' };
|
return { year: 1116, day: 1, hour: 12, minute: 0, planet: '' };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function formatRealDate() {
|
||||||
|
const d = new Date();
|
||||||
|
const y = d.getFullYear();
|
||||||
|
const m = String(d.getMonth() + 1).padStart(2, '0');
|
||||||
|
const day = String(d.getDate()).padStart(2, '0');
|
||||||
|
const h = String(d.getHours()).padStart(2, '0');
|
||||||
|
const min = String(d.getMinutes()).padStart(2, '0');
|
||||||
|
return `${day}/${m}/${y} ${h}:${min}`;
|
||||||
|
}
|
||||||
|
|||||||
@@ -723,22 +723,30 @@ export function validateOptions(options = {}) {
|
|||||||
const errors = [];
|
const errors = [];
|
||||||
const validated = { ...options };
|
const validated = { ...options };
|
||||||
|
|
||||||
if (validated.citizenCategory && !getCitizenCategoryByKey(validated.citizenCategory)) {
|
// Remplir les valeurs manquantes avec les défauts
|
||||||
|
for (const key of ['citizenCategory', 'experience', 'role', 'gender']) {
|
||||||
|
if (!validated[key]) {
|
||||||
|
validated[key] = DEFAULT_OPTIONS[key];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Corriger les valeurs invalides (getXByKey renvoie l'objet par défaut si la clé est inconnue)
|
||||||
|
if (getCitizenCategoryByKey(validated.citizenCategory).key !== validated.citizenCategory) {
|
||||||
errors.push(`Catégorie de citoyen invalide: ${validated.citizenCategory}`);
|
errors.push(`Catégorie de citoyen invalide: ${validated.citizenCategory}`);
|
||||||
validated.citizenCategory = DEFAULT_OPTIONS.citizenCategory;
|
validated.citizenCategory = DEFAULT_OPTIONS.citizenCategory;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (validated.experience && !getExperienceLevelByKey(validated.experience)) {
|
if (getExperienceLevelByKey(validated.experience).key !== validated.experience) {
|
||||||
errors.push(`Niveau d'expérience invalide: ${validated.experience}`);
|
errors.push(`Niveau d'expérience invalide: ${validated.experience}`);
|
||||||
validated.experience = DEFAULT_OPTIONS.experience;
|
validated.experience = DEFAULT_OPTIONS.experience;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (validated.role && !getRoleByKey(validated.role)) {
|
if (getRoleByKey(validated.role).key !== validated.role) {
|
||||||
errors.push(`Rôle invalide: ${validated.role}`);
|
errors.push(`Rôle invalide: ${validated.role}`);
|
||||||
validated.role = DEFAULT_OPTIONS.role;
|
validated.role = DEFAULT_OPTIONS.role;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (validated.gender && !getGenderByKey(validated.gender)) {
|
if (getGenderByKey(validated.gender).key !== validated.gender) {
|
||||||
errors.push(`Genre invalide: ${validated.gender}`);
|
errors.push(`Genre invalide: ${validated.gender}`);
|
||||||
validated.gender = DEFAULT_OPTIONS.gender;
|
validated.gender = DEFAULT_OPTIONS.gender;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import { CalendarApp } from './CalendarApp.js';
|
import { CalendarApp } from './CalendarApp.js';
|
||||||
import { CalendarConfigDialog } from './CalendarConfigDialog.js';
|
import { CalendarConfigDialog } from './CalendarConfigDialog.js';
|
||||||
import { getDefaultCalendar } from './calendarDate.js';
|
import { JournalNoteDialog } from './JournalNoteDialog.js';
|
||||||
|
import { getDefaultCalendar, formatImperialDate, formatRealDate } from './calendarDate.js';
|
||||||
|
|
||||||
const MODULE_ID = 'mgt2-compendium-amiral-denisov';
|
const MODULE_ID = 'mgt2-compendium-amiral-denisov';
|
||||||
const ChatLogV2 = foundry.applications.sidebar.tabs.ChatLog;
|
const ChatLogV2 = foundry.applications.sidebar.tabs.ChatLog;
|
||||||
@@ -47,6 +48,7 @@ function openCalendarApp() {
|
|||||||
const data = readCalendar();
|
const data = readCalendar();
|
||||||
_calendarApp = new CalendarApp({
|
_calendarApp = new CalendarApp({
|
||||||
onConfig: () => openCalendarConfig(),
|
onConfig: () => openCalendarConfig(),
|
||||||
|
onNote: () => openJournalNote(),
|
||||||
onClose: () => { _calendarApp = null; },
|
onClose: () => { _calendarApp = null; },
|
||||||
});
|
});
|
||||||
_calendarApp.updateDisplay(data);
|
_calendarApp.updateDisplay(data);
|
||||||
@@ -67,6 +69,55 @@ function openCalendarConfig() {
|
|||||||
dialog.render({ force: true });
|
dialog.render({ force: true });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function appendJournalNote(content, { dateLabel, realLabel } = {}) {
|
||||||
|
if (!content) return false;
|
||||||
|
const journalName = game.settings.get(MODULE_ID, 'calendarJournalName') || 'Journal de bord';
|
||||||
|
let journal = game.journal.getName(journalName);
|
||||||
|
if (!journal) {
|
||||||
|
journal = await JournalEntry.create({ name: journalName });
|
||||||
|
if (!journal) {
|
||||||
|
ui.notifications.error('Impossible de créer le journal');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!dateLabel || !realLabel) {
|
||||||
|
const c = readCalendar();
|
||||||
|
dateLabel = formatImperialDate(c);
|
||||||
|
realLabel = formatRealDate();
|
||||||
|
}
|
||||||
|
const safeContent = $('<div>').text(content).html().replace(/\n/g, '<br>');
|
||||||
|
const noteHtml = `<hr>
|
||||||
|
<h3>${realLabel} — ${dateLabel}</h3>
|
||||||
|
<p>${safeContent}</p>`;
|
||||||
|
let page = journal.pages.contents[0];
|
||||||
|
if (!page) {
|
||||||
|
[page] = await journal.createEmbeddedDocuments('JournalEntryPage', [{ name: 'Notes', text: { content: '' } }]);
|
||||||
|
}
|
||||||
|
if (!page) {
|
||||||
|
ui.notifications.error('Impossible de créer une page dans le journal');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
const existing = page.text?.content || '';
|
||||||
|
await page.update({ 'text.content': existing + '\n' + noteHtml });
|
||||||
|
ui.notifications.info(`Note ajoutée au journal « ${journalName} »`);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
function openJournalNote() {
|
||||||
|
const calendar = readCalendar();
|
||||||
|
const dateLabel = formatImperialDate(calendar);
|
||||||
|
const realLabel = formatRealDate();
|
||||||
|
const dialog = new JournalNoteDialog({
|
||||||
|
imperialDate: dateLabel,
|
||||||
|
realDate: realLabel,
|
||||||
|
onSave: async (content) => {
|
||||||
|
const ok = await appendJournalNote(content, { dateLabel, realLabel });
|
||||||
|
if (ok) dialog.close();
|
||||||
|
},
|
||||||
|
});
|
||||||
|
dialog.render({ force: true });
|
||||||
|
}
|
||||||
|
|
||||||
function registerCalCommand() {
|
function registerCalCommand() {
|
||||||
if (!ChatLogV2?.CHAT_COMMANDS) return;
|
if (!ChatLogV2?.CHAT_COMMANDS) return;
|
||||||
ChatLogV2.CHAT_COMMANDS.cal = {
|
ChatLogV2.CHAT_COMMANDS.cal = {
|
||||||
@@ -125,12 +176,27 @@ Hooks.once('init', () => {
|
|||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: true,
|
default: true,
|
||||||
});
|
});
|
||||||
|
game.settings.register(MODULE_ID, 'calendarJournalName', {
|
||||||
|
name: 'Journal de bord',
|
||||||
|
hint: 'Nom du journal utilisé pour les notes de session. Créé automatiquement s\'il n\'existe pas.',
|
||||||
|
scope: 'world',
|
||||||
|
config: true,
|
||||||
|
type: String,
|
||||||
|
default: 'Journal de bord',
|
||||||
|
});
|
||||||
|
game.settings.register(MODULE_ID, 'calendarPosition', {
|
||||||
|
scope: 'client',
|
||||||
|
config: false,
|
||||||
|
type: Object,
|
||||||
|
default: {},
|
||||||
|
});
|
||||||
|
|
||||||
const loadTemplatesFn = foundry.applications?.handlebars?.loadTemplates || loadTemplates;
|
const loadTemplatesFn = foundry.applications?.handlebars?.loadTemplates || loadTemplates;
|
||||||
if (loadTemplatesFn) {
|
if (loadTemplatesFn) {
|
||||||
loadTemplatesFn([
|
loadTemplatesFn([
|
||||||
`modules/${MODULE_ID}/templates/calendar-app.hbs`,
|
`modules/${MODULE_ID}/templates/calendar-app.hbs`,
|
||||||
`modules/${MODULE_ID}/templates/calendar-config.hbs`,
|
`modules/${MODULE_ID}/templates/calendar-config.hbs`,
|
||||||
|
`modules/${MODULE_ID}/templates/journal-note-dialog.hbs`,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ function buildStartupNoticeHtml() {
|
|||||||
<div style="padding:6px 8px;border-left:4px solid #c9a227;background:#f5f0e8;color:#2c2c3e;line-height:1.45;">
|
<div style="padding:6px 8px;border-left:4px solid #c9a227;background:#f5f0e8;color:#2c2c3e;line-height:1.45;">
|
||||||
<strong>MgT2e – outils</strong>
|
<strong>MgT2e – outils</strong>
|
||||||
<span style="color:#6a5422;">·</span>
|
<span style="color:#6a5422;">·</span>
|
||||||
<code>/cal</code> <code>/commerce</code> <code>/pnj</code> <code>/rencontre</code> <code>/mission</code> <code>/sector</code>
|
<code>/cal</code> <code>/commerce</code> <code>/pnj</code> <code>/rencontre</code> <code>/mission</code> <code>/sector</code> <code>/subsector</code>
|
||||||
<div style="margin-top:2px;font-size:0.92em;color:#6a5422;">
|
<div style="margin-top:2px;font-size:0.92em;color:#6a5422;">
|
||||||
par <a href="https://www.uberwald.me" target="_blank" rel="noopener noreferrer">LeRatierBretonnien / Uberwald</a>
|
par <a href="https://www.uberwald.me" target="_blank" rel="noopener noreferrer">LeRatierBretonnien / Uberwald</a>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -8,6 +8,9 @@
|
|||||||
* un framework de test similaire.
|
* un framework de test similaire.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// Import explicite des globals Jest (obligatoire en ESM)
|
||||||
|
import { jest, describe, it, expect, beforeEach } from '@jest/globals';
|
||||||
|
|
||||||
// Mock des dépendances Foundry pour l'environnement de test
|
// Mock des dépendances Foundry pour l'environnement de test
|
||||||
const mockFoundry = {
|
const mockFoundry = {
|
||||||
utils: {
|
utils: {
|
||||||
@@ -85,7 +88,6 @@ import {
|
|||||||
convertSkillToMgt2eFormat,
|
convertSkillToMgt2eFormat,
|
||||||
buildMgt2eCharacteristics,
|
buildMgt2eCharacteristics,
|
||||||
buildMgt2eSkills,
|
buildMgt2eSkills,
|
||||||
buildMgt2eBaseActorSystem,
|
|
||||||
getMgt2eBaseActorSystem,
|
getMgt2eBaseActorSystem,
|
||||||
toHex,
|
toHex,
|
||||||
calculateDm,
|
calculateDm,
|
||||||
@@ -579,13 +581,14 @@ describe('generateSkills', () => {
|
|||||||
expect(eliteLevel3).toBeGreaterThanOrEqual(regularLevel3);
|
expect(eliteLevel3).toBeGreaterThanOrEqual(regularLevel3);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('devrait supprimer les doublons basés sur la compétence de base', () => {
|
it('devrait supprimer les doublons exacts de compétence', () => {
|
||||||
const skills = generateSkills('pilot', 'regular');
|
const skills = generateSkills('pilot', 'regular');
|
||||||
const skillNames = skills.map(s => s.name);
|
const skillNames = skills.map(s => s.name);
|
||||||
const uniqueBases = new Set(skillNames.map(n => n.split('-')[0]));
|
const uniqueNames = new Set(skillNames);
|
||||||
|
|
||||||
// Chaque nom de base devrait apparaître une seule fois
|
// Le générateur dédoublonne les noms complets mais conserve
|
||||||
expect(skillNames.length).toBe(uniqueBases.size);
|
// les spécialisations (Pilot-Spacecraft, Pilot-Small Craft, ...)
|
||||||
|
expect(skillNames.length).toBe(uniqueNames.size);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('devrait générer des compétences avec le rôle par défaut pour un rôle invalide', () => {
|
it('devrait générer des compétences avec le rôle par défaut pour un rôle invalide', () => {
|
||||||
@@ -624,7 +627,7 @@ describe('convertSkillToMgt2eFormat', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('devrait gérer les tirets', () => {
|
it('devrait gérer les tirets', () => {
|
||||||
expect(convertSkillToMgt2eFormat('Pilot-Small Craft')).toBe('pilot.smallcraft');
|
expect(convertSkillToMgt2eFormat('Pilot-Small Craft')).toBe('pilot.smallCraft');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ const SKILL_MAPPING = {
|
|||||||
* @param {string} skillName - Nom de la compétence
|
* @param {string} skillName - Nom de la compétence
|
||||||
* @returns {string} - Nom au format mgt2e
|
* @returns {string} - Nom au format mgt2e
|
||||||
*/
|
*/
|
||||||
function convertSkillToMgt2eFormat(skillName) {
|
export function convertSkillToMgt2eFormat(skillName) {
|
||||||
// Vérifier d'abord dans le mapping explicite
|
// Vérifier d'abord dans le mapping explicite
|
||||||
if (SKILL_MAPPING[skillName]) {
|
if (SKILL_MAPPING[skillName]) {
|
||||||
return SKILL_MAPPING[skillName];
|
return SKILL_MAPPING[skillName];
|
||||||
@@ -192,8 +192,9 @@ export function generateCharacteristics(citizenCategoryKey, roleKey) {
|
|||||||
const category = getCitizenCategoryByKey(citizenCategoryKey);
|
const category = getCitizenCategoryByKey(citizenCategoryKey);
|
||||||
const priorities = getCharacteristicPrioritiesForRole(roleKey);
|
const priorities = getCharacteristicPrioritiesForRole(roleKey);
|
||||||
|
|
||||||
// Cloner et mélanger l'array de base de la catégorie
|
// Le tableau de base de la catégorie est trié par ordre décroissant :
|
||||||
let characteristicArray = shuffleArray([...category.characteristicArray]);
|
// on l'attribue tel quel dans l'ordre de priorité (high → medium → low)
|
||||||
|
let characteristicArray = [...category.characteristicArray];
|
||||||
|
|
||||||
const characteristics = {};
|
const characteristics = {};
|
||||||
|
|
||||||
@@ -726,5 +727,9 @@ export {
|
|||||||
getSkillsForRole,
|
getSkillsForRole,
|
||||||
getCharacteristicPrioritiesForRole,
|
getCharacteristicPrioritiesForRole,
|
||||||
validateOptions,
|
validateOptions,
|
||||||
DEFAULT_OPTIONS
|
DEFAULT_OPTIONS,
|
||||||
|
popRandomItems
|
||||||
} from './data/travellerNpcGenerator.js';
|
} from './data/travellerNpcGenerator.js';
|
||||||
|
|
||||||
|
// Ré-exporter ERROR_CODES et TravellerNpcError utilisés en interne (proviennent de utils)
|
||||||
|
export { ERROR_CODES, TravellerNpcError } from './utils/travellerNpcUtils.js';
|
||||||
|
|||||||
@@ -1193,6 +1193,14 @@ a.mgt2-world-link:hover {
|
|||||||
flex: 1;
|
flex: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mgt2-cal-actions {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
gap: 2px;
|
||||||
|
flex: 0 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
.mgt2-cal-date {
|
.mgt2-cal-date {
|
||||||
color: #d8c79a;
|
color: #d8c79a;
|
||||||
font-size: 0.95em;
|
font-size: 0.95em;
|
||||||
@@ -1352,3 +1360,79 @@ a.mgt2-world-link:hover {
|
|||||||
.mgt2-cal-conv-label {
|
.mgt2-cal-conv-label {
|
||||||
color: #8a7a5a;
|
color: #8a7a5a;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Note button on calendar app */
|
||||||
|
|
||||||
|
.mgt2-cal-note-btn {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
width: 22px;
|
||||||
|
height: 22px;
|
||||||
|
padding: 0;
|
||||||
|
border: none;
|
||||||
|
background: transparent;
|
||||||
|
color: #8a7a5a;
|
||||||
|
cursor: pointer;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
font-size: 0.85em;
|
||||||
|
border-radius: 3px;
|
||||||
|
transition: color 0.15s, background 0.15s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mgt2-cal-note-btn:hover {
|
||||||
|
color: #d9b24c;
|
||||||
|
background: rgba(201, 162, 39, 0.15);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Note dialog */
|
||||||
|
|
||||||
|
.mgt2-note-form {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 8px;
|
||||||
|
padding: 8px;
|
||||||
|
background: #1a1a2e;
|
||||||
|
color: #d8c79a;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mgt2-note-row {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mgt2-note-row label {
|
||||||
|
font-size: 0.8em;
|
||||||
|
color: #8a7a5a;
|
||||||
|
text-transform: uppercase;
|
||||||
|
letter-spacing: 0.5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mgt2-note-value {
|
||||||
|
font-size: 0.9em;
|
||||||
|
color: #d8c79a;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mgt2-note-row textarea {
|
||||||
|
width: 100%;
|
||||||
|
padding: 6px;
|
||||||
|
border: 1px solid #3a3a4e;
|
||||||
|
border-radius: 3px;
|
||||||
|
background: #252540;
|
||||||
|
color: #d8c79a;
|
||||||
|
font-size: 0.85em;
|
||||||
|
font-family: inherit;
|
||||||
|
resize: vertical;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mgt2-note-row textarea:focus {
|
||||||
|
outline: none;
|
||||||
|
border-color: #c9a227;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mgt2-note-actions {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
||||||
|
|||||||
@@ -3,8 +3,13 @@
|
|||||||
<span class="mgt2-cal-date">{{dateLabel}}</span>
|
<span class="mgt2-cal-date">{{dateLabel}}</span>
|
||||||
</div>
|
</div>
|
||||||
{{#if isGM}}
|
{{#if isGM}}
|
||||||
<button type="button" class="mgt2-cal-config-btn" title="Configurer le calendrier">
|
<div class="mgt2-cal-actions">
|
||||||
<i class="fas fa-cog"></i>
|
<button type="button" class="mgt2-cal-note-btn" title="Ajouter une note de bord">
|
||||||
</button>
|
<i class="fas fa-pen"></i>
|
||||||
|
</button>
|
||||||
|
<button type="button" class="mgt2-cal-config-btn" title="Configurer le calendrier">
|
||||||
|
<i class="fas fa-cog"></i>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
<form class="mgt2-note-form">
|
||||||
|
<div class="mgt2-note-row">
|
||||||
|
<label>Date impériale</label>
|
||||||
|
<span class="mgt2-note-value">{{imperialDate}}</span>
|
||||||
|
</div>
|
||||||
|
<div class="mgt2-note-row">
|
||||||
|
<label>Date réelle</label>
|
||||||
|
<span class="mgt2-note-value">{{realDate}}</span>
|
||||||
|
</div>
|
||||||
|
<div class="mgt2-note-row">
|
||||||
|
<label for="note-content">Note</label>
|
||||||
|
<textarea id="note-content" name="content" rows="6" placeholder="Saisissez votre note…" autofocus></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="mgt2-note-actions">
|
||||||
|
<button type="button" class="mgt2-cal-btn mgt2-cal-btn-primary" data-action="save">
|
||||||
|
<i class="fas fa-save"></i> Enregistrer
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
Reference in New Issue
Block a user