chore: align Effect usage with maximum tsgo lint - #358
Open
Kashkovsky wants to merge 2 commits into
Open
Conversation
Keep the documented application-boundary rules off and convert remaining antipatterns to TaggedError, DateTime/Clock, Config, Crypto.randomUUIDv4, Promise.withResolvers, and succeedUndefined so oxlint and typecheck stay clean without silencing real Effect mistakes.
Convert ImageProjectionConfigurationError to a TaggedError and replace catch/new antipatterns so the files landed in #357 stay clean under the maximum Effect oxlint preset.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@effect/tsgooxlint presets (correctness, antipattern, effect-native, style) at error, leaving only the documented application-boundary rules off (any-unknown-in-error-context,async-function,global-date,global-fetch,global-timers,missing-pipeable-signature,prefer-schema-over-json,process-env,strict-boolean-expressions).new-promisestays off intest/**andscripts/**only..make()/.of(), DateTime/Clock, Config,Crypto.randomUUIDv4,Promise.withResolvers, yieldable errors, andsucceedUndefinedfor optionalT | undefinedsuccess (notEffect.void).Test plan
bun scripts/lint.tsandbun run typecheck(src, test, website)lint-policy, image-projection config/commands/MCP result,crypto-uuid,update-check(including 24h TTL property),effect-system,effect-file-lockbun run dev:install-globalsmoke is blocked:~/.local/share/threadnoteis owned by/Users/denyskashkovskyi/src/threadnote(feat/mcp-image-projection). Needs take-over confirmation before replacing that runtime.