michele
348f390cce
Ingest hierarchical KiCad sheets; still skip .history.
...
Apri progetto collects every *.kicad_sch beside the .kicad_pro and
follows Sheetfile/(sheet)/file= into a subfolder. .history, .git, and
backups are not walked. Not only HubAudio.kicad_sch.
2026-09-21 08:28:49 +02:00
michele
027546b0bd
Stop hanging after KiCad folder permission.
...
Apri progetto walked every nested file (HubAudio .history ~2000) so
onFilesChange never ran and Next stayed disabled. Read only kicad_pro,
sch, and pcb in the project dir; timeout to an error; enable Next when
.kicad_pro is in.
2026-09-21 08:18:01 +02:00
michele
a0b89365c2
Type directory picker without DOM FileSystemDirectoryHandle.entries.
2026-09-21 08:00:08 +02:00
michele
278f176859
Open a real folder picker for Apri progetto KiCad.
...
The Mac Carica dialog was a file input (accept empty, no working
webkitdirectory). Use showDirectoryPicker or a hidden input with
webkitdirectory=true and no accept. Ignore empty/cancel picks.
2026-09-21 07:59:06 +02:00
michele
fbf2fc87a6
Detect HubAudio.kicad_pro from folder pick, not only File.name.
...
Safari/macOS often puts .kicad_pro on webkitRelativePath while name is
the stem. Match both, sniff JSON if the suffix is missing, and set
webkitdirectory on the input DOM so the folder picker actually recurses.
2026-09-21 07:54:35 +02:00
michele
bfb781f94f
Open a KiCad project folder: schematic + PCB, no netlist.
...
Apri progetto KiCad picks the folder that contains .kicad_pro and loads
sibling hierarchical sheets and the matching .kicad_pcb. Connectivity and
MPN/PNM/Value come from the schematic; a leftover PADS .asc is ignored.
A lone .kicad_pro upload is rejected unless that path exists on disk.
2026-09-21 07:26:01 +02:00
michele
ec2ffd6107
Join KiCad hierarchical PNM/MPN when the BOM CSV omits a designator.
...
Child-sheet symbol fields fill graph mpn; empty sheet fields stay empty. A sibling .kicad_sch next to a PADS netlist is used the same way.
2026-09-21 01:56:13 +02:00
michele
82d185ccf4
Treat KiCad PNM as MPN and skip missing U* as INSUFFICIENT_EVIDENCE.
...
HubAudio CSV has no U13–U39 rows; those refs stay without an invented part number. IC Value fills MPN when PNM is blank. Progress no longer labels netlist-only ICs as “no MPN in BOM”.
2026-09-21 00:53:06 +02:00
michele
e31981c812
Persist recovered ferrite Z by comparing against the raw JSON.
...
ComponentModel validation already fills impedance from quoted ohm@freq, so snapshotting the in-memory specs skipped the write.
2026-09-21 00:33:17 +02:00
michele
72bcab50a1
Fill ferrite bead impedance from the MPN datasheet PDF.
...
graph_build searches project uploads and library blob refs, persists recovered Z, and still loads when the PDF has no impedance. Ohms are not written to henries.
2026-09-21 00:29:12 +02:00
michele
a2d5900b64
Recover ferrite bead Z from datasheet evidence without aborting graph_build.
2026-09-21 00:19:06 +02:00
michele
51c09b2176
Point Emmaforo note at completed HubAudio MODE=pcb wall.
2026-09-20 23:54:21 +02:00
michele
9a2320f9e2
Record HubAudio MODE=pcb wall times including DeepSeek AI.
2026-09-20 23:54:09 +02:00
michele
8040686e8b
Allow ferrite beads without impedance_ohm to load.
...
Missing Z is optional, not invented. graph_build skips bad models
instead of aborting. Other inductors still require value_henries.
2026-09-20 23:08:33 +02:00
michele
63c85a4319
Point Emmaforo timing note at HubAudio measured seconds.
2026-09-20 23:00:27 +02:00
michele
6b605d1cf2
Record HubAudio PCB parse, Z0, and checks wall times.
2026-09-20 23:00:09 +02:00
michele
a001971248
Note HubAudio PCB timing: no stored .kicad_pcb, LLM not timed.
2026-09-20 21:31:17 +02:00
michele
39169b33b8
Note live Emmaforo PCB exam wall times (parse, Z0, checks, AI).
...
Read-only docker exec on stored pcb.kicad_pcb. No pipeline change, no deploy.
2026-09-20 21:27:27 +02:00
michele
7a32c552bb
Stamp 2.60.0 incomplete PCB exam and owner project delete.
...
Partial layouts still use MODE=pcb. Missing copper is INSUFFICIENT or
skipped, never Euclidean stand-in tracks. Via≠Pad unchanged. DELETE
/api/projects/{id} is owner-only with a dashboard confirm dialog.
2026-09-20 21:17:26 +02:00
michele
ed3fff565d
Stamp 2.59.0 Docker leftover seams only, not PinScope product.
...
Images copy periscope/src, vendor/, and skipped Clerk/shadcn/billing/GCS
files. dependency/ stays in git. Audit written; FastAPI boots with
PYTHONPATH=src.
2026-09-20 21:03:26 +02:00
michele
22bc075c58
Stamp 2.58.0 native JWT middleware and useAuthApi.
...
Same skip paths, Bearer/query token, Clerk RS256 leftover, and local HS256
contract. routers/auth.py, user records, and AUTH_JWT_SECRET are untouched.
2026-09-20 21:01:51 +02:00
michele
3a666ea8ae
Stamp 2.57.0 native package.json, requirements, and unused Docker copies.
...
Frontend periscope-web manifests, pip requirements, and EDA logos/examples
overlay from src. Docker installs from those files. Unused PinScope public
blobs are dockerignored. Landing png/gif stay in dependency until native
captures exist.
2026-09-20 21:00:21 +02:00
michele
7a377889ae
Overlay live legal and changelog markdown from periscope/src.
...
privacy, terms, file-guide, and changelog stay Periscope operator text at 2.56.0. Docker copies src changelog last; the frontend image keeps content/ at runtime.
2026-09-20 20:37:11 +02:00
michele
6b1fe5be00
Stamp 2.56.0 after native taxonomy and skills overlay.
...
Compose mounts src/taxonomy. Local DeepSeek skills; no Console upload.
2026-09-20 20:31:50 +02:00
michele
00e5df8a36
Overlay app favicon.ico from the Periscope mark.
...
Replaces the leftover OSS Next.ico so /favicon.ico matches favicon_io.
2026-09-20 20:30:36 +02:00
michele
ee160a5df9
Overlay native taxonomy JSON and local DeepSeek skills.
...
repo_paths and compose mount src/taxonomy first. Docker copies dependency then src for taxonomy and skills. SKILL.md prose is rewritten; schema IDs and validate contracts stay. Manifest 1.14.0. Do not run upload_skills.py.
2026-09-20 20:30:25 +02:00
michele
28a4dc8255
Stamp 2.55.0 after Next config and CSP overlay rewrite.
...
package.json stays inherited. Legal markdown and changelog remain in dependency.
2026-09-20 20:20:49 +02:00
michele
6f3e714a54
Rewrite CSP host seam and middleware package marker.
...
Export names stay for the cloud overlay. JWT still lives only in inherited auth.py.
2026-09-20 20:19:58 +02:00
michele
739e6f7f17
Rewrite Next, ESLint, PostCSS, and tsconfig overlay.
...
CSP, login/register redirects, pdfjs-dist externals, and canvas alias stay the same. package.json is unchanged.
2026-09-20 20:19:37 +02:00
michele
cdfe5812cf
Stamp 2.54.0 after leftover frontend widget rewrite.
...
PDF sheet, theme, upload zone, reviewed hooks, and globals.css overlay from periscope/src.
2026-09-20 20:13:44 +02:00
michele
44e86e258e
Rewrite app color tokens and fade-up animation.
...
Tailwind/shadcn imports, light/dark oklch values, and .animate-fade-up stay the same so layout does not shift.
2026-09-20 20:12:54 +02:00
michele
72b4b20665
Rewrite reviewed-finding localStorage hooks.
...
Dashboard count and report toggle still migrate legacy keys and skip the first persist write.
2026-09-20 20:12:20 +02:00
michele
7d82358e19
Rewrite project file drop zone.
...
Folder drops still skip KiCad backups/pretty/3dmodels; dashed upload chrome is unchanged.
2026-09-20 20:11:48 +02:00
michele
c5cd98587f
Rewrite class-based theme provider and toggle.
...
next-themes still defaults to dark with no system follow. Clerk theme wrapper stays inherited.
2026-09-20 20:11:20 +02:00
michele
b3566db828
Rewrite datasheet PDF sheet overlay.
...
Right-side Sheet still mounts PdfViewerPanel only while open; shadcn Sheet stays imported.
2026-09-20 20:11:00 +02:00
michele
d4070081c8
Stamp 2.53.0 after site, legal, OG, and BFF rewrite.
...
Excel export headers are mutable for tsc. Changelog and APP_VERSION match the native frontend overlay.
2026-09-20 20:06:15 +02:00
michele
292d2e2077
Rewrite Next.js local BFF routes and mock catalog.
...
Projects, report, and graph JSON handlers overlay from periscope/src. Clerk proxy stays the inherited open-core seam.
2026-09-20 20:04:04 +02:00
michele
93f6fad3e7
Rewrite legal page shells and Open Graph images.
...
Overlay legal markdown chrome, changelog timeline, EDA file-guide tabs, and OG/Twitter images from periscope/src instead of inherited PinScope copies.
2026-09-20 20:02:57 +02:00
michele
a9ce71f17a
Rewrite frontend site identity, version stamp, and Excel export.
...
Changelog remains the source of APP_VERSION via overlay sync-version.mjs.
2026-09-20 20:00:15 +02:00
michele
d21a303e8b
Stamp 2.52.0 after leftover frontend rewrite.
...
App and marketing pages overlay from src. Auth and billing seams unchanged.
2026-09-20 19:53:58 +02:00
michele
a011351828
Rewrite leftover frontend pages into src overlay.
...
Dashboard, project, report, progress, admin, feedback, and marketing
keep routes and layout. Billing/Clerk/analytics stay imported seams.
2026-09-20 19:53:33 +02:00
michele
2613678442
Rewrite frontend types and HTTP client in src.
...
Export names match the leftover pages. Billing HTTP wrappers stay so
gateway seams are not restyled here.
2026-09-20 19:41:15 +02:00
michele
bac75a2fba
Stamp 2.51.0 after native app leftover rewrite.
...
Settings, FastAPI entry, worker, and leftover routers now resolve from
src. Auth router and JWT middleware are unchanged.
2026-09-20 19:32:50 +02:00
michele
d0fd37c1b5
Rewrite leftover HTTP routers except auth.
...
Project ingest, pipeline enqueue/SSE, reports, admin, contact, survey,
and feedback now resolve from src. Auth router is unchanged.
2026-09-20 19:31:41 +02:00
michele
7c3c7d17d8
Rewrite FastAPI app and pipeline worker entrypoint.
...
Worker still refuses to import backend.main. Auth router is mounted
unchanged; CORS stays outermost so 401s keep headers.
2026-09-20 19:23:33 +02:00
michele
d0bbd582a8
Rewrite Settings as native Periscope config.
...
DeepSeek remains the only live provider; leftover Anthropic env names
are coerced or ignored. Skills manifest is resolved across the split tree.
2026-09-20 19:21:52 +02:00
michele
40b251c387
Stamp 2.50.0 after pipeline and leftover analysis rewrite.
...
Full pytest is green. Inherited copies stay on disk; auth untouched.
2026-09-20 19:14:50 +02:00
michele
82ffa755cd
Rewrite leftover analysis modules imported by src.
...
validate/validation_tools alias native lookup and review tools. Passive
resolve, derating, BOM summary, pin-mux, LED current, and net-function
tokens are original Periscope code. finding_engine and pcb_* unchanged.
2026-09-20 19:14:20 +02:00
michele
3d7fa21eb6
Rewrite analysis pipeline, projects, email, and LCSC client.
...
Native job_workspace / datasheet_extract / review_session stay the live
BOM-extract-graph-review path. Project writes follow owner_user_id.
2026-09-20 19:10:28 +02:00
michele
6a4903fa3a
Rewrite job_runner, event_bridge, cost estimator, and DigiKey client.
...
Local pid-file dispatch stays the self-host path. DigiKey still rejects unrelated MPNs. Inherited copies remain on disk.
2026-09-20 18:57:58 +02:00