helloadhavan/github_issues huggingface dataset:
Repository: ollama/ollama
Pull request: Add AstrBot to Community Integrations

Hi, AstrBot is a user-friendly LLM-based multi-platform chatbot with a WebUI, and it supports RAG features, LLM agents, and plugins integration.

Opensource Repo: https://github.com/Soulter/AstrBot
Related docs: https://astrbot.app/config/providers/provider-ollama.html

Changed files:
filename: README.md
patch: @@ -387,6 +387,7 @@ See the [API documentation](./docs/api.md) for all endpoints.
 - [yla](https://github.com/danielekp/yla) (Web interface to freely interact with your customized models)
 - [LangBot](https://github.com/RockChinQ/LangBot) (LLM-based instant messaging bots platform, with Agents, RAG features, supports multiple platforms)
 - [1Panel](https://github.com/1Panel-dev/1Panel/) (Web-based Linux Server Management Tool)
+- [AstrBot](https://github.com/Soulter/AstrBot/) (User-friendly LLM-based multi-platform chatbot with a WebUI, supporting RAG, LLM agents, and plugins integration)
 
 ### Cloud
Repository: facebook/react
Pull request: [tests] remove pretest compiler script

This shouldn't be needed now that the lint rule was move

Changed files:
filename: .github/workflows/runtime_build_and_test.yml
patch: @@ -280,6 +280,35 @@ jobs:
         if: steps.node_modules.outputs.cache-hit != 'true'
       - run: yarn test ${{ matrix.params }} --ci --shard=${{ matrix.shard }}
 
+  # Hardcoded to improve parallelism
+  test-linter:
+    name: Test eslint-plugin-react-hooks
+    needs: [runtime_compiler_node_modules_cache]
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v4
+      - uses: actions/setup-node@v4
+        with:
+          node-version-file: '.nvmrc'
+          cache: yarn
+          cache-dependency-path:  |
+            yarn.lock
+            compiler/yarn.lock
+      - name: Restore cached node_modules
+        uses: actions/cache@v4
+        id: node_modules
+        with:
+          path: |
+            **/node_modules
+          key: runtime-and-compiler-node_modules-v6-${{ runner.arch }}-${{ runner.os }}-${{ hashFiles('yarn.lock', 'compiler/yarn.lock') }}
+          restore-keys: |
+            runtime-and-compiler-node_modules-v6-${{ runner.arch }}-${{ runner.os }}-
+            runtime-and-compiler-node_modules-v6-
+      - run: yarn install --frozen-lockfile
+        if: steps.node_modules.outputs.cache-hit != 'true'
+      - run: ./scripts/react-compiler/build-compiler.sh && ./scripts/react-compiler/link-compiler.sh
+      - run: yarn workspace eslint-plugin-react-hooks test
+        
   # ----- BUILD -----
   build_and_lint:
     name: yarn build and lint

filename: package.json
patch: @@ -129,7 +129,6 @@
     "lint-build": "node ./scripts/rollup/validate/index.js",
     "extract-errors": "node scripts/error-codes/extract-errors.js",
     "postinstall": "node ./scripts/flow/createFlowConfigs.js",
-    "pretest": "./scripts/react-compiler/build-compiler.sh && ./scripts/react-compiler/link-compiler.sh",
     "test": "node ./scripts/jest/jest-cli.js",
     "test-stable": "node ./scripts/jest/jest-cli.js --release-channel=stable",
     "test-www": "node ./scripts/jest/jest-cli.js --release-channel=www-modern",

filename: scripts/jest/config.base.js
patch: @@ -5,6 +5,7 @@ module.exports = {
   modulePathIgnorePatterns: [
     '<rootDir>/scripts/rollup/shims/',
     '<rootDir>/scripts/bench/',
+    '<rootDir>/packages/eslint-plugin-react-hooks/',
   ],
   transform: {
     '^.+babel-plugin-react-compiler/dist/index.js$': [
Repository: ollama/ollama
Pull request: build: use correct GGML_HIP_NO_VMM definition for ggml-hip


Changed files:
filename: CMakeLists.txt
patch: @@ -109,7 +109,7 @@ if(CMAKE_HIP_COMPILER)
             target_compile_definitions(ggml-hip PRIVATE GGML_CUDA_NO_PEER_COPY)
         endif()
 
-        target_compile_definitions(ggml-hip PRIVATE GGML_CUDA_NO_VMM)
+        target_compile_definitions(ggml-hip PRIVATE GGML_HIP_NO_VMM)
 
         set(OLLAMA_HIP_INSTALL_DIR ${OLLAMA_INSTALL_DIR}/rocm)
         install(TARGETS ggml-hip
Repository: ollama/ollama
Pull request: build: set GGML_CUDA_NO_VMM=1 for ROCm builds


Changed files:
filename: CMakeLists.txt
patch: @@ -106,9 +106,11 @@ if(CMAKE_HIP_COMPILER)
         add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/ml/backend/ggml/ggml/src/ggml-hip)
 
         if (WIN32)
-            target_compile_definitions(ggml-hip PRIVATE GGML_CUDA_NO_PEER_COPY=1)
+            target_compile_definitions(ggml-hip PRIVATE GGML_CUDA_NO_PEER_COPY)
         endif()
 
+        target_compile_definitions(ggml-hip PRIVATE GGML_CUDA_NO_VMM)
+
         set(OLLAMA_HIP_INSTALL_DIR ${OLLAMA_INSTALL_DIR}/rocm)
         install(TARGETS ggml-hip
             RUNTIME_DEPENDENCIES
Repository: vuejs/vue
Pull request: ci: add regression test for popular libraries in Vue.js ecosystem

See https://github.com/vuejs/regression-testing

**What kind of change does this PR introduce?** (check at least one)

- [ ] Bugfix
- [ ] Feature
- [ ] Code style update
- [ ] Refactor
- [x] Build-related changes
- [ ] Other, please describe:

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [x] It's submitted to the `dev` branch for v2.x (or to a previous version branch), _not_ the `master` branch
- [x] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [x] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [x] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**


Changed files:
filename: .circleci/config.yml
patch: @@ -62,6 +62,16 @@ jobs:
       - run: npm run test:ssr
       - run: npm run test:weex
 
+  trigger-regression-test:
+    <<: *defaults
+    steps:
+      - run:
+          command: |
+            curl --user ${CIRCLE_TOKEN}: \
+            --data build_parameters[CIRCLE_JOB]=update \
+            --data build_parameters[VUE_REVISION]=${CIRCLE_SHA1} \
+            https://circleci.com/api/v1.1/project/github/vuejs/regression-testing/tree/master
+
 workflows:
   version: 2
   install-and-parallel-test:
@@ -79,3 +89,42 @@ workflows:
       - test-ssr-weex:
           requires:
             - install
+      - trigger-regression-test:
+          filters:
+            branches:
+              only:
+                - regression-test
+          requires:
+            - test-cover
+            - lint-flow-types
+            - test-e2e
+            - test-ssr-weex
+  weekly_regression_test:
+    triggers:
+      - schedule:
+          # At 13:00 UTC (9:00 EDT) on every Monday
+          cron: "0 13 * * 1"
+          filters:
+            branches:
+              only:
+                dev
+    jobs:
+      - install
+      - test-cover:
+          requires:
+            - install
+      - lint-flow-types:
+          requires:
+            - install
+      - test-e2e:
+          requires:
+            - install
+      - test-ssr-weex:
+          requires:
+            - install
+      - trigger-regression-test:
+          requires:
+            - test-cover
+            - lint-flow-types
+            - test-e2e
+            - test-ssr-weex
Repository: ggml-org/llama.cpp
Pull request: opencl: use larger workgroup size for get_rows

Choose the largest possible workgroup size for get_rows for better performance plus small refactor.

Changed files:
filename: ggml/src/ggml-opencl/ggml-opencl.cpp
patch: @@ -5796,19 +5796,12 @@ static void ggml_cl_get_rows(ggml_backend_t backend, const ggml_tensor * src0, c
     GGML_ASSERT(dst);
     GGML_ASSERT(dst->extra);
 
-    const int      ne00 = src0->ne[0];
-    const cl_ulong nb01 = src0->nb[1];
-    const cl_ulong nb02 = src0->nb[2];
-    const cl_ulong nb03 = src0->nb[3];
-    const int      ne10 = src1->ne[0];
-    const cl_ulong nb10 = src1->nb[0];
-    const int      ne11 = src1->ne[1];
-    const int      ne12 = src1->ne[2];
-    const cl_ulong nb11 = src1->nb[1];
-    const cl_ulong nb12 = src1->nb[2];
-    const cl_ulong nb1  = dst->nb[1];
-    const cl_ulong nb2  = dst->nb[2];
-    const cl_ulong nb3  = dst->nb[3];
+    GGML_TENSOR_LOCALS(int,      ne0, src0, ne);
+    GGML_TENSOR_LOCALS(cl_ulong, nb0, src0, nb);
+    GGML_TENSOR_LOCALS(int,      ne1, src1, ne);
+    GGML_TENSOR_LOCALS(cl_ulong, nb1, src1, nb);
+    GGML_TENSOR_LOCALS(int,      ne,  dst,  ne);
+    GGML_TENSOR_LOCALS(cl_ulong, nb,  dst,  nb);
 
     ggml_backend_opencl_context *backend_ctx = (ggml_backend_opencl_context *)backend->context;
 
@@ -5854,8 +5847,14 @@ static void ggml_cl_get_rows(ggml_backend_t backend, const ggml_tensor * src0, c
     CL_CHECK(clSetKernelArg(kernel, 15, sizeof(cl_ulong), &nb2));
     CL_CHECK(clSetKernelArg(kernel, 16, sizeof(cl_ulong), &nb3));
 
-    size_t global_work_size[] = {(size_t)ne10*64, (size_t)ne11, (size_t)ne12};
-    size_t local_work_size[] = {64, 1, 1};
+    int max_workgroup_size = backend_ctx->get_kernel_workgroup_size(kernel);
+    int nth = 1;
+    while (nth < ne00 && 2*nth <= max_workgroup_size) {
+        nth *= 2;
+    }
+
+    size_t global_work_size[] = {(size_t)ne10*nth, (size_t)ne11, (size_t)ne12};
+    size_t local_work_size[] = {(size_t)nth, 1, 1};
 
     backend_ctx->enqueue_ndrange_kernel(kernel, 3, global_work_size, local_work_size, dst);
 }
Repository: vercel/next.js
Pull request: [test] Deflake `test/development/app-dir/browser-log-forwarding/fixtures/verbose-level/verbose-level.test.ts`


Fixes

```
  browser-log-forwarding verbose level › should forward all logs to terminal

  expect(received).toMatchInlineSnapshot(snapshot)

  Snapshot name: `browser-log-forwarding verbose level should forward all logs to terminal 1`

  - Snapshot  - 1
  + Received  + 0

  [browser] browser log: this is a log message (app/page.tsx:7:13)
  [browser] browser info: this is an info message (app/page.tsx:8:13)
  [browser] browser warn: this is a warning message (app/page.tsx:9:13)
  [browser] browser error: this is an error message 
- [browser] browser debug: this is a debug message (app/page.tsx:11:13)
```

-- https://github.com/vercel/next.js/actions/runs/21144881207/job/60808114267#step:33:281

Changed files:
filename: test/development/app-dir/browser-log-forwarding/fixtures/verbose-level/verbose-level.test.ts
patch: @@ -15,6 +15,7 @@ describe('browser-log-forwarding verbose level', () => {
       expect(output).toContain('browser error:')
       expect(output).toContain('browser warn:')
       expect(output).toContain('browser log:')
+      expect(output).toContain('browser debug:')
     })
 
     // Get final output after logs are forwarded
Repository: huggingface/transformers
Pull request: Fix unsafe torch.load() in _load_rng_state allowing arbitrary code execution

Add weights_only=True to torch.load() call in Trainer._load_rng_state() to prevent arbitrary code execution when loading malicious checkpoint files.

The existing safe_globals() context manager provides no protection for PyTorch < 2.6 as it returns contextlib.nullcontext(). This makes the torch.load() call at line 3059 vulnerable to pickle deserialization attacks, unlike all other torch.load() calls in the same file which correctly use weights_only=True.

Impact: Users loading untrusted checkpoints on PyTorch 2.2-2.5 are vulnerable to arbitrary code execution via malicious rng_state.pth files.


Changed files:
filename: src/transformers/trainer.py
patch: @@ -3056,7 +3056,8 @@ def _load_rng_state(self, checkpoint):
                 return
 
         with safe_globals():
-            checkpoint_rng_state = torch.load(rng_file)
+            check_torch_load_is_safe()
+            checkpoint_rng_state = torch.load(rng_file, weights_only=True)
         random.setstate(checkpoint_rng_state["python"])
         np.random.set_state(checkpoint_rng_state["numpy"])
         torch.random.set_rng_state(checkpoint_rng_state["cpu"])
Repository: facebook/react
Pull request: Enable the `enableEagerAlternateStateNodeCleanup` Feature Flag

## Summary

Enables the `enableEagerAlternateStateNodeCleanup` feature flag for all variants, while maintaining the `__VARIANT__` for the internal React Native flavor for backtesting reasons.

## How did you test this change?

```
$ yarn test
```

Changed files:
filename: packages/shared/forks/ReactFeatureFlags.native-oss.js
patch: @@ -48,7 +48,7 @@ export const enableRetryLaneExpiration = false;
 export const enableSchedulingProfiler = __PROFILE__;
 export const enableComponentPerformanceTrack = false;
 export const enableScopeAPI = false;
-export const enableEagerAlternateStateNodeCleanup = false;
+export const enableEagerAlternateStateNodeCleanup = true;
 export const enableSuspenseAvoidThisFallback = false;
 export const enableSuspenseCallback = false;
 export const enableTaint = true;

filename: packages/shared/forks/ReactFeatureFlags.test-renderer.js
patch: @@ -61,7 +61,7 @@ export const disableClientCache = true;
 export const enableInfiniteRenderLoopDetection = false;
 
 export const renameElementSymbol = true;
-export const enableEagerAlternateStateNodeCleanup = false;
+export const enableEagerAlternateStateNodeCleanup = true;
 
 export const enableYieldingBeforePassive = true;
 

filename: packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js
patch: @@ -46,7 +46,7 @@ export const enableRetryLaneExpiration = false;
 export const enableSchedulingProfiler = __PROFILE__;
 export const enableComponentPerformanceTrack = false;
 export const enableScopeAPI = false;
-export const enableEagerAlternateStateNodeCleanup = false;
+export const enableEagerAlternateStateNodeCleanup = true;
 export const enableSuspenseAvoidThisFallback = false;
 export const enableSuspenseCallback = false;
 export const enableTaint = true;

filename: packages/shared/forks/ReactFeatureFlags.test-renderer.www.js
patch: @@ -70,7 +70,7 @@ export const disableDefaultPropsExceptForClasses = true;
 export const renameElementSymbol = false;
 
 export const enableObjectFiber = false;
-export const enableEagerAlternateStateNodeCleanup = false;
+export const enableEagerAlternateStateNodeCleanup = true;
 
 export const enableHydrationLaneScheduling = true;
 

filename: packages/shared/forks/ReactFeatureFlags.www.js
patch: @@ -104,7 +104,7 @@ export const enableReactTestRendererWarning = false;
 
 export const disableLegacyMode = true;
 
-export const enableEagerAlternateStateNodeCleanup = false;
+export const enableEagerAlternateStateNodeCleanup = true;
 
 export const enableLazyPublicInstanceInFabric = false;
Repository: huggingface/transformers
Pull request: Fix typo: seperately → separately in lw_detr converter

## What does this PR do?

Fixes a typo in the LW-DETR model conversion script.

**Change:** `seperately` → `separately` in a comment

**File:** `src/transformers/models/lw_detr/convert_lw_detr_to_hf.py` (line 158)

## Before submitting

- [x] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).

🤖 Generated with [Claude Code](https://claude.ai/claude-code)

Changed files:
filename: src/transformers/models/lw_detr/convert_lw_detr_to_hf.py
patch: @@ -155,7 +155,7 @@
     r"backbone.0.encoder.blocks.(\d+).mlp.fc1.(weight|bias)":   r"backbone.backbone.encoder.layer.\1.intermediate.fc1.\2",
     r"backbone.0.encoder.blocks.(\d+).mlp.fc2.(weight|bias)":   r"backbone.backbone.encoder.layer.\1.intermediate.fc2.\2",
 
-    # backbone projector scaling layers, sampling layers are dealt with seperately depending on the config
+    # backbone projector scaling layers, sampling layers are dealt with separately depending on the config
     r"backbone.0.projector.stages.(\d+).0.cv1.conv.(weight|bias)":                                                      r"backbone.projector.scale_layers.\1.projector_layer.conv1.conv.\2",
     r"backbone.0.projector.stages.(\d+).0.cv1.bn.(weight|bias|running_mean|running_var|num_batches_tracked)":           r"backbone.projector.scale_layers.\1.projector_layer.conv1.norm.\2",
     r"backbone.0.projector.stages.(\d+).0.cv2.conv.(weight|bias)":                                                      r"backbone.projector.scale_layers.\1.projector_layer.conv2.conv.\2",
Repository: nodejs/node
Pull request: doc: add reusePort error behavior to net module

This PR documents the error behavior for the `reusePort` option in net module.

Currently, dgram docs mention that `reusePort` raises an error on unsupported platforms, but net docs don't. This inconsistency can confuse users when their server unexpectedly terminates on platforms like Windows or older Linux.

Changes:
- net.md: Added note that `reusePort` raises an error on unsupported platforms
- dgram.md: Fixed typo ("an an error" → "an error")

Now both modules have consistent documentation for this option.

Fixes: https://github.com/nodejs/node/issues/61018

Changed files:
filename: doc/api/dgram.md
patch: @@ -951,7 +951,7 @@ changes:
     port, even if another process has already bound a socket on it. Incoming
     datagrams are distributed to listening sockets. The option is available
     only on some platforms, such as Linux 3.9+, DragonFlyBSD 3.6+, FreeBSD 12.0+,
-    Solaris 11.4, and AIX 7.2.5+. On unsupported platforms this option raises an
+    Solaris 11.4, and AIX 7.2.5+. On unsupported platforms, this option raises
     an error when the socket is bound.
     **Default:** `false`.
   * `ipv6Only` {boolean} Setting `ipv6Only` to `true` will

filename: doc/api/net.md
patch: @@ -558,7 +558,8 @@ changes:
     multiple sockets on the same host to bind to the same port. Incoming connections
     are distributed by the operating system to listening sockets. This option is
     available only on some platforms, such as Linux 3.9+, DragonFlyBSD 3.6+, FreeBSD 12.0+,
-    Solaris 11.4, and AIX 7.2.5+. **Default:** `false`.
+    Solaris 11.4, and AIX 7.2.5+. On unsupported platforms, this option raises
+    an error. **Default:** `false`.
   * `path` {string} Will be ignored if `port` is specified. See
     [Identifying paths for IPC connections][].
   * `port` {number}
Repository: vuejs/vue
Pull request: feat: Store functional render context on vnode in development

Used in https://github.com/vuejs/vue-devtools/pull/719 to display prop values in component inspector.

Changed files:
filename: src/core/vdom/create-functional-component.js
patch: @@ -105,24 +105,27 @@ export function createFunctionalComponent (
   const vnode = options.render.call(null, renderContext._c, renderContext)
 
   if (vnode instanceof VNode) {
-    return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options)
+    return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)
   } else if (Array.isArray(vnode)) {
     const vnodes = normalizeChildren(vnode) || []
     const res = new Array(vnodes.length)
     for (let i = 0; i < vnodes.length; i++) {
-      res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options)
+      res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext)
     }
     return res
   }
 }
 
-function cloneAndMarkFunctionalResult (vnode, data, contextVm, options) {
+function cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {
   // #7817 clone node before setting fnContext, otherwise if the node is reused
   // (e.g. it was from a cached normal slot) the fnContext causes named slots
   // that should not be matched to match.
   const clone = cloneVNode(vnode)
   clone.fnContext = contextVm
   clone.fnOptions = options
+  if (process.env.NODE_ENV !== 'production') {
+    ;(clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext
+  }
   if (data.slot) {
     (clone.data || (clone.data = {})).slot = data.slot
   }

filename: src/core/vdom/vnode.js
patch: @@ -26,6 +26,7 @@ export default class VNode {
   ssrContext: Object | void;
   fnContext: Component | void; // real context vm for functional nodes
   fnOptions: ?ComponentOptions; // for SSR caching
+  devtoolsMeta: ?Object; // used to store functional render context for devtools
   fnScopeId: ?string; // functional scope id support
 
   constructor (
Repository: vuejs/vue
Pull request: fix(types): accept `number` type as key on Vue.set/delete (#8707)

<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#pull-request-guidelines
-->

<!-- PULL REQUEST TEMPLATE -->
<!-- (Update "[ ]" to "[x]" to check a box) -->

**What kind of change does this PR introduce?** (check at least one)

- [x] Bugfix
- [ ] Feature
- [ ] Code style update
- [ ] Refactor
- [ ] Build-related changes
- [ ] Other, please describe:

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [x] It's submitted to the `dev` branch for v2.x (or to a previous version branch), _not_ the `master` branch
- [x] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [x] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [x] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**


Changed files:
filename: types/test/vue-test.ts
patch: @@ -87,8 +87,10 @@ class Test extends Vue {
     this.nextTick(() => {});
     this.nextTick().then(() => {});
     this.set({}, "", "");
+    this.set({}, 1, "");
     this.set([true, false, true], 1, true);
     this.delete({}, "");
+    this.delete({}, 1);
     this.delete([true, false], 0);
     this.directive("", {bind() {}});
     this.filter("", (value: number) => value);

filename: types/vue.d.ts
patch: @@ -91,9 +91,9 @@ export interface VueConstructor<V extends Vue = Vue> {
 
   nextTick(callback: () => void, context?: any[]): void;
   nextTick(): Promise<void>
-  set<T>(object: object, key: string, value: T): T;
+  set<T>(object: object, key: string | number, value: T): T;
   set<T>(array: T[], key: number, value: T): T;
-  delete(object: object, key: string): void;
+  delete(object: object, key: string | number): void;
   delete<T>(array: T[], key: number): void;
 
   directive(
Repository: vercel/next.js
Pull request: Fix `Build Commands` section in AGENTS.md

The commands must have been hallucinated.

Changed files:
filename: AGENTS.md
patch: @@ -98,14 +98,14 @@ gt submit --no-edit
 ## Build Commands
 
 ```bash
-# Build the Next.js package (dev server only - faster)
-pnpm --filter=next build:dev-server
+# Build the Next.js package
+pnpm --filter=next build
 
 # Build everything
 pnpm build
 
 # Run specific task
-pnpm --filter=next taskfile <task>
+pnpm --filter=next exec taskr <task>
 ```
 
 ## Fast Local Development