{"record":{"id":"bb4fe37d9f1db2e8","repo":"emberjs/ember.js","slug":"cannot-set-read-only-property-keyname-on-obje-bb4fe3","errorCode":null,"errorMessage":"Cannot set read-only property \"${keyName}\" on object: ${inspect(obj)}","messagePattern":"Cannot set read-only property \"(.+?)\" on object: (.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/@ember/-internals/metal/lib/computed.ts","lineNumber":513,"sourceCode":"\n      if (_dependentKeys !== undefined) {\n        updateTag(propertyTag, getChainTagsForKeys(obj, _dependentKeys, tagMeta, meta));\n\n        if (DEBUG) {\n          ALLOW_CYCLES!.set(propertyTag, true);\n        }\n      }\n\n      meta.setRevisionFor(keyName, valueForTag(propertyTag));\n    } finally {\n      endPropertyChanges();\n    }\n\n    return ret;\n  }\n\n  _throwReadOnlyError(obj: object, keyName: string): never {\n    throw new Error(`Cannot set read-only property \"${keyName}\" on object: ${inspect(obj)}`);\n  }\n\n  _set(obj: object, keyName: string, value: unknown, meta: Meta): unknown {\n    let hadCachedValue = meta.revisionFor(keyName) !== undefined;\n    let cachedValue = meta.valueFor(keyName);\n\n    let ret;\n    let { _setter } = this;\n\n    setObserverSuspended(obj, keyName, true);\n\n    try {\n      ret = _setter!.call(obj, keyName, value, cachedValue);\n    } finally {\n      setObserverSuspended(obj, keyName, false);\n    }\n\n    // allows setter to return the same value that is cached already","sourceCodeStart":495,"sourceCodeEnd":531,"githubUrl":"https://github.com/emberjs/ember.js/blob/26f97246a8bf2e28edf26ac3093da2e86c04ffc5/packages/@ember/-internals/metal/lib/computed.ts#L495-L531","documentation":"Error \"Cannot set read-only property \"${keyName}\" on object: ${inspect(obj)}\" thrown in emberjs/ember.js.","triggerScenarios":"Thrown at packages/@ember/-internals/metal/lib/computed.ts:513 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"26f97246a8bf2e28edf26ac3093da2e86c04ffc5","analyzedAt":"2026-09-01T05:01:28.182Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}