Thank you for your submission, an automated scan of your plugin code's revealed the following issues:

### Required

[[1](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/src/utils/error-recovery.ts#L6)]:You should change all instances of `var` to either `const` or `let`. `var` has function-level scope, so it can easily lead to bugs if you're not careful. Here's a pretty good guide with examples of why not to use `var`: [why `var` is obsolete](https://javascript.plainenglish.io/4-reasons-why-var-is-considered-obsolete-in-modern-javascript-a30296b5f08f)

[[1](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L36)][[2](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L39)][[3](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L40)][[4](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L42)][[5](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L43)][[6](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L44)][[7](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L45)][[8](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L48)][[9](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L58)][[10](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L61)][[11](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L64)][[12](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L66)][[13](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L67)][[14](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L68)][[15](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L69)][[16](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L70)][[17](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L71)][[18](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L74)][[19](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L77)][[20](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/demo-debug-boundary.ts#L78)][[21](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L40)][[22](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L68)][[23](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L72)][[24](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L82)][[25](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L568)][[26](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L569)][[27](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L570)][[28](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L571)][[29](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L572)][[30](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/helpers/index.ts#L573)] and more :You should consider limiting the number of `console.log`s in your code, to not pollute the dev console.



---

### Optional

[[1](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/src/utils/safe-regex-utilities.ts#L175)][[2](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/content-processing-improvements.test.ts#L127)][[3](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/enhanced-username-processing.test.ts#L106)][[4](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/enhanced-username-processing.test.ts#L107)][[5](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/enhanced-username-processing.test.ts#L200)][[6](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/enhanced-username-processing.test.ts#L201)][[7](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/intelligent-message-parser.test.ts#L31)][[8](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/intelligent-message-parser.test.ts#L36)][[9](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/jorge-parser-internals.test.ts#L13)][[10](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/jorge-parser-internals.test.ts#L69)][[11](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/test-boundary-extraction.test.ts#L21)][[12](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/test-continuation-end.test.ts#L21)][[13](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/test-extract-content.test.ts#L21)][[14](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/test-message-lines.test.ts#L39)][[15](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/test-user-timestamp-combination.test.ts#L13)][[16](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/undefined-settings.test.ts#L10)][[17](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/undefined-settings.test.ts#L18)][[18](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/undefined-settings.test.ts#L26)][[19](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/unit/undefined-settings.test.ts#L34)][[20](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/utils/datetime-utils.test.ts#L56)][[21](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/utils/datetime-utils.test.ts#L185)][[22](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/utils/datetime-utils.test.ts#L191-L193)][[23](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/utils/emoji-utils.test.ts#L114)][[24](https://github.com/amittell/obsidian-slack-formatter/blob/c83dc12822ebdee07c7c3b6378345785e69374ff/tests/utils/emoji-utils.test.ts#L115)]:Casting to `any` should be avoided as much as possible.



---



Do <b>NOT</b> open a new PR for re-validation.
Once you have pushed all of the required changes to your repo, the bot will update the labels on this PR within 6 hours.
If you think some of the required changes are incorrect, please comment with `/skip` and the reason why you think the results are incorrect.