Commit Graph

  • 48367da820 fix(diagnostics): refuse absolute subprograms instead of normalizing aj 2026-10-05 22:04:47 -04:00
  • 65d320d2e5 fix(ui): report capture failures in the Plan Cutting dialog aj 2026-10-05 21:52:30 -04:00
  • 1b422ef99a fix(diagnostics): read absolute subprogram holes and refuse unknown codes aj 2026-10-05 21:52:30 -04:00
  • faf3c9bcc4 fix(ui): detach disposed plate views and keep repeated layout parts aj 2026-10-05 21:39:58 -04:00
  • 8590f21c9c fix(cutting): block overlapping plates and preview only fresh plans aj 2026-10-05 21:39:58 -04:00
  • 1769b8907d fix(ui): post cutting-plan progress and results to the dialog thread aj 2026-10-05 21:27:42 -04:00
  • 187234f459 feat(ui): preview and apply unified cutting plans aj 2026-10-05 21:21:38 -04:00
  • a0ac7e5756 feat(ui): redraw the plate view when its plate is reordered aj 2026-10-05 21:21:38 -04:00
  • 9a4f73b924 feat(cutting): plan and apply plates as one desktop batch aj 2026-10-05 21:21:38 -04:00
  • 248972c6e7 fix(ui): keep refused BOM cell text out of the rows on every commit path aj 2026-10-05 18:09:45 -04:00
  • 124d70afe7 feat(ui): edit quantities in the BOM part table aj 2026-10-05 18:01:54 -04:00
  • 81d3253580 feat(bom): validate edited part quantities aj 2026-10-05 17:56:35 -04:00
  • 0ac72fad70 fix(bom): combine BOM rows that use the same drawing in one nest aj 2026-10-05 17:52:32 -04:00
  • b83aeb0e41 fix(bom): find the drawing for rows that still need a thickness aj 2026-10-05 17:50:54 -04:00
  • f4d1d45c81 fix(bom): match BOM file names that include the drawing extension aj 2026-10-05 17:46:48 -04:00
  • ca153a1c20 refactor(bom): build import rows, groups and nests in OpenNest.IO aj 2026-10-05 17:45:16 -04:00
  • 03b3ed47b2 fix(nest-info): keep material grade and density when the name is unchanged aj 2026-10-05 16:31:00 -04:00
  • 1b5a6bf6da ci(release): kill and name hung Windows tests in the release build aj 2026-10-05 16:26:22 -04:00
  • 3fc32e56e1 feat(ui): drag-and-drop to open .nest files in Database mode ajandClaude Sonnet 5 2026-10-05 14:50:36 -04:00
  • 3a9bd08f39 fix(ui): fix SavedNestsForm maximize bounds, lighten grid, format file size ajandClaude Sonnet 5 2026-10-05 14:19:08 -04:00
  • 4a55d6664c refactor(ui): reorganize menu bar - move arrangement ops into Plate ajandClaude Sonnet 5 2026-10-05 14:18:42 -04:00
  • 3a8419e6e9 fix(ui): show the newly selected plate when a Plates row is chosen aj 2026-10-05 12:47:56 -04:00
  • f145826309 Merge branch 'master' of https://git.thecozycat.net/aj/OpenNest aj 2026-10-05 12:35:13 -04:00
  • da0c54f280 feat(ui): preview the highlighted nest's plates in the Open dialog aj 2026-10-05 11:44:22 -04:00
  • 9920aba6eb feat(ui): open Database-mode nests from a larger saved-nest browser aj 2026-10-05 11:26:03 -04:00
  • 0446127e11 feat(data): build saved-nest plate and drawing details aj 2026-10-05 11:26:02 -04:00
  • eda4a846f0 fix(irregular): charge nested block-fill cost against the work budget ajandClaude Sonnet 5 2026-10-05 07:57:24 -04:00
  • 32db086384 perf(irregular): cap surplus rows in private stripe fills aj 2026-10-05 09:03:49 -04:00
  • 5f67a51bf1 style(tests): sort imports in fill regression fixtures aj 2026-10-05 09:03:49 -04:00
  • 20f8b046de fix(cutting): fingerprint only the built-in settings types aj 2026-10-05 03:16:27 -04:00
  • bb104a07bb fix(cutting): fingerprint settings state without executing foreign code aj 2026-10-05 02:45:20 -04:00
  • ea36c47a30 docs(cutting): describe Apply freshness, installer and nested-part bounds aj 2026-10-05 00:29:47 -04:00
  • b8afcc6fdd perf(cutting): build finished ordinals once per search expansion aj 2026-10-05 00:29:47 -04:00
  • 1d8c5fe274 fix(cutting): create plate-scoped requests through a factory aj 2026-10-05 00:28:59 -04:00
  • e43a7c99d0 fix(cutting): find nested parts from material bounds aj 2026-10-05 00:27:31 -04:00
  • b9b475ab77 fix(cutting): keep plan installation behind the verified service aj 2026-10-05 00:25:43 -04:00
  • d37b38622f fix(cutting): treat classification, settings and malformed programs as stale aj 2026-10-05 00:23:48 -04:00
  • 4bbd8454b5 feat(cutting): order cutoffs and nested parts before their hosts aj 2026-10-05 00:01:29 -04:00
  • f3bca26fb9 refactor(sequencing): share the cutoff crossing rule with cutting planning aj 2026-10-04 23:50:58 -04:00
  • 9c530ca7d2 feat(cutting): apply verified plans atomically aj 2026-10-04 23:48:28 -04:00
  • ebc54f0653 refactor(cutting): move owned program copies into Core aj 2026-10-04 23:47:56 -04:00
  • 7127884584 fix(cutting): start tabbed lead-outs at the trimmed cut end aj 2026-10-04 23:13:41 -04:00
  • 6f7652ee83 fix(cutting): preserve clean geometry through shared graph rotation aj 2026-10-04 22:26:22 -04:00
  • fef93cbfa5 style(cutting): format emission characterization initializers aj 2026-10-04 22:10:41 -04:00
  • cf615dcef8 docs(cutting): document exact replay and fixed-program refusals aj 2026-10-04 22:02:56 -04:00
  • e8d974a2db fix(cutting): certify complete selected contour programs aj 2026-10-04 21:58:14 -04:00
  • 9f7580a486 fix(cutting): bind replay proposals to exact captured pose bits aj 2026-10-04 21:51:43 -04:00
  • fb7ef6fd0d fix(cutting): retain authored motion metadata in owned programs aj 2026-10-04 21:48:52 -04:00
  • e00aa113a0 fix(cutting): validate original graphs before capture clones aj 2026-10-04 21:42:15 -04:00
  • d7204e8d07 fix(cutting): share only exact prepared circle programs aj 2026-10-04 21:30:47 -04:00
  • 1597ee9069 fix(cutting): guard material runtime semantics before capture aj 2026-10-04 21:26:52 -04:00
  • d1109aaa43 fix(cutting): refuse uncertain native circular contacts aj 2026-10-04 21:22:29 -04:00
  • 085edeea3b docs(cutting): describe joint planning and refusal boundaries aj 2026-10-04 21:19:45 -04:00
  • 70d886e4cf feat(cutting): jointly plan contour order and entry points aj 2026-10-04 21:12:55 -04:00
  • 018e4e3dd4 feat(cutting): validate actual leads against owned material aj 2026-10-04 20:50:43 -04:00
  • e71fcea73d feat(cutting): emit owned contours in explicit order aj 2026-10-04 20:45:15 -04:00
  • 6addad7b2e test(cutting): characterize retained contour emission aj 2026-10-04 20:26:17 -04:00
  • 7451596047 test(cutouts): keep the repeated-call determinism test, skipped on the open Fill defect aj 2026-10-04 20:07:52 -04:00
  • 15cca0efd5 feat(cutouts): fill a cutout with a shifted Fill lattice aj 2026-10-04 19:56:05 -04:00
  • 4842b80ceb fix(fill): pick FillPattern winners in angle order, not thread order aj 2026-10-04 19:50:30 -04:00
  • 418f75916b refactor(engine): share the private-plate Fill run between blocks and future callers aj 2026-10-04 19:40:49 -04:00
  • a15c54fbaf test(desktop): fail WinForms tests on UI-callback exceptions per STA thread aj 2026-10-04 18:40:48 -04:00
  • 67fb80e660 ci: kill and name hung Windows tests instead of holding the runner aj 2026-10-04 18:39:08 -04:00
  • 5f9e8814a7 test(desktop): fix Windows-only WinForms and cross-platform test failures ajandClaude Sonnet 5 2026-10-04 18:24:20 -04:00
  • 3ba8f4e3b2 fix(desktop): avoid AutoNest stock grid hang and name the busy export target ajandClaude Sonnet 5 2026-10-04 18:24:03 -04:00
  • 2a5ebf1e8a ci: run WinForms and front-end tests on a Windows runner aj 2026-10-04 12:39:57 -04:00
  • 90587803be fix(desktop): apply saved units to new and BOM-created nests aj 2026-10-04 12:03:22 -04:00
  • b7dc7dee13 fix(defaults): accept only defined unit names, with a caller fallback aj 2026-10-04 12:01:12 -04:00
  • 39a15aee14 fix(defaults): treat a read-denied defaults file as invalid aj 2026-10-04 11:59:08 -04:00
  • 23d258b886 perf(geometry): allocate entity IDs from a salted atomic sequence aj 2026-10-03 10:59:04 -04:00
  • 60d3915af2 docs(test): use Release for routine cross-platform suites aj 2026-10-03 10:45:21 -04:00
  • c989ba6fd0 ci: run cross-platform suites and synthetic gate in parallel aj 2026-10-02 22:29:38 -04:00
  • 761cee7c1f feat(cutting): plan verified part order from fixed programs aj 2026-10-02 21:56:14 -04:00
  • c49c387af5 merge: integrate exact-contact rotated rectangle repair aj 2026-10-02 20:50:19 -04:00
  • 9e15d5dceb fix(desktop): track only the latest database browse request aj 2026-10-02 20:22:24 -04:00
  • eace08f351 fix(server): reject NUL characters in nest query search aj 2026-10-02 20:16:00 -04:00
  • 96267e760e feat(desktop): page and filter database nests on the server aj 2026-10-02 20:06:52 -04:00
  • 646d4c3975 feat(server): sort nest queries by allowlisted columns aj 2026-10-02 19:57:35 -04:00
  • 1fadf6c4d3 feat(server): add bounded nest query with SQL-side search aj 2026-10-02 19:52:35 -04:00
  • f53bead0a8 fix(server-ci): verify exported image identity across Docker stores aj 2026-10-02 19:15:53 -04:00
  • 1ec79ae594 ci(server): validate and publish versioned GHCR images aj 2026-10-02 18:53:00 -04:00
  • d428357c8b feat(server): harden Docker runtime and document persistent deployment aj 2026-10-02 17:23:36 -04:00
  • 142c77a27f fix(server): serialize SQLite access and validate storage health aj 2026-10-02 16:31:46 -04:00
  • b39509a6a3 fix(server): update SQLite to patched native library aj 2026-10-02 16:10:24 -04:00
  • 6d1e0cb896 docs: list server integration tests in agent instructions aj 2026-10-02 16:06:31 -04:00
  • 5d8874a9e7 fix(server): reject malformed multipart uploads with 400 aj 2026-10-02 15:38:57 -04:00
  • b17fe1a318 test(server): cover HTTP storage contracts with isolated SQLite aj 2026-10-02 15:37:44 -04:00
  • 7999e3cdde fix(server): repair Docker build and verify persistent client round trips aj 2026-10-02 14:17:13 -04:00
  • 14a7ce43a7 test: prevent selected-area fill from crossing sheet cutoffs aj 2026-10-01 20:43:44 -04:00
  • bd5db59e42 fix(irregular): preserve analytic line bounds after polygon cleanup aj 2026-10-01 20:45:22 -04:00
  • 25755a8850 fix(irregular): keep exact bounds for line-only part outlines aj 2026-10-01 18:44:51 -04:00
  • c7b4ba4457 test(irregular): cover exact-contact rotated rectangle placement aj 2026-10-01 18:44:51 -04:00
  • d8b763da13 test(irregular): add six synthetic nests and bounded validity gate aj 2026-10-01 17:39:08 -04:00
  • c01a348243 feat(irregular): offer certified Fill blocks for repeated parts aj 2026-10-01 16:17:25 -04:00
  • e886bcfa35 fix(overlap): retain unchanged pair highlights during rechecks aj 2026-10-01 15:10:17 -04:00
  • 4fa0f636ce ci: run cross-platform suites on pull requests and master aj 2026-10-01 09:55:16 -04:00
  • 94e23e4b7a feat(irregular): place best-fit pairs through member free regions aj 2026-10-01 12:31:38 -04:00
  • 591d08c627 docs: make GitHub the primary repository aj 2026-10-01 08:34:01 -04:00
  • 6b6928213d fix(packing): apply work-area slack only at plate boundaries aj 2026-10-01 08:15:57 -04:00
  • a26e663f01 feat(geometry): find maximal rectangles inside any region aj 2026-10-01 07:29:05 -04:00