7 Commits

Author SHA1 Message Date
hikari 602babb4ca chore: replace .npmrc with pnpm-workspace.yaml
Node.js CI / CI (push) Successful in 30s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m21s
2026-03-02 16:27:31 -08:00
minori a9d51d40ce Merge pull request 'deps: update @atproto/api to 0.18.21' (#13) from dependencies/update--atproto-api into main
Node.js CI / CI (push) Successful in 28s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m54s
2026-02-25 07:01:29 -08:00
minori 8478aa3e2f deps: update @atproto/api to 0.18.21
Node.js CI / CI (pull_request) Successful in 30s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m23s
2026-02-24 07:01:39 -08:00
minori f97bb33c51 Merge pull request 'deps: update @atproto/api to 0.18.17' (#3) from dependencies/update--atproto-api into main
Node.js CI / CI (push) Successful in 30s
Security Scan and Upload / Security & DefectDojo Upload (push) Successful in 1m24s
2026-02-23 20:44:49 -08:00
minori 201408b97c deps: update @atproto/api to 0.18.20
Node.js CI / CI (pull_request) Successful in 25s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m25s
2026-02-10 07:02:43 -08:00
minori 91b2e4c33e deps: update @atproto/api to 0.18.18
Node.js CI / CI (pull_request) Successful in 46s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 2m20s
2026-02-08 07:07:48 -08:00
minori ae045ef881 deps: update @atproto/api to 0.18.17
Node.js CI / CI (pull_request) Successful in 32s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m32s
2026-02-04 08:23:40 -08:00
4 changed files with 119 additions and 101 deletions
-25
View File
@@ -1,25 +0,0 @@
# Package Manager Configuration
# Force pnpm usage - breaks npm/yarn intentionally
node-linker=pnpm
# Security: Disable all lifecycle scripts
ignore-scripts=true
enable-pre-post-scripts=false
# Security: Require packages to be 10+ days old before installation
minimum-release-age=14400
# Security: Verify package integrity hashes
verify-store-integrity=true
# Security: Enforce strict trust policies
trust-policy=strict
# Security: Strict peer dependency resolution
strict-peer-dependencies=true
# Performance: Use symlinks for node_modules
symlink=true
# Lockfile: Ensure lockfile is not modified during install
frozen-lockfile=false
+2 -2
View File
@@ -23,11 +23,11 @@
"typescript": "5.8.2"
},
"dependencies": {
"@atproto/api": "0.14.8",
"@atproto/api": "0.18.21",
"@nhcarrigan/logger": "1.0.0",
"@slack/bolt": "4.2.1",
"@slack/oauth": "3.0.2",
"discord.js": "14.25.1",
"discord.js": "14.18.0",
"fastify": "5.2.1",
"no-profanity": "1.5.1",
"node-schedule": "2.1.1"
+96 -74
View File
@@ -9,8 +9,8 @@ importers:
.:
dependencies:
'@atproto/api':
specifier: 0.14.8
version: 0.14.8
specifier: 0.18.21
version: 0.18.21
'@nhcarrigan/logger':
specifier: 1.0.0
version: 1.0.0
@@ -21,8 +21,8 @@ importers:
specifier: 3.0.2
version: 3.0.2
discord.js:
specifier: 14.25.1
version: 14.25.1
specifier: 14.18.0
version: 14.18.0
fastify:
specifier: 5.2.1
version: 5.2.1
@@ -54,20 +54,26 @@ importers:
packages:
'@atproto/api@0.14.8':
resolution: {integrity: sha512-i3jriHPLOqR0hRWKTte+3pRN1LEH+pa23CoNXEycYSa69K4nBVp6/qxUZ+UfOE5H/mkGXabI59P1xL8tSFCSXA==}
'@atproto/api@0.18.21':
resolution: {integrity: sha512-s35MIJerGT/pKe2xJtKKswqlIr/ola2r2iURBKBL0Mk1OKe6jP4YvTMh1N2d2PEANFzNNTbKoDaLfJPo2Uvc/w==}
'@atproto/common-web@0.4.0':
resolution: {integrity: sha512-ZYL0P9myHybNgwh/hBY0HaBzqiLR1B5/ie5bJpLQAg0whRzNA28t8/nU2vh99tbsWcAF0LOD29M8++LyENJLNQ==}
'@atproto/common-web@0.4.16':
resolution: {integrity: sha512-Ufvaff5JgxUyUyTAG0/3o7ltpy3lnZ1DvLjyAnvAf+hHfiK7OMQg+8byr+orN+KP9MtIQaRTsCgYPX+PxMKUoA==}
'@atproto/lexicon@0.4.8':
resolution: {integrity: sha512-NPhu4MNHqft4muvHvcU0BrkWoEpTI+OmbQzvZzzRpw54MW3PfrQ4TPEpAfPOrWugPB9y4mD+l8OMN1c9eOGWMQ==}
'@atproto/lex-data@0.0.11':
resolution: {integrity: sha512-4+KTtHdqwlhiTKA7D4SACea4jprsNpCQsNALW09wsZ6IHhCDGO5tr1cmV+QnLYe3G3mu1E1yXHXbPUHrUUDT/A==}
'@atproto/syntax@0.3.4':
resolution: {integrity: sha512-8CNmi5DipOLaVeSMPggMe7FCksVag0aO6XZy9WflbduTKM4dFZVCs4686UeMLfGRXX+X966XgwECHoLYrovMMg==}
'@atproto/lex-json@0.0.11':
resolution: {integrity: sha512-2IExAoQ4KsR5fyPa1JjIvtR316PvdgRH/l3BVGLBd3cSxM3m5MftIv1B6qZ9HjNiK60SgkWp0mi9574bTNDhBQ==}
'@atproto/xrpc@0.6.10':
resolution: {integrity: sha512-ClMiO+oAl3KrFe7sdo8Wzw81yV7EpEradZLJnYilPq4s7uF0by1jHGI/LarHBKHnE5RpaFpBC/5XD/ZzgmvAeg==}
'@atproto/lexicon@0.6.1':
resolution: {integrity: sha512-/vI1kVlY50Si+5MXpvOucelnYwb0UJ6Qto5mCp+7Q5C+Jtp+SoSykAPVvjVtTnQUH2vrKOFOwpb3C375vSKzXw==}
'@atproto/syntax@0.4.3':
resolution: {integrity: sha512-YoZUz40YAJr5nPwvCDWgodEOlt5IftZqPJvA0JDWjuZKD8yXddTwSzXSaKQAzGOpuM+/A3uXRtPzJJqlScc+iA==}
'@atproto/xrpc@0.7.7':
resolution: {integrity: sha512-K1ZyO/BU8JNtXX5dmPp7b5UrkLMMqpsIa/Lrj5D3Su+j1Xwq1m6QJ2XJ1AgjEjkI1v4Muzm7klianLE6XGxtmA==}
'@babel/code-frame@7.26.2':
resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
@@ -77,8 +83,8 @@ packages:
resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
engines: {node: '>=6.9.0'}
'@discordjs/builders@1.13.1':
resolution: {integrity: sha512-cOU0UDHc3lp/5nKByDxkmRiNZBpdp0kx55aarbiAfakfKJHlxv/yFW1zmIqCAmwH5CRlrH9iMFKJMpvW4DPB+w==}
'@discordjs/builders@1.10.1':
resolution: {integrity: sha512-OWo1fY4ztL1/M/DUyRPShB4d/EzVfuUvPTRRHRIt/YxBrUYSz0a+JicD5F5zHFoNs2oTuWavxCOVFV1UljHTng==}
engines: {node: '>=16.11.0'}
'@discordjs/collection@1.5.3':
@@ -89,20 +95,20 @@ packages:
resolution: {integrity: sha512-LiSusze9Tc7qF03sLCujF5iZp7K+vRNEDBZ86FT9aQAv3vxMLihUvKvpsCWiQ2DJq1tVckopKm1rxomgNUc9hg==}
engines: {node: '>=18'}
'@discordjs/formatters@0.6.2':
resolution: {integrity: sha512-y4UPwWhH6vChKRkGdMB4odasUbHOUwy7KL+OVwF86PvT6QVOwElx+TiI1/6kcmcEe+g5YRXJFiXSXUdabqZOvQ==}
'@discordjs/formatters@0.6.0':
resolution: {integrity: sha512-YIruKw4UILt/ivO4uISmrGq2GdMY6EkoTtD0oS0GvkJFRZbTSdPhzYiUILbJ/QslsvC9H9nTgGgnarnIl4jMfw==}
engines: {node: '>=16.11.0'}
'@discordjs/rest@2.6.0':
resolution: {integrity: sha512-RDYrhmpB7mTvmCKcpj+pc5k7POKszS4E2O9TYc+U+Y4iaCP+r910QdO43qmpOja8LRr1RJ0b3U+CqVsnPqzf4w==}
'@discordjs/rest@2.4.3':
resolution: {integrity: sha512-+SO4RKvWsM+y8uFHgYQrcTl/3+cY02uQOH7/7bKbVZsTfrfpoE62o5p+mmV+s7FVhTX82/kQUGGbu4YlV60RtA==}
engines: {node: '>=18'}
'@discordjs/util@1.2.0':
resolution: {integrity: sha512-3LKP7F2+atl9vJFhaBjn4nOaSWahZ/yWjOvA4e5pnXkt2qyXRCHLxoBQy81GFtLGCq7K9lPm9R517M1U+/90Qg==}
'@discordjs/util@1.1.1':
resolution: {integrity: sha512-eddz6UnOBEB1oITPinyrB2Pttej49M9FZQY8NxgEvc3tq6ZICZ19m70RsmzRdDHk80O9NoYN/25AqJl8vPVf/g==}
engines: {node: '>=18'}
'@discordjs/ws@1.2.3':
resolution: {integrity: sha512-wPlQDxEmlDg5IxhJPuxXr3Vy9AjYq5xCvFWGJyD7w7Np8ZGu+Mc+97LCoEc/+AYCo2IDpKioiH0/c/mj5ZR9Uw==}
'@discordjs/ws@1.2.1':
resolution: {integrity: sha512-PBvenhZG56a6tMWF/f4P6f4GxZKJTBG95n7aiGSPTnodmz4N5g60t79rSIAq7ywMbv8A4jFtexMruH+oe51aQQ==}
engines: {node: '>=16.11.0'}
'@es-joy/jsdoccomment@0.49.0':
@@ -1058,11 +1064,11 @@ packages:
resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
engines: {node: '>=8'}
discord-api-types@0.38.37:
resolution: {integrity: sha512-Cv47jzY1jkGkh5sv0bfHYqGgKOWO1peOrGMkDFM4UmaGMOTgOW8QSexhvixa9sVOiz8MnVOBryWYyw/CEVhj7w==}
discord-api-types@0.37.119:
resolution: {integrity: sha512-WasbGFXEB+VQWXlo6IpW3oUv73Yuau1Ig4AZF/m13tXcTKnMpc/mHjpztIlz4+BM9FG9BHQkEXiPto3bKduQUg==}
discord.js@14.25.1:
resolution: {integrity: sha512-2l0gsPOLPs5t6GFZfQZKnL1OJNYFcuC/ETWsW4VtKVD/tg4ICa9x+jb9bkPffkMdRpRpuUaO/fKkHCBeiCKh8g==}
discord.js@14.18.0:
resolution: {integrity: sha512-SvU5kVUvwunQhN2/+0t55QW/1EHfB1lp0TtLZUSXVHDmyHTrdOj5LRKdR0zLcybaA15F+NtdWuWmGOX9lE+CAw==}
engines: {node: '>=18'}
doctrine@2.1.0:
@@ -2454,10 +2460,13 @@ packages:
undici-types@6.20.0:
resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==}
undici@6.21.3:
resolution: {integrity: sha512-gBLkYIlEnSp8pFbT64yFgGE6UIB9tAkhukC23PmMDCe5Nd+cRqKxSjw5y54MK2AZMgZfJWMaNE4nYUHgi1XEOw==}
undici@6.21.1:
resolution: {integrity: sha512-q/1rj5D0/zayJB2FraXdaWxbhWiNKDvu8naDT2dl1yTlvJp4BLtOcp2a5BvgGNQpYYJzau7tf1WgKv3b+7mqpQ==}
engines: {node: '>=18.17'}
unicode-segmenter@0.14.5:
resolution: {integrity: sha512-jHGmj2LUuqDcX3hqY12Ql+uhUTn8huuxNZGq7GvtF6bSybzH3aFgedYu/KTzQStEgt1Ra2F3HxadNXsNjb3m3g==}
unpipe@1.0.0:
resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
engines: {node: '>= 0.8'}
@@ -2609,37 +2618,51 @@ packages:
snapshots:
'@atproto/api@0.14.8':
'@atproto/api@0.18.21':
dependencies:
'@atproto/common-web': 0.4.0
'@atproto/lexicon': 0.4.8
'@atproto/syntax': 0.3.4
'@atproto/xrpc': 0.6.10
'@atproto/common-web': 0.4.16
'@atproto/lexicon': 0.6.1
'@atproto/syntax': 0.4.3
'@atproto/xrpc': 0.7.7
await-lock: 2.2.2
multiformats: 9.9.0
tlds: 1.256.0
zod: 3.24.2
'@atproto/common-web@0.4.0':
'@atproto/common-web@0.4.16':
dependencies:
graphemer: 1.4.0
multiformats: 9.9.0
uint8arrays: 3.0.0
'@atproto/lex-data': 0.0.11
'@atproto/lex-json': 0.0.11
'@atproto/syntax': 0.4.3
zod: 3.24.2
'@atproto/lexicon@0.4.8':
'@atproto/lex-data@0.0.11':
dependencies:
'@atproto/common-web': 0.4.0
'@atproto/syntax': 0.3.4
multiformats: 9.9.0
tslib: 2.8.1
uint8arrays: 3.0.0
unicode-segmenter: 0.14.5
'@atproto/lex-json@0.0.11':
dependencies:
'@atproto/lex-data': 0.0.11
tslib: 2.8.1
'@atproto/lexicon@0.6.1':
dependencies:
'@atproto/common-web': 0.4.16
'@atproto/syntax': 0.4.3
iso-datestring-validator: 2.2.2
multiformats: 9.9.0
zod: 3.24.2
'@atproto/syntax@0.3.4': {}
'@atproto/xrpc@0.6.10':
'@atproto/syntax@0.4.3':
dependencies:
'@atproto/lexicon': 0.4.8
tslib: 2.8.1
'@atproto/xrpc@0.7.7':
dependencies:
'@atproto/lexicon': 0.6.1
zod: 3.24.2
'@babel/code-frame@7.26.2':
@@ -2650,12 +2673,12 @@ snapshots:
'@babel/helper-validator-identifier@7.25.9': {}
'@discordjs/builders@1.13.1':
'@discordjs/builders@1.10.1':
dependencies:
'@discordjs/formatters': 0.6.2
'@discordjs/util': 1.2.0
'@discordjs/formatters': 0.6.0
'@discordjs/util': 1.1.1
'@sapphire/shapeshift': 4.0.0
discord-api-types: 0.38.37
discord-api-types: 0.37.119
fast-deep-equal: 3.1.3
ts-mixer: 6.0.4
tslib: 2.8.1
@@ -2664,35 +2687,33 @@ snapshots:
'@discordjs/collection@2.1.1': {}
'@discordjs/formatters@0.6.2':
'@discordjs/formatters@0.6.0':
dependencies:
discord-api-types: 0.38.37
discord-api-types: 0.37.119
'@discordjs/rest@2.6.0':
'@discordjs/rest@2.4.3':
dependencies:
'@discordjs/collection': 2.1.1
'@discordjs/util': 1.2.0
'@discordjs/util': 1.1.1
'@sapphire/async-queue': 1.5.5
'@sapphire/snowflake': 3.5.3
'@vladfrangu/async_event_emitter': 2.4.6
discord-api-types: 0.38.37
discord-api-types: 0.37.119
magic-bytes.js: 1.10.0
tslib: 2.8.1
undici: 6.21.3
undici: 6.21.1
'@discordjs/util@1.2.0':
dependencies:
discord-api-types: 0.38.37
'@discordjs/util@1.1.1': {}
'@discordjs/ws@1.2.3':
'@discordjs/ws@1.2.1':
dependencies:
'@discordjs/collection': 2.1.1
'@discordjs/rest': 2.6.0
'@discordjs/util': 1.2.0
'@discordjs/rest': 2.4.3
'@discordjs/util': 1.1.1
'@sapphire/async-queue': 1.5.5
'@types/ws': 8.18.0
'@vladfrangu/async_event_emitter': 2.4.6
discord-api-types: 0.38.37
discord-api-types: 0.37.119
tslib: 2.8.1
ws: 8.18.1
transitivePeerDependencies:
@@ -3676,23 +3697,22 @@ snapshots:
dependencies:
path-type: 4.0.0
discord-api-types@0.38.37: {}
discord-api-types@0.37.119: {}
discord.js@14.25.1:
discord.js@14.18.0:
dependencies:
'@discordjs/builders': 1.13.1
'@discordjs/builders': 1.10.1
'@discordjs/collection': 1.5.3
'@discordjs/formatters': 0.6.2
'@discordjs/rest': 2.6.0
'@discordjs/util': 1.2.0
'@discordjs/ws': 1.2.3
'@discordjs/formatters': 0.6.0
'@discordjs/rest': 2.4.3
'@discordjs/util': 1.1.1
'@discordjs/ws': 1.2.1
'@sapphire/snowflake': 3.5.3
discord-api-types: 0.38.37
discord-api-types: 0.37.119
fast-deep-equal: 3.1.3
lodash.snakecase: 4.1.1
magic-bytes.js: 1.10.0
tslib: 2.8.1
undici: 6.21.3
undici: 6.21.1
transitivePeerDependencies:
- bufferutil
- utf-8-validate
@@ -5344,7 +5364,9 @@ snapshots:
undici-types@6.20.0: {}
undici@6.21.3: {}
undici@6.21.1: {}
unicode-segmenter@0.14.5: {}
unpipe@1.0.0: {}
+21
View File
@@ -0,0 +1,21 @@
# Security
# Do not execute any scripts of installed packages (project scripts still run)
ignoreDepScripts: true
# Do not automatically run pre/post scripts (e.g. preinstall, postbuild)
enablePrePostScripts: false
# Only allow packages published at least 10 days ago (reduces risk of compromised packages)
minimumReleaseAge: 14400
# Fail if a package's trust level has decreased compared to previous releases
trustPolicy: no-downgrade
# Ignore trust policy for packages published more than 1 year ago (predates provenance signing)
trustPolicyIgnoreAfter: 525960
# Fail if there are missing or invalid peer dependencies
strictPeerDependencies: true
# Prevent transitive dependencies from using exotic sources (git repos, direct tarball URLs)
blockExoticSubdeps: true
# Lockfile
# Allow the lockfile to be updated during install (set to true in CI for stricter reproducibility)
preferFrozenLockfile: false