Updates from private repo to add functionality for unpacking shortened links.
Enhance moderation checks with detailed logging and new monitoring functions for descriptions and display names
10: Update constants.ts.example to add const langs
17: Removed skywatch specific label hardcoding from checkPosts
16: Minor updates to defaults
Adds a docker-compose file for easier container management and cursor persistence
Updated to account for docker compose
Update language management to be more explicit
Added support for checking embeds to external sources
Added support for checking embeds to external sources
feat: Handle embeds in posts
Added claude instructions
Add eslint and git add to allowed commands
Remove GEMINI.md and Update README
Remove TODO section from README
Added rule and logic to detect if accounts are abusing faceting by pushing multiple facets in same byte space
Corrected path name and added tests
non-malicious bots were catching strays over hashtags
Update facet detection to allow for exact duplicates
Add facet spam allowlist (to allow for test scenarios)
Added functionality to detect accounts created specifically to harrass, spam, or astroturf
Fixed stupid mistake in global allow listing
src/types.ts:68 - added optional expires?: string field to AccountAgeCheck interface 2. src/rules/account/age.ts:117-128 - added logic to skip expired checks by comparing current date against expires date 3. src/rules/account/ageConstants.ts:24 - updated example to show how to use the new field 4. added 3 tests to verify: - expired checks are skipped - non-expired checks still work - checks without expires field work (backward compatible)
src/types.ts:63-64 - added optional monitoredPostURIs field, made monitoredDIDs optional (at least one must be provided) 2. src/rules/account/age.ts:13 - added optional replyToPostURI to ReplyContext interface 3. src/rules/account/age.ts:113-123 - updated logic to check both monitoredDIDs and monitoredPostURIs (matches if either condition is true) 4. src/rules/account/ageConstants.ts:27-38 - added example showing how to monitor specific post URIs 5. added 4 tests covering: - monitoring post URIs - ignoring non-matching post URIs - matching either DIDs OR post URIs - backward compatibility (works without replyToPostURI)
src/rules/account/age.ts:8-22 - renamed ReplyContext → InteractionContext, added quotedDid and quotedPostURI fields for quote posts, actorDid as the common actor field 2. src/rules/account/age.ts:123-149 - updated matching logic to check both replies (replyToDid/replyToPostURI) AND quotes (quotedDid/quotedPostURI) 3. src/rules/account/ageConstants.ts:3-12 - updated documentation to reflect reply/quote monitoring 4. added 4 new tests covering: - labeling when quoting monitored DID - labeling when quoting monitored post URI - not labeling when quoting different DID - matching either reply OR quote to monitored target
Refactor CI to use Bun instead of Node.js and npm
feat: Add @stylistic/eslint-plugin and update dependencies
Disable linting in CI workflow
Add example config files for CI tests
Add tests for agent, session, and rate limits
Linted the whole codebase
Refactor CI setup to use simplified config copying
Remove unused LINK_SHORTENER constant