phi-complexity 0.12.0__tar.gz → 0.13.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/PKG-INFO +11 -4
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/README.md +10 -3
- phi_complexity-0.13.1/phi_complexity/chemins_verifiables.py +2953 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/cli.py +243 -1
- phi_complexity-0.13.1/phi_complexity/dependances.py +169 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/mission.py +18 -1
- phi_complexity-0.13.1/phi_complexity/parseur_lean.py +379 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity.egg-info/PKG-INFO +11 -4
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity.egg-info/SOURCES.txt +10 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/pyproject.toml +1 -1
- phi_complexity-0.13.1/tests/test_atteignabilite.py +300 -0
- phi_complexity-0.13.1/tests/test_chemins_b6_memoire.py +99 -0
- phi_complexity-0.13.1/tests/test_chemins_durcissement.py +208 -0
- phi_complexity-0.13.1/tests/test_chemins_multilemmes.py +399 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_chemins_verifiables.py +2 -1
- phi_complexity-0.13.1/tests/test_elagage.py +446 -0
- phi_complexity-0.13.1/tests/test_encerclement.py +304 -0
- phi_complexity-0.13.1/tests/test_scoreur_type.py +145 -0
- phi_complexity-0.13.1/tests/test_synthese_structures.py +170 -0
- phi_complexity-0.12.0/phi_complexity/chemins_verifiables.py +0 -399
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/LICENSE +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/__init__.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/__main__.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/analyseur.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/ancrage.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/bayes.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/carte.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/core.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/croyances.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/durcissement.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/editeur/__init__.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/editeur/indexeur.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/editeur/panneau_phi.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/editeur/recherche.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/editeur/tampon.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/editeur/tui.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/eft.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/entropie.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/explorateur.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/formules/__init__.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/formules/nodes.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/formules/parser.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/langs/__init__.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/langs/base.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/langs/lean.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/langs/python_native.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/langs/registry.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/langs/treesitter_generic.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/metriques.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/modeles.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/oracle.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/piste_sorry.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/rapport.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/sondes.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity/veille.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity.egg-info/dependency_links.txt +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity.egg-info/entry_points.txt +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity.egg-info/requires.txt +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/phi_complexity.egg-info/top_level.txt +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/setup.cfg +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_adiabatique.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_analyseur.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_ancrage.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_bayes.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_carte.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_cli.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_core.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_croyances.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_durcissement.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_durcissement_20261001.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_durcissement_sondes.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_editeur.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_eft.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_entropie.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_explorateur.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_formules.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_lean.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_mission.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_multilang.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_piste_sorry.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_rapport.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_sondes.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_veille.py +0 -0
- {phi_complexity-0.12.0 → phi_complexity-0.13.1}/tests/test_vitesse.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: phi-complexity
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.13.1
|
|
4
4
|
Summary: Multi-language code quality metrics based on Golden Ratio (φ) mathematical invariants and adiabatic equilibrium
|
|
5
5
|
Author-email: Tomy Verreault <contact@phidelia.dev>
|
|
6
6
|
License: MIT
|
|
@@ -27,7 +27,7 @@ Requires-Dist: tree-sitter<1.0,>=0.21; extra == "multilang"
|
|
|
27
27
|
Requires-Dist: tree-sitter-language-pack>=0.13; extra == "multilang"
|
|
28
28
|
Dynamic: license-file
|
|
29
29
|
|
|
30
|
-
#
|
|
30
|
+
# Phi-Complexity
|
|
31
31
|
[Pour M'offrir un café sur Buy Me a Coffee](https://www.buymeacoffee.com/spockoo)
|
|
32
32
|
|
|
33
33
|
> *Code quality metrics based on Golden Ratio (φ) mathematical invariants*
|
|
@@ -50,7 +50,7 @@ Unlike `pylint` (cultural rules) or `radon` (McCabe metrics), `phi-complexity` a
|
|
|
50
50
|
pip install git+https://github.com/spockoo/Phi-Complexity.git
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
-
> Note : le paquet
|
|
53
|
+
> Note : le paquet est aussi sur PyPI (`pip install phi-complexity`, 0.12.0) — identique à cet arbre depuis le 2026-10-01.
|
|
54
54
|
|
|
55
55
|
```bash
|
|
56
56
|
# Audit a file
|
|
@@ -213,6 +213,8 @@ phi_complexity/
|
|
|
213
213
|
├── sondes.py ← A/B probes (closure / obstruction poles)
|
|
214
214
|
├── piste_sorry.py ← Rigorous sorry inventory + import graph (Lean 4)
|
|
215
215
|
├── chemins_verifiables.py← Guided wiring candidates Lean formally decides
|
|
216
|
+
├── parseur_lean.py ← Robust Lean parser (regex-based, no size limit)
|
|
217
|
+
├── dependances.py ← Lean dependency graph (exact deps, transitive closure)
|
|
216
218
|
├── entropie.py ← Entropy lens (H, ΔH, EFT bounds)
|
|
217
219
|
├── oracle.py ← Exhibited reasoning traces
|
|
218
220
|
├── explorateur.py ← Interactive explorer
|
|
@@ -253,6 +255,11 @@ MIT — Tomy Verreault, 2026
|
|
|
253
255
|
|
|
254
256
|
## 📜 Historique des Versions (Changelog)
|
|
255
257
|
|
|
258
|
+
- **v0.13.0 (Extraction robuste)** :
|
|
259
|
+
- **Nouveau `phi_complexity/dependances.py`** : graphe de dépendances Lean — extraction exacte (fermeture transitive, tri topologique). Élimine le danger d'oubli d'une dépendance.
|
|
260
|
+
- **Nouveau `extraire_declarations_robuste()`** dans `parseur_lean.py` : extraction par regex, pas de limite de taille. Corrige l'échec silencieux de tree-sitter sur fichiers >5000 lignes (147 → 196 déclarations).
|
|
261
|
+
- **Corrigé** : extraction du corps par délimitation exacte (entre deux déclarations) au lieu de l'heuristique 50 lignes.
|
|
262
|
+
|
|
256
263
|
- **v0.12.0 (Chemins vérifiables)** :
|
|
257
264
|
- **Nouveau `phi piste-sorry`** : piste d'un sorry Lean 4 — inventaire rigoureux (commentaires/chaînes exclus), graphe d'imports, chantiers du registre.
|
|
258
265
|
- **Nouveau `phi chemins-verifiables`** : propose des candidats de câblage guidés, chacun identifié formellement comme une preuve ; Lean tranche mécaniquement (`PROUVÉ` / `RÉFUTÉ` / `INDÉCIDÉ`). Jamais le sorry lui-même, jamais un `sorry` déguisé.
|
|
@@ -264,4 +271,4 @@ MIT — Tomy Verreault, 2026
|
|
|
264
271
|
- **Durcissement** : l'instrument échoue bruyamment (`INSTRUMENT DÉGRADÉ`, exit 3) au lieu de mentir quand l'analyseur manque ; `phi snapshot` refuse une baseline dégradée sans `--force`.
|
|
265
272
|
- 386 tests verts, multi-langages (Python natif + tree-sitter générique).
|
|
266
273
|
|
|
267
|
-
> Note d'honnêteté : les numéros 0.1.
|
|
274
|
+
> Note d'honnêteté : les numéros 0.1.1–0.2.2 publiés avant octobre 2026 couvraient du scaffolding généré par bots, supprimé lors du nettoyage du 2026-10-01 (seule la 0.1.0 a été conservée). PyPI sert désormais la 0.12.0, identique à cet arbre. L'historique fiable commence à v0.11.0.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Phi-Complexity
|
|
2
2
|
[Pour M'offrir un café sur Buy Me a Coffee](https://www.buymeacoffee.com/spockoo)
|
|
3
3
|
|
|
4
4
|
> *Code quality metrics based on Golden Ratio (φ) mathematical invariants*
|
|
@@ -21,7 +21,7 @@ Unlike `pylint` (cultural rules) or `radon` (McCabe metrics), `phi-complexity` a
|
|
|
21
21
|
pip install git+https://github.com/spockoo/Phi-Complexity.git
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
> Note : le paquet
|
|
24
|
+
> Note : le paquet est aussi sur PyPI (`pip install phi-complexity`, 0.12.0) — identique à cet arbre depuis le 2026-10-01.
|
|
25
25
|
|
|
26
26
|
```bash
|
|
27
27
|
# Audit a file
|
|
@@ -184,6 +184,8 @@ phi_complexity/
|
|
|
184
184
|
├── sondes.py ← A/B probes (closure / obstruction poles)
|
|
185
185
|
├── piste_sorry.py ← Rigorous sorry inventory + import graph (Lean 4)
|
|
186
186
|
├── chemins_verifiables.py← Guided wiring candidates Lean formally decides
|
|
187
|
+
├── parseur_lean.py ← Robust Lean parser (regex-based, no size limit)
|
|
188
|
+
├── dependances.py ← Lean dependency graph (exact deps, transitive closure)
|
|
187
189
|
├── entropie.py ← Entropy lens (H, ΔH, EFT bounds)
|
|
188
190
|
├── oracle.py ← Exhibited reasoning traces
|
|
189
191
|
├── explorateur.py ← Interactive explorer
|
|
@@ -224,6 +226,11 @@ MIT — Tomy Verreault, 2026
|
|
|
224
226
|
|
|
225
227
|
## 📜 Historique des Versions (Changelog)
|
|
226
228
|
|
|
229
|
+
- **v0.13.0 (Extraction robuste)** :
|
|
230
|
+
- **Nouveau `phi_complexity/dependances.py`** : graphe de dépendances Lean — extraction exacte (fermeture transitive, tri topologique). Élimine le danger d'oubli d'une dépendance.
|
|
231
|
+
- **Nouveau `extraire_declarations_robuste()`** dans `parseur_lean.py` : extraction par regex, pas de limite de taille. Corrige l'échec silencieux de tree-sitter sur fichiers >5000 lignes (147 → 196 déclarations).
|
|
232
|
+
- **Corrigé** : extraction du corps par délimitation exacte (entre deux déclarations) au lieu de l'heuristique 50 lignes.
|
|
233
|
+
|
|
227
234
|
- **v0.12.0 (Chemins vérifiables)** :
|
|
228
235
|
- **Nouveau `phi piste-sorry`** : piste d'un sorry Lean 4 — inventaire rigoureux (commentaires/chaînes exclus), graphe d'imports, chantiers du registre.
|
|
229
236
|
- **Nouveau `phi chemins-verifiables`** : propose des candidats de câblage guidés, chacun identifié formellement comme une preuve ; Lean tranche mécaniquement (`PROUVÉ` / `RÉFUTÉ` / `INDÉCIDÉ`). Jamais le sorry lui-même, jamais un `sorry` déguisé.
|
|
@@ -235,4 +242,4 @@ MIT — Tomy Verreault, 2026
|
|
|
235
242
|
- **Durcissement** : l'instrument échoue bruyamment (`INSTRUMENT DÉGRADÉ`, exit 3) au lieu de mentir quand l'analyseur manque ; `phi snapshot` refuse une baseline dégradée sans `--force`.
|
|
236
243
|
- 386 tests verts, multi-langages (Python natif + tree-sitter générique).
|
|
237
244
|
|
|
238
|
-
> Note d'honnêteté : les numéros 0.1.
|
|
245
|
+
> Note d'honnêteté : les numéros 0.1.1–0.2.2 publiés avant octobre 2026 couvraient du scaffolding généré par bots, supprimé lors du nettoyage du 2026-10-01 (seule la 0.1.0 a été conservée). PyPI sert désormais la 0.12.0, identique à cet arbre. L'historique fiable commence à v0.11.0.
|