{"record":{"id":"b0c51265f0011dcd","repo":"vuejs/vuex","slug":"vuex-mutation-type-type-silent-option-has-b","errorCode":null,"errorMessage":"[vuex] mutation type: ${type}. Silent option has been removed. Use the filter functionality in the vue-devtools","messagePattern":"\\[vuex\\] mutation type: (.+?)\\. Silent option has been removed\\. Use the filter functionality in the vue-devtools","errorType":"console","errorClass":null,"httpStatus":null,"severity":"info","filePath":"src/store.js","lineNumber":131,"sourceCode":"        console.error(`[vuex] unknown mutation type: ${type}`)\n      }\n      return\n    }\n    this._withCommit(() => {\n      entry.forEach(function commitIterator (handler) {\n        handler(payload)\n      })\n    })\n\n    this._subscribers\n      .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n      .forEach(sub => sub(mutation, this.state))\n\n    if (\n      __DEV__ &&\n      options && options.silent\n    ) {\n      console.warn(\n        `[vuex] mutation type: ${type}. Silent option has been removed. ` +\n        'Use the filter functionality in the vue-devtools'\n      )\n    }\n  }\n\n  dispatch (_type, _payload) {\n    // check object-style dispatch\n    const {\n      type,\n      payload\n    } = unifyObjectStyle(_type, _payload)\n\n    const action = { type, payload }\n    const entry = this._actions[type]\n    if (!entry) {\n      if (__DEV__) {\n        console.error(`[vuex] unknown action type: ${type}`)","sourceCodeStart":113,"sourceCodeEnd":149,"githubUrl":"https://github.com/vuejs/vuex/blob/bd907467b8392d6671bb115738285ff7f63d0cf6/src/store.js#L113-L149","documentation":"Vuex historically allowed commit(type, payload, { silent: true }) to suppress devtools logging; that option was removed. Committing with options.silent in development triggers this warning. The commit itself still runs.","triggerScenarios":"Calling store.commit('mutation', payload, { silent: true }) with __DEV__ true — usually legacy code migrated from Vuex 1.x/early 2.x or copied from old tutorials.","commonSituations":"Upgrading from Vuex 1.x where silent was supported; high-frequency mutations (mouse move, timers) that wanted to avoid devtools spam; copied snippet from outdated docs.","solutions":["Remove the { silent: true } third argument from commit calls","Use vue-devtools mutation filtering to hide noisy mutations instead","If the mutation is too noisy, throttle the commit or batch values in component state and commit periodically"],"exampleFix":"// before\nstore.commit('updatePosition', pos, { silent: true })\n// after\nstore.commit('updatePosition', pos) // filter 'updatePosition' in vue-devtools instead","handlingStrategy":"fallback","validationCode":"function commitWithoutSilent(store, type, payload, options) {\n  const { silent, ...rest } = options || {}\n  store.commit(type, payload, Object.keys(rest).length ? rest : undefined)\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Search codebase for 'silent: true' when migrating from Vuex 1.x","Use devtools filters rather than silent commits","Batch/throttle frequent mutations instead of hiding them"],"tags":["vuex","deprecated-api","commit","devtools","migration"],"backgroundTag":"removed-option-silent","analyzedSha":"bd907467b8392d6671bb115738285ff7f63d0cf6","analyzedAt":"2026-08-28T21:38:57.320Z","schemaVersion":2},"datasetVersion":"2026-08-29T02:17:18.158Z"}