Merge origin/main into feat/explorer-grouped-view

This commit is contained in:
Zohaib Hassnain
2026-04-25 02:54:48 +05:00
11 changed files with 17 additions and 6 deletions
+1 -1
View File
@@ -63,7 +63,7 @@ jobs:
continue-on-error: true
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
uses: actions/upload-pages-artifact@v5
with:
path: ./site
+3
View File
@@ -117,3 +117,6 @@ node_modules/
# Frontend build artifacts (generated by Vite — do not track in git)
semantica/static/
# Local graph explorer test datasets
demo_out/
+2 -2
View File
@@ -1,4 +1,4 @@
FROM node:20-alpine AS frontend-builder
FROM node:25-alpine AS frontend-builder
WORKDIR /app/semantica-explorer
@@ -13,7 +13,7 @@ COPY semantica-explorer/ ./
RUN npm run build
FROM python:3.12-slim AS runtime
FROM python:3.14-slim AS runtime
WORKDIR /app
@@ -923,6 +923,7 @@ export function GraphWorkspace() {
sampleNodeIds?: string[];
}
| undefined;
const anchorNodeId = communityGroup?.anchorNodeId || communityGroup?.sampleNodeIds?.[0] || "";
if (anchorNodeId && graph.hasNode(anchorNodeId)) {
return {
@@ -1792,6 +1793,7 @@ export function GraphWorkspace() {
return groups;
}, [
canActivateFocusedMode,
displayState.groupedViewAvailable,
displayState.groupedViewReason,
handlePluginAction,
@@ -1925,6 +1925,7 @@ export function resolveDisplayGraph(
options?: {
aggregationEnabled?: boolean;
collapsedNeighborhoodNodeIds?: Iterable<string>;
groupedViewAvailable?: boolean;
},
): GraphDisplayResult {
const aggregationEnabled = options?.aggregationEnabled ?? true;
@@ -1934,6 +1935,7 @@ export function resolveDisplayGraph(
const displayState = resolveDisplayStateSnapshot(selectedNodeId, activePath, viewMode, {
aggregationEnabled,
collapsedNeighborhoodNodeIds,
groupedViewAvailable: options?.groupedViewAvailable,
});
const isFocusedView = viewMode === "focused" && Boolean(selectedNodeId) && graph.hasNode(selectedNodeId);
const isGroupedView = viewMode === "grouped";
+2 -1
View File
@@ -91,7 +91,8 @@ claude --plugin-dir ./plugins
Or inside a session:
```bash
/plugin install ./plugins
/plugin marketplace add ./plugins
/plugin install semantica@semantica-local
```
Verify:
+4
View File
@@ -1,5 +1,9 @@
{
"name": "semantica-local",
"owner": {
"name": "Hawksight AI",
"url": "https://github.com/Hawksight-AI/semantica"
},
"plugins": [
{
"name": "semantica",
+1 -2
View File
@@ -25,6 +25,5 @@
"mcp"
],
"skills": "./skills",
"agents": "./agents",
"hooks": "./hooks/hooks.json"
"agents": "./agents"
}