diff --git a/.changeset/graph-navigation-retrieval.md b/.changeset/graph-navigation-retrieval.md new file mode 100644 index 0000000..de0dfff --- /dev/null +++ b/.changeset/graph-navigation-retrieval.md @@ -0,0 +1,7 @@ +--- +'@inkcre/core': minor +'@inkcre/ext-mail': minor +'@inkcre/ext-twitter': minor +--- + +Add peer-local graph-navigation retrieval and the required Resolver preview presentation contract. diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2a78369..3df851d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -204,15 +204,6 @@ jobs: --core-package packages/core/package.json --artifact-directory extensions/twitter/dist/client-web - - name: Upload unit-test evidence on failure - if: failure() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 - with: - name: workspace-failure-evidence - path: test-results/vitest - if-no-files-found: ignore - retention-days: 7 - toolchain-shadow: name: Type-aware and TypeScript 7 shadow runs-on: ubuntu-latest diff --git a/AGENTS.md b/AGENTS.md index be1fd1a..b5df922 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -18,7 +18,7 @@ Reason in English. Communicate with humans in Chinese. - Run `svc status . --json`, then use `svc lookup --keyword` and `svc lookup --path` only for guidance required by the current pressure. - Read the active Task Packet, relevant durable owner, and nearest local `AGENTS.md` before editing. -- Resolve one semantic owner before adding durable material. Prefer code, types, tests, configuration, and CI for mechanically enforceable truth. +- Resolve one semantic owner before adding durable material. Prefer code, types, configuration, and CI for mechanically enforceable truth. - Before a reference-sensitive, logic-altering, or non-obviously-local durable mutation, state the target, objective `From -> To`, operation, blast radius, invariants, verification, and uncertainty. - Search before creating a type, utility, document, or abstraction. - Keep Task Packets compact and disposable. Add supporting entries only when a distinct owner and coordination pressure exist. @@ -31,6 +31,8 @@ Reason in English. Communicate with humans in Chinese. - Develop: `pnpm dev`, `pnpm dev:all`, or an explicit source lane documented in `docs/40-deployment/development-runtime.md`. - Required verification: `pnpm check`; required production outputs: `pnpm build`. - Shadow verification: `pnpm lint:type-aware` and `pnpm type-check:ts7`. +- Follow the organization-wide [Verification and Test Policy](https://github.com/InKCre/.github/blob/main/TESTING.md). + The admitted Playwright E2E suites do not authorize new automation by analogy. - Follow `.agents/prompts/code-for-human.md` for source changes. - Require explicit Human authorization before modifying source code and before commit, push, or external publication. Task Packet maintenance is exempt from the source gate. diff --git a/apps/client-web/package.json b/apps/client-web/package.json index 614bd90..9366445 100644 --- a/apps/client-web/package.json +++ b/apps/client-web/package.json @@ -8,8 +8,7 @@ "build": "run-p type-check \"build-only {@}\" --", "preview": "vite preview", "build-only": "vite build", - "type-check": "vue-tsc --build", - "test": "pnpm --dir ../.. exec vitest --project client-web" + "type-check": "vue-tsc --build" }, "dependencies": { "@codemirror/autocomplete": "^6.20.0", @@ -19,23 +18,14 @@ "@codemirror/state": "^6.5.2", "@codemirror/view": "^6.38.8", "@inkcre/core": "workspace:*", - "@inkcre/ui-web": "1.2.2", + "@inkcre/ui-web": "1.4.0", "@module-federation/runtime": "^0.21.4", "@supabase/postgrest-js": "^2.84.0", "@vue-flow/background": "^1.3.2", - "@vue-flow/controls": "^1.1.3", "@vue-flow/core": "^1.48.1", - "@vue-flow/minimap": "^1.5.4", "@vueuse/core": "^14.0.0", - "d3-force": "^3.0.0", - "dagre": "^0.8.5", "dayjs": "^1.11.19", - "graphology": "^0.26.0", - "graphology-communities-louvain": "^2.0.2", - "graphology-dag": "^0.4.1", - "graphology-shortest-path": "^2.1.0", "jose": "^6.1.2", - "ml-matrix": "^6.12.1", "pinia": "^3.0.3", "vscode-json-languageservice": "^5.6.4", "vscode-languageserver-textdocument": "^1.0.12", @@ -51,12 +41,9 @@ "@module-federation/enhanced": "^0.22.0", "@module-federation/vite": "^1.1.0", "@tsconfig/node22": "^22.0.2", - "@types/d3-force": "^3.0.10", - "@types/dagre": "^0.7.53", "@types/node": "^22.16.5", "@vitejs/plugin-vue": "^6.0.1", "@vitejs/plugin-vue-jsx": "^5.1.2", - "@vue/test-utils": "^2.4.6", "@vue/tsconfig": "^0.7.0", "get-port": "^7.1.0", "npm-run-all2": "^8.0.4", diff --git a/apps/client-web/src/App.vue b/apps/client-web/src/App.vue index 6ce1849..d58aa6c 100644 --- a/apps/client-web/src/App.vue +++ b/apps/client-web/src/App.vue @@ -6,6 +6,7 @@ import router from './router' import { createInkRouterAdapter } from './router' import { INK_ROUTER_KEY } from '@inkcre/ui-web' import { useRoute } from 'vue-router' +import RecallSearch from './components/recall/RecallSearch.vue' provide(INK_ROUTER_KEY, createInkRouterAdapter(router, useRoute())) @@ -25,6 +26,7 @@ const sidebarExpanded = ref(false) + diff --git a/apps/client-web/src/components/info-base/BlockInspectorPopup/BlockInspectorPopup.vue b/apps/client-web/src/components/info-base/BlockInspectorPopup/BlockInspectorPopup.vue index fdbce2c..c0899c2 100644 --- a/apps/client-web/src/components/info-base/BlockInspectorPopup/BlockInspectorPopup.vue +++ b/apps/client-web/src/components/info-base/BlockInspectorPopup/BlockInspectorPopup.vue @@ -78,7 +78,7 @@ async function ruminate(): Promise {