From 19a1eef936343f56cc858561365af3d58b22d73c Mon Sep 17 00:00:00 2001 From: Michele Bigi Date: Sun, 20 Sep 2026 18:32:47 +0200 Subject: [PATCH] Record 2.47.0 native graph rewrite in changelog and independence plan. --- periscope/dependency/frontend/content/changelog.md | 6 ++++++ .../src/docs/development/PINSCOPE_INDEPENDENCE_PLAN.md | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/periscope/dependency/frontend/content/changelog.md b/periscope/dependency/frontend/content/changelog.md index bb1ffeb..71aa350 100644 --- a/periscope/dependency/frontend/content/changelog.md +++ b/periscope/dependency/frontend/content/changelog.md @@ -2,6 +2,12 @@ What's new in Periscope. +## 2.47.0 — 2026-09-20 — Native DesignGraph builder + +`backend.periscopex.graph` is original Periscope code in `periscope/src` (not an overlay stamp). Inherited `dependency/.../graph.py` stays on disk. PCB via≠pad remains in native `parsers_kicad_pcb.py`. + +- [New] Periscope `graph.py`: classify refs, infer net type/voltage, BOM+netlist+optional `.kicad_pcb` nets → `DesignGraph`. + ## 2.46.0 — 2026-09-20 — Remove PinScope overlay copies from periscope/src Stamped near-identical copies of inherited modules are gone from `periscope/src`. Docker still copies `dependency/` then native `src`. Tests load graph/parsers/models/pipeline from `periscope/dependency` again. Native work stays: finding engine, PCB/placement, review session, job workspace, datasheet extract, KiCad PCB via≠pad parser, Periscope mark, local JWT, `pinscope_compat`. diff --git a/periscope/src/docs/development/PINSCOPE_INDEPENDENCE_PLAN.md b/periscope/src/docs/development/PINSCOPE_INDEPENDENCE_PLAN.md index 2efcd6d..1c5ea49 100644 --- a/periscope/src/docs/development/PINSCOPE_INDEPENDENCE_PLAN.md +++ b/periscope/src/docs/development/PINSCOPE_INDEPENDENCE_PLAN.md @@ -1,6 +1,6 @@ # Piano — indipendenza architettonica e di licenza da PinScope -**Stato:** split **2.38.0**. Overlay copies **reverted 2.46.0** — `periscope/src` is native-only again; inherited modules load from `periscope/dependency/`. Rewrite of PinScope modules starts after this fence is honest. Originals **not** deleted. Fork non staccato. +**Stato:** split **2.38.0**. Overlay copies **reverted 2.46.0**. **2.47.0** native `graph.py` rewrite (inherited copy kept). Next slices: models/parsers/taxonomy. Originals **not** deleted. Fork non staccato. **Gate Michele:** sostituire/smettere di chiamare un modulo `dependency/` solo dopo pytest + deploy smoke. Se la verifica fallisce, resta il path ereditato. **Sequenza:** split → sostituzione incrementale (C2…C5 overlay). **Mai** empty-delete. Auto-place fuori scope. AGPL resta. @@ -61,7 +61,7 @@ Trattare come **una dipendenza in-tree**, non come prodotto Periscope: | LLM DeepSeek | `periscope/src/backend/services/llm/deepseek_provider.py`, `local_skill.py`, `pdf_ingest.py` | NEW | | Review loop C2 | `review_session.py`, `review_parse.py`, `review_tools.py`, `review_context.py`, `constraints_lookup.py` | REPLACEMENT 2.39.0; PinScope files kept | | Job workspace | `periscope/src/backend/services/job_workspace.py` | REPLACEMENT 2.41.0; PCB/placement off `pipeline.py` | -| Graph / parsers / models / taxonomy | inherited in `dependency/` after **2.46.0 overlay revert**; rewrite slices start from graph.py | kept on disk | +| Graph / parsers / models / taxonomy | **graph.py REWRITE 2.47.0** in src; parsers/models/taxonomy still inherited in `dependency/` | AGPL recinto on disk | | Leftover helpers + analysis overlay | **REVERTED 2.46.0** — copies removed from src; files remain in dependency | OVERLAY undone | | Leftover services overlay | **REVERTED 2.46.0** | OVERLAY undone | | Leftover app/entry overlay | **REVERTED 2.46.0** | OVERLAY undone |