pcbjam/web/standalone
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Gergő Törcsvári 8a3fc914e5
collab: paste-collision sync-delete fix — lenient sibling restage, forced removals for deleted dirty roots, eeschema child-blob lifting
Field bug (2026-08-31): copy-pasting a symbol whose pins kept their source
uuids corrupted the sheet's ydoc on delete (pcbjam-shared: cross-parent
re-key fix, bumped here); the pcbnew tab's sibling mirror then silently
froze on the dangling refs, so "Update PCB from Schematic" with delete
enabled never removed the deleted symbols' footprints — until any later
edit resynced the sheet.

- standalone sibling-restage: render tolerantly past dangling item refs
  (docToFile onMissingItem) and console.warn on drops/failures instead of
  only the gated debug log — a frozen mirror is no longer silent.
- pcbnew_embind flushDiff: dirty roots that are already STRUCT_DELETED emit
  forced removals on both wires instead of being P-5-skipped (observed: 8
  footprints deleted on the board stayed in the board room forever); they
  are erased from the next baseline so a redo re-adds them.
- eeschema_embind blobFor: lift an unlifted child (field/pin/sheet-pin) to
  its screen root before serializing — the selection writer emits nothing
  for such a child standalone, so the entry used to reach JS as an empty
  envelope and be skipped, silently dropping the edit; residual empty blobs
  now warn instead of shipping hollow envelopes. SCH_MARKER_T (ERC
  artifacts, never file content) stays out of the snapshot and seed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MLPKYptXFrxHj5Gu7rhToz
2026-08-31 12:50:12 +02:00
..
public feat(site,demo): OG share cards + demo page meta ahead of the HN post 2026-07-04 09:14:44 +02:00
scripts jspi cleanup: remove the asyncify-era residue — dead code, conditionals, pipeline scaffolding, stale prose 2026-08-14 09:25:32 +02:00
src collab: paste-collision sync-delete fix — lenient sibling restage, forced removals for deleted dirty roots, eeschema child-blob lifting 2026-08-31 12:50:12 +02:00
.env.example feat(editor): report uncaught errors to Better Stack 2026-08-03 12:24:30 +02:00
index.html comments-ux: figma bubble pins, floating panel, seen/reactions/mentions UI, theme follow (0001 A–E + 0002) 2026-07-24 13:21:22 +02:00
package.json feat: load-path §5 client — gateway transport behind the YjsProvider seam 2026-08-18 14:02:40 +02:00
postcss.config.js refactor(web): split into GPL standalone editor + thin reference backend 2026-06-09 12:35:46 +02:00
tailwind.config.js refactor(web): split into GPL standalone editor + thin reference backend 2026-06-09 12:35:46 +02:00
tsconfig.json feat: standalone save/load routing + VITE_DOC_SOURCE ydoc mode 2026-06-12 14:05:40 +02:00
vite.config.ts e2e/CI: dual-engine suites, per-engine screenshots, SwiftShader retired, prod web suite, CI-coverage gate 2026-07-17 12:21:54 +02:00
vitest.config.ts fix(collab): dedupe yjs so @pcbjam/shared + standalone link ONE instance 2026-06-30 09:54:50 +02:00
wrangler.staging.jsonc ci: deploy isolated GPL staging stack 2026-08-07 11:52:25 +02:00