Commit Graph

45399 Commits

Author SHA1 Message Date
83672c8c05 Merge pull request 'feat(silo): DAG status display in Activity panel (#219)' (#228) from feat/silo-dag-activity into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #228
2026-02-15 00:12:00 +00:00
forbes
d7f5393510 feat(silo): update silo submodule — DAG status in Activity panel (#219)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Shows DAG sync status, validation results, and job lifecycle
events in the Database Activity dock widget via SSE signals.

Closes #219
2026-02-14 15:28:46 -06:00
f5412a58fc Merge pull request 'feat(silo): handle DAG and job SSE events (#218)' (#227) from feat/silo-sse-dag-events into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #227
2026-02-14 21:27:42 +00:00
forbes
7fb3aa4c01 feat(silo): update silo submodule — DAG and job SSE events (#218)
All checks were successful
Build and Test / build (pull_request) Successful in 39m3s
Extends SiloEventListener with signals for dag.updated,
dag.validated, and job lifecycle events (created, claimed,
progress, completed, failed, cancelled).

Closes #218
2026-02-14 15:22:35 -06:00
a5a1914892 Merge pull request 'feat(silo): headless runner entry points — dag_extract, validate, export (#217)' (#226) from feat/silo-runner into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #226
2026-02-14 21:19:53 +00:00
forbes
9da73fe6e7 feat(silo): update silo submodule — headless runner entry points (#217)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Adds runner.py with dag_extract, validate, and export entry points
for silorunner compute jobs.

Closes #217
2026-02-14 15:17:38 -06:00
4cb8a3a1ec Merge pull request 'feat(silo): push DAG on save and commit (#216)' (#224) from feat/silo-dag-on-save into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #224
2026-02-14 21:14:02 +00:00
forbes
fa92f5a4d9 feat(silo): update silo submodule — push DAG on save/commit (#216)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Wires DAG extraction into Silo_Save and Silo_Commit commands.
After successful file upload, extracts the feature DAG and pushes
it to the server. Failures warn but never block the save.

Closes #216
2026-02-14 15:11:00 -06:00
forbes
4a54e9b7cd feat(silo): update silo submodule — DAG API methods (#215)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Adds push_dag() and get_dag() to SiloClient:
- push_dag: PUT /api/items/{pn}/dag with nodes + edges
- get_dag: GET /api/items/{pn}/dag with optional revision filter

Closes #215
2026-02-14 15:09:08 -06:00
54b1baa393 Merge pull request 'fix: Insert Component uses Silo browser when available (#202)' (#222) from fix/insert-component-silo into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #222
2026-02-14 21:04:51 +00:00
forbes
8f02c0d6f2 fix: Insert Component uses Silo browser when available
All checks were successful
Build and Test / build (pull_request) Successful in 40m7s
When the silo workbench is loaded, Insert Component now opens the
Silo part browser (OpenItemWidget) instead of the OS file dialog.
Users can search both the Silo database and local files to find
components to insert.

Falls back to the OS file dialog if silo-mod is not installed.
Also adds .kc file support to the fallback file dialog filter.

Closes #202
2026-02-14 15:03:13 -06:00
40fef9be85 Merge pull request 'fix: add Create module to CMake build — fixes silo workbench not loading' (#221) from fix/create-module-install into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #221
2026-02-14 20:48:31 +00:00
8a8443607b Merge branch 'main' into fix/create-module-install
Some checks failed
Build and Test / build (pull_request) Has been cancelled
2026-02-14 20:48:20 +00:00
f6d588a7fa Merge pull request 'feat(silo): DAG extraction engine — extract_dag, classify_type, properties_hash' (#220) from feat/silo-dag-extraction into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #220
2026-02-14 20:48:09 +00:00
forbes
bae7c22e60 fix: add Create module to CMake build
Some checks failed
Build and Test / build (pull_request) Has been cancelled
The Create module (src/Mod/Create/) was never included in the build
because src/Mod/CMakeLists.txt did not call add_subdirectory(Create).

This meant:
- Mod/Create/InitGui.py was never installed, so the workbench loader
  (setup_kindred_workbenches) that loads silo and ztools never ran
- The install rules for mods/silo/freecad/ and mods/silo/silo-client/
  never executed, leaving the silo workbench files missing
- kc_format.py was also not listed in the Create install rule

Fixes the 'Ignoring unknown SiloWorkbench' error on startup.
2026-02-14 14:46:51 -06:00
forbes
99a53d0ab2 feat(silo): update silo submodule — DAG extraction engine (#214)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Points silo-mod to feat/silo-dag-extraction branch which adds:
- extract_dag(): two-pass document walk producing nodes + edges
- classify_type(): maps ~50 FreeCAD TypeIds to DAG node types
- compute_properties_hash(): SHA-256 of parametric inputs

Closes #214
2026-02-14 14:41:48 -06:00
2e6f06065a Merge pull request 'docs: Create module bootstrap sequence' (#213) from docs/create-module-bootstrap into main
Some checks failed
Deploy Docs / build-and-deploy (push) Successful in 40s
Build and Test / build (push) Has been cancelled
Reviewed-on: #213
2026-02-14 19:32:37 +00:00
forbes
b3a58a6d92 docs: Create module bootstrap sequence (#148)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Document the two-phase bootstrap: console-phase addon loading via
exec(), GUI-phase workbench registration, six deferred QTimer
callbacks (kc_format, silo origin, auth panel, first-start check,
activity panel, update checker), and the Gitea releases API polling
with skip/interval logic.
2026-02-14 13:30:52 -06:00
2c564bea8a Merge pull request 'docs: Datum Creator system reference' (#212) from docs/datum-creator-system into main
Some checks failed
Deploy Docs / build-and-deploy (push) Successful in 54s
Build and Test / build (push) Has been cancelled
Reviewed-on: #212
2026-02-14 19:28:48 +00:00
forbes
e443538548 docs: Datum Creator system reference (#141)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Document the ZTools Datum Creator: SelectionItem geometry classification,
16 creation modes (7 plane, 4 axis, 5 point), auto-detection scoring
algorithm, task panel UI layout, parameter sections, dispatch to
datums/core.py, and core implementation details.
2026-02-14 13:22:43 -06:00
be0f8128ec Merge pull request 'fix: standardize panel heading styles and prevent clipping' (#211) from fix/panel-heading-styles into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #211
2026-02-14 19:17:03 +00:00
forbes
48f5cc9311 fix: standardize panel heading styles and prevent clipping (#198, #199)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
- QDockWidget::title: add font-weight bold and text-align left to
  match ActionGroup header style
- ActionLabel header: add min-width 0 to prevent title clipping
  in narrow panels

Applied to both src/Gui/Stylesheets and resources/preferences copies.
2026-02-14 13:15:33 -06:00
cb4b3363ec Merge pull request 'fix: status bar text contrast — use Text color instead of Subtext0' (#210) from fix/status-bar-contrast into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #210
2026-02-14 19:11:10 +00:00
4334c9a494 Merge pull request 'fix: viewport background gradient — Catppuccin Mocha Overlay0/Mantle' (#209) from fix/viewport-background-gradient into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #209
2026-02-14 19:10:58 +00:00
abc53e6b93 Merge pull request 'fix: file dialog defaults to home dir instead of /etc/ssl/certs' (#208) from fix/file-dialog-default-path into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #208
2026-02-14 19:10:38 +00:00
forbes
332e14f1f7 fix: status bar text contrast — use Text color instead of Subtext0 (#195)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Change status bar text from #bac2de (Subtext0) to #cdd6f4 (Text)
for better readability against the #181825 Mantle background.
2026-02-14 13:08:02 -06:00
forbes
06475d5291 fix: viewport background gradient — Catppuccin Mocha Overlay0/Mantle (#188)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Replace 2-color Base→Crust gradient with 3-color Overlay0→Mantle→Overlay0
gradient in both KindredCreate preference pack and CatppuccinMocha theme.
Enables UseBackgroundColorMid for the 3-color effect.
2026-02-14 13:03:42 -06:00
forbes
172f5cddee fix: update silo submodule — cert browser default path (#203)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
2026-02-14 12:50:01 -06:00
f06bb96fdb Merge pull request 'feat: .kc Layer 1 — manifest auto-creation and platform file associations' (#204) from feat/kc-layer1-finish into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #204
2026-02-14 18:47:56 +00:00
forbes
04835c3629 feat: .kc Layer 1 — manifest auto-creation and platform file associations
Some checks failed
Build and Test / build (pull_request) Has been cancelled
kc_format.py:
- Auto-create silo/manifest.json with default fields (UUID, timestamps,
  username) when saving a .kc file that lacks one
- Update modified_at timestamp on each save
- KC_VERSION = 1.0

Platform integration:
- kindred-create.desktop: add application/x-kindred-create MIME type
- kindred-create.xml: register .kc glob patterns with dedicated MIME type
  (application/x-kindred-create), separate from .fcstd type
2026-02-14 12:47:01 -06:00
0b3d4b1274 Merge pull request 'fix: start page always closes on document open' (#207) from fix/start-page-blocks-document into main
Some checks failed
Build and Test / build (push) Has been cancelled
Reviewed-on: #207
2026-02-14 18:44:37 +00:00
forbes
444aaac1ee fix: start page always closes on document open (#192)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Remove the closeStart preference check so the start page MDI tab
always closes when a document is opened or created. Re-enable
QListView updates before closing to prevent Qt hang during widget
destruction.

Add hideEvent override as a safety net to re-enable disabled
QListView updates whenever the start page is hidden.
2026-02-14 12:42:17 -06:00
forbes
531526e70d fix: add missing Qt/Gui includes for ThemeSelectorWidget
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Build and Test / build (push) Successful in 1h10m43s
Add #include <QApplication> (for qApp macro), #include <QEvent> (for
QEvent::LanguageChange), and #include <Gui/Application.h> (for
Gui::Application::Instance) which were transitively available in
FreeCAD 1.0 but not in 1.2.
2026-02-14 11:21:54 -06:00
forbes
8e60dda810 fix: add missing Kindred test files from origin/main 2026-02-14 10:31:00 -06:00
forbes
831ad1376a fix: resolve PR conflicts with origin/main
Some checks failed
Build and Test / build (pull_request) Failing after 4m45s
- Remove .github/FUNDING.yml (upstream FreeCAD only, not Kindred)
- Sync .gitignore, .pre-commit-config.yaml, .pylintrc from origin/main
- Sync README.md, cMake/FindNETGEN.cmake from origin/main
- Sync pixi.lock, pixi.toml from origin/main
- Reset mods/ztools submodule pointer to match origin/main
2026-02-14 10:23:44 -06:00
forbes
9809ff852c feat: .kc file format — Layer 1 (format registration)
Cherry-picked from feat/kc-file-format-layer1 (723a8c98d5).
- Document.cpp: checkFileName() accepts .kc extension
- FreeCADInit.py: register .kc import type
- Dialog filters: Save As, Save Copy, Merge, Project Utility
- kc_format.py: DocumentObserver preserves silo/ entries across saves
- InitGui.py: register kc_format observer on startup
2026-02-13 14:10:36 -06:00
forbes
54031edede cherry-pick: ab71902a4c 2026-02-13 14:09:53 -06:00
forbes
3238b30fd8 cherry-pick: 2b0c6774c0 2026-02-13 14:09:53 -06:00
forbes
dcb11f5817 cherry-pick: f71decca08 2026-02-13 14:09:53 -06:00
forbes
9a222823c8 cherry-pick: 1f49e3fa6d 2026-02-13 14:09:52 -06:00
forbes
54f8006e24 cherry-pick #32: MDI pre-document tab for Silo new item (70118201b0) 2026-02-13 14:09:44 -06:00
forbes
30cc226bf6 cherry-pick #31: window flickering and icon clipping fix (bf637af4e4) 2026-02-13 14:09:34 -06:00
forbes
0925aa3753 cherry-pick #30: native Qt start panel + kindred:// URL (8b2ce4b73a) 2026-02-13 14:09:28 -06:00
forbes
1699770ee8 cherry-pick: 6773ca0dfd 2026-02-13 14:09:14 -06:00
forbes
2ec07466a9 cherry-pick: 4bf74cf339 2026-02-13 14:09:13 -06:00
forbes
965601ae2a cherry-pick #26: UI polish — Wayland scaling, menu icon size (cc5ba638d1) 2026-02-13 14:09:05 -06:00
forbes
fbd01f8c7d cherry-pick: c858706d48 2026-02-13 14:08:51 -06:00
forbes
ce77bf37cc cherry-pick #21: use Python API for viewDefaultOrientation (2f594dac0a) 2026-02-13 14:08:42 -06:00
forbes
a83be25a63 cherry-pick #19: cross-origin detection in SaveAs (a6e84552da) 2026-02-13 14:08:30 -06:00
forbes
ae9a8414d2 cherry-pick #18: document-origin tracking in window title (015df38328) 2026-02-13 14:08:22 -06:00