rultor.com logo This build log was produced by rultor.com for cqfn/aibolit-mcp-server#3
++ dirname ./run.sh
+ cd .
+ echo 1138
+ echo '2.0-SNAPSHOT BUILD'
2.0-SNAPSHOT BUILD
+ date
Mon May 12 16:08:07 UTC 2025
+ uptime
 16:08:07 up 1 min,  0 users,  load average: 1.23, 0.39, 0.14
+ head=git@github.com:cqfn/aibolit-mcp-server.git
+ ff=default
+ image=yegor256/ruby
+ rebase=false
+ squash=false
+ head_branch=master
+ author=yegor256
+ tag=0.0.3
+ vars=('--env=head=git@github.com:cqfn/aibolit-mcp-server.git' '--env=tag=0.0.3' '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:cqfn/aibolit-mcp-server.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''tag=0.0.3'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''sudo /usr/bin/install-node.sh'\'' '\'';'\'' '\''npm install --no-color'\'' '\'';'\'' '\''pdd -f /dev/null -v'\'' '\'';'\'' '\''[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/" package.json'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/" src/server.ts'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/" index.ts'\'' '\'';'\'' '\''make'\'' '\'';'\'' '\''git commit -am "set version to ${tag}"'\'' '\'';'\'' '\''chmod 600 ../npmrc'\'' '\'';'\'' '\''npm publish --no-color --userconfig=../npmrc'\'' '\'';'\'' )' '--env=head_branch=master' '--env=author=yegor256')
+ scripts=('export '\''head=git@github.com:cqfn/aibolit-mcp-server.git'\''' ';' 'export '\''tag=0.0.3'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=yegor256'\''' ';' 'sudo /usr/bin/install-node.sh' ';' 'npm install --no-color' ';' 'pdd -f /dev/null -v' ';' '[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1' ';' 'sed -i "s/0\.0\.0/${tag}/" package.json' ';' 'sed -i "s/0\.0\.0/${tag}/" src/server.ts' ';' 'sed -i "s/0\.0\.0/${tag}/" index.ts' ';' 'make' ';' 'git commit -am "set version to ${tag}"' ';' 'chmod 600 ../npmrc' ';' 'npm publish --no-color --userconfig=../npmrc' ';')
+ directory=
+ container=cqfn_aibolit-mcp-server_3
+ as_root=false
+ hostname
ip-172-31-28-223
+ pwd
/tmp/rultor-diNi
+ git --version
git version 2.34.1
+ docker --version
Docker version 25.0.3, build 4debf41
+ mkdir -p /home/ubuntu/.ssh
+ echo -e 'Host github.com\n\tStrictHostKeyChecking no\n'
+ chmod 600 /home/ubuntu/.ssh/config
+ git clone git@github.com:cqfn/aibolit-mcp-server.git repo
Cloning into 'repo'...
Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.
+ cd repo
+ git config user.email gpg@rultor.com
+ git config user.name Rultor.com
+ '[' -z 'export '\''head=git@github.com:cqfn/aibolit-mcp-server.git'\''' ']'
+ cd ..
+ cat
+ '[' false = true ']'
+ cat
+ chmod a+x entry.sh
+ cat
+ echo 'export '\''head=git@github.com:cqfn/aibolit-mcp-server.git'\''' ';' 'export '\''tag=0.0.3'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=yegor256'\''' ';' 'sudo /usr/bin/install-node.sh' ';' 'npm install --no-color' ';' 'pdd -f /dev/null -v' ';' '[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1' ';' 'sed -i "s/0\.0\.0/${tag}/" package.json' ';' 'sed -i "s/0\.0\.0/${tag}/" src/server.ts' ';' 'sed -i "s/0\.0\.0/${tag}/" index.ts' ';' make ';' 'git commit -am "set version to ${tag}"' ';' 'chmod 600 ../npmrc' ';' 'npm publish --no-color --userconfig=../npmrc' ';'
+ sensitive=()
+ set -ex -o pipefail
+ '[' -z 0.0.3 ']'
+ [[ 0.0.3 =~ ^[a-zA-Z0-9\.\-]+$ ]]
+ echo 'tag name is valid: "0.0.3"'
tag name is valid: "0.0.3"
+ cd repo
++ git tag -l 0.0.3
+ '[' -n '' ']'
+ BRANCH_NAME=__rultor
++ wc -l
++ git show-branch __rultor
+ '[' 0 -gt 0 ']'
+ export BRANCH_NAME
+ git checkout -b __rultor
Switched to a new branch '__rultor'
+ docker_when_possible
+ true
++ tail -n 1
++ sed 's/ /\n/g'
++ uptime
+ load=0.16
++ bc
++ echo 0.16 '>' 30
+ '[' 0 -eq 1 ']'
+ echo 'load average is 0.16, low enough to run a new Docker container'
load average is 0.16, low enough to run a new Docker container
+ break
+ cd ..
+ '[' -n '' ']'
+ use_image=yegor256/ruby
+ docker pull yegor256/ruby
Using default tag: latest
latest: Pulling from yegor256/ruby
19f1f54854d6: Pulling fs layer
3ee1ef79bfdc: Pulling fs layer
68201ec6e581: Pulling fs layer
b3ee2c8b8446: Pulling fs layer
5d174db1ceb2: Pulling fs layer
621eb568a8b7: Pulling fs layer
40bed440eda0: Pulling fs layer
4f4fb700ef54: Pulling fs layer
cffc0a797d65: Pulling fs layer
c2b677023924: Pulling fs layer
056c4de02430: Pulling fs layer
89486a9f9b88: Pulling fs layer
a9de24f4d26b: Pulling fs layer
28780be7dbe8: Pulling fs layer
09637d3d0e8e: Pulling fs layer
8d3bcd15f7fe: Pulling fs layer
b3ee2c8b8446: Waiting
5d174db1ceb2: Waiting
621eb568a8b7: Waiting
40bed440eda0: Waiting
4f4fb700ef54: Waiting
cffc0a797d65: Waiting
c2b677023924: Waiting
056c4de02430: Waiting
89486a9f9b88: Waiting
a9de24f4d26b: Waiting
28780be7dbe8: Waiting
09637d3d0e8e: Waiting
8d3bcd15f7fe: Waiting
3ee1ef79bfdc: Verifying Checksum
3ee1ef79bfdc: Download complete
19f1f54854d6: Verifying Checksum
19f1f54854d6: Download complete
5d174db1ceb2: Verifying Checksum
5d174db1ceb2: Download complete
68201ec6e581: Verifying Checksum
68201ec6e581: Download complete
40bed440eda0: Verifying Checksum
40bed440eda0: Download complete
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
cffc0a797d65: Verifying Checksum
cffc0a797d65: Download complete
621eb568a8b7: Verifying Checksum
621eb568a8b7: Download complete
c2b677023924: Verifying Checksum
c2b677023924: Download complete
89486a9f9b88: Verifying Checksum
89486a9f9b88: Download complete
056c4de02430: Verifying Checksum
056c4de02430: Download complete
a9de24f4d26b: Verifying Checksum
a9de24f4d26b: Download complete
09637d3d0e8e: Verifying Checksum
09637d3d0e8e: Download complete
28780be7dbe8: Verifying Checksum
28780be7dbe8: Download complete
b3ee2c8b8446: Verifying Checksum
b3ee2c8b8446: Download complete
8d3bcd15f7fe: Verifying Checksum
8d3bcd15f7fe: Download complete
19f1f54854d6: Pull complete
3ee1ef79bfdc: Pull complete
68201ec6e581: Pull complete
b3ee2c8b8446: Pull complete
5d174db1ceb2: Pull complete
621eb568a8b7: Pull complete
40bed440eda0: Pull complete
4f4fb700ef54: Pull complete
cffc0a797d65: Pull complete
c2b677023924: Pull complete
056c4de02430: Pull complete
89486a9f9b88: Pull complete
a9de24f4d26b: Pull complete
28780be7dbe8: Pull complete
09637d3d0e8e: Pull complete
8d3bcd15f7fe: Pull complete
Digest: sha256:2beec55e9f24df51d760477ad930f86eb442f5da278ce78b1290fb952eaf2be7
Status: Downloaded newer image for yegor256/ruby:latest
docker.io/yegor256/ruby:latest
+ docker ps --filter=status=exited
+ grep --quiet '\scqfn_aibolit-mcp-server_3\s*$'
+ ls -al .
total 48
drwx------  3 ubuntu ubuntu 4096 May 12 16:08 .
drwxrwxrwt 12 root   root   4096 May 12 16:08 ..
-rwxrwxr-x  1 ubuntu ubuntu  658 May 12 16:08 end.sh
-rwxrwxr-x  1 ubuntu ubuntu  490 May 12 16:08 entry.sh
-rw-rw-r--  1 ubuntu ubuntu   74 May 12 16:08 npmrc
-rw-rw-r--  1 ubuntu ubuntu    5 May 12 16:08 pid
drwxrwxr-x  7 ubuntu ubuntu 4096 May 12 16:08 repo
-rwxrwxr-x  1 ubuntu ubuntu 6598 May 12 16:08 run.sh
-rw-rw-r--  1 ubuntu ubuntu  690 May 12 16:08 script.sh
-rw-rw-r--  1 ubuntu ubuntu 6597 May 12 16:08 stdout
++ pwd
++ pwd
+ docker run -t --rm -v /tmp/rultor-diNi:/main --env=head=git@github.com:cqfn/aibolit-mcp-server.git --env=tag=0.0.3 '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:cqfn/aibolit-mcp-server.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''tag=0.0.3'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''sudo /usr/bin/install-node.sh'\'' '\'';'\'' '\''npm install --no-color'\'' '\'';'\'' '\''pdd -f /dev/null -v'\'' '\'';'\'' '\''[[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/" package.json'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/" src/server.ts'\'' '\'';'\'' '\''sed -i "s/0\.0\.0/${tag}/" index.ts'\'' '\'';'\'' '\''make'\'' '\'';'\'' '\''git commit -am "set version to ${tag}"'\'' '\'';'\'' '\''chmod 600 ../npmrc'\'' '\'';'\'' '\''npm publish --no-color --userconfig=../npmrc'\'' '\'';'\'' )' --env=head_branch=master --env=author=yegor256 --hostname=docker --privileged --net=host --dns 8.8.8.8 --add-host docker:127.0.0.1 --memory=8g --memory-swap=16g --oom-kill-disable --cidfile=/tmp/rultor-diNi/cid -w=/main -v /var/run/docker.sock:/var/run/docker.sock --name=cqfn_aibolit-mcp-server_3 yegor256/ruby /main/entry.sh
WARNING: Your kernel does not support OomKillDisable. OomKillDisable discarded.
+ set -e
+ set -o pipefail
+ shopt -s dotglob
+ useradd -m -G sudo r
++ awk -F : '$3 > 100 { print $1 }'
++ cat /etc/group
+ for g in $(cat /etc/group | awk  -F  ':' '$3 > 100 { print $1 }')
+ usermod -a -G nogroup r
+ for g in $(cat /etc/group | awk  -F  ':' '$3 > 100 { print $1 }')
+ usermod -a -G ssh r
+ for g in $(cat /etc/group | awk  -F  ':' '$3 > 100 { print $1 }')
+ usermod -a -G r r
+ usermod -s /bin/bash r
+ echo '%sudo ALL=(ALL) NOPASSWD:ALL'
+ cp -R /root/.bashrc /root/.cache /root/.gemrc /root/.profile /home/r
+ cp -R ./cid ./end.sh ./entry.sh ./npmrc ./pid ./repo ./run.sh ./script.sh ./stdout /home/r
+ rm -rf repo
+ chown -R r:r /home/r
+ chmod a+x /home/r/script.sh
+ cat /home/r/script.sh
#!/bin/bash
set -e
set -o pipefail
if [ -e /home/r/.profile ]; then source /home/r/.profile; fi
shopt -s expand_aliases
alias 'sudo=sudo -i'
export HOME=/home/r
cd "${HOME}/repo"
export 'head=git@github.com:cqfn/aibolit-mcp-server.git' ; export 'tag=0.0.3' ; export 'head_branch=master' ; export 'author=yegor256' ; sudo /usr/bin/install-node.sh ; npm install --no-color ; pdd -f /dev/null -v ; [[ "${tag}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || exit -1 ; sed -i "s/0\.0\.0/${tag}/" package.json ; sed -i "s/0\.0\.0/${tag}/" src/server.ts ; sed -i "s/0\.0\.0/${tag}/" index.ts ; make ; git commit -am "set version to ${tag}" ; chmod 600 ../npmrc ; npm publish --no-color --userconfig=../npmrc ;
+ su --login r --command /home/r/script.sh
+ bash
+ curl -fsSL https://deb.nodesource.com/setup_18.x
38;5;79m2025-05-12 16:08:56 - Installing pre-requisites0m
Get:1ohttp://deb.debian.org/debian bullseye InRelease [116 kB]
Get:2ohttp://deb.debian.org/debian-security bullseye-security InRelease [27.2 kB]
Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB]
Get:4ohttp://deb.debian.org/debian bullseye/main amd64 Packages [8,066 kB]
Get:5ohttp://deb.debian.org/debian-security bullseye-security/main amd64 Packages [364 kB]
Get:64http://deb.debian.org/debian bullseye-updates/main amd64 Packages [18.8 kB]
Fetchedo8,636]kBsinr2s0(4,319 kB/s)
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
ca-certificates is already the newest version (20210119).
gnupg is already the newest version (2.2.27-2+deb11u2).
curl is already the newest version (7.74.0-1.3+deb11u14).
The following NEW packages will be installed:
  apt-transport-https
0 upgraded, 1 newly installed, 0 to remove and 18 not upgraded.
Need to get 160 kB of archives.
After this operation, 166 kB of additional disk space will be used.
Get:1ohttp://deb.debian.org/debian bullseye/main amd64 apt-transport-https all 2.2.4 [160 kB]
Fetchedo160nkBsinr0sh(9,813 kB/s) kB 0%]
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package apt-transport-https.
(Reading database ... 25299 files and directories currently installed.)
Preparing to unpack .../apt-transport-https_2.2.4_all.deb ...
Unpacking apt-transport-https (2.2.4) ...
Setting up apt-transport-https (2.2.4) ...
Hit:1ohttp://deb.debian.org/debian bullseye InRelease
Hit:2ohttp://deb.debian.org/debian-security.bullseye-security InRelease
Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
Get:4ohttps://deb.nodesource.com/node_18.x2nodistro InRelease [12.1 kB]
Get:5Whttps://deb.nodesource.com/node_18.x nodistro/main amd64 Packages [11.5 kB]
Fetchedo23.7gkB ino0s (60.7 kB/s)
Reading package lists... Done
1;34m2025-05-12 16:09:04 - Repository configured successfully.0m
38;5;79m2025-05-12 16:09:04 - To install Node.js, run: apt-get install nodejs -y0m
38;5;79m2025-05-12 16:09:04 - You can use N|solid Runtime as a node.js alternative0m
1;32m2025-05-12 16:09:04 - To install N|solid Runtime, run: apt-get install nsolid -y
0m
+ apt-get install --yes nodejs
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  nodejs
0 upgraded, 1 newly installed, 0 to remove and 18 not upgraded.
Need to get 29.7 MB of archives.
After this operation, 187 MB of additional disk space will be used.
Get:1ohttps://deb.nodesource.com/node_18.x nodistro/main amd64 nodejs amd64 18.20.8-1nodesource1 [29.7 MB]
Fetchedo29.7gMBBin91s (51.6]MB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package nodejs.
(Reading database ... 25303 files and directories currently installed.)
Preparing to unpack .../nodejs_18.20.8-1nodesource1_amd64.deb ...
Unpacking nodejs (18.20.8-1nodesource1) ...
Setting up nodejs (18.20.8-1nodesource1) ...
+ node --version
v18.20.8
+ npm --version
10.8.2
1G0K1G0K⠙1G0K⠹1G0K⠸1G0K⠼1G0K⠴1G0K⠦1G0K⠧1G0K⠇1G0K⠏1G0K⠋1G0K⠙1G0K⠹1G0K⠸1G0K⠼1G0K⠴1G0K⠦1G0K⠧1G0K⠇1G0K⠏1G0K⠋1G0K⠙1G0K⠹1G0K⠸1G0K⠼1G0K⠴1G0K⠦1G0K⠧1G0K⠇1G0K⠏1G0Knpm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
1G0K⠏1G0K⠋1G0K⠙1G0Knpm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
1G0K⠙1G0K⠹1G0K⠸1G0K⠼1G0K⠴1G0K⠦1G0K⠧1G0K⠇1G0K⠏1G0K⠋1G0K⠙1G0K⠹1G0K⠸1G0K⠼1G0K⠴1G0K⠦1G0K⠧1G0K⠇1G0K⠏1G0K⠋1G0K⠙1G0K⠹1G0K⠸1G0K⠼1G0K⠴1G0K⠦1G0K⠧1G0K⠇1G0K⠏1G0K⠋1G0K⠙1G0K⠹1G0K⠸1G0K⠼1G0K⠴1G0K⠦1G0K⠧1G0K
added 465 packages, and audited 466 packages in 9s
1G0K⠧1G0K
1G0K⠧1G0K79 packages are looking for funding
1G0K⠧1G0K  run `npm fund` for details
1G0K⠧1G0K
found 0 vulnerabilities
1G0K⠧1G0Knpm notice
npm notice New major version of npm available! 10.8.2 -> 11.3.0
npm notice Changelog: https://github.com/npm/cli/releases/tag/v11.3.0
npm notice To update run: npm install -g npm@11.3.0
npm notice
1G0K⠧1G0KFound 8 lines in /home/r/repo/.pdd
My version is 0.23.1
Ruby version is 3.4.3 at x86_64-linux
Reading from root dir .
Excluding target/**/*
Excluding coverage/**/*
Excluding node_modules/**/*
/usr/local/bundle/gems/pdd-0.23.1/lib/pdd/sources.rb:90: warning: undefining the allocator of T_DATA class FileMagic
/home/r/repo/package-lock.json is a binary file (238468 bytes)
/home/r/repo/package.json is a binary file (1001 bytes)
/home/r/repo/renovate.json is a binary file (114 bytes)
/home/r/repo/test/fixtures/claude-code-config.json is a binary file (97 bytes)
/home/r/repo/tsconfig.json is a binary file (244 bytes)
Reading .0pdd.yml ...
Reading .gitattributes ...
Reading .github/typos.toml ...
Reading .github/workflows/actionlint.yml ...
Reading .github/workflows/codecov.yml ...
Reading .github/workflows/copyrights.yml ...
Reading .github/workflows/eslint.yml ...
Reading .github/workflows/make.yml ...
Reading .github/workflows/markdown-lint.yml ...
Reading .github/workflows/pdd.yml ...
Reading .github/workflows/reuse.yml ...
Reading .github/workflows/typos.yml ...
Reading .github/workflows/up.yml ...
Reading .github/workflows/xcop.yml ...
Reading .github/workflows/yamllint.yml ...
Reading .gitignore ...
Reading .npmignore ...
Reading .pdd ...
Reading .rultor.yml ...
Reading .xcop ...
Reading LICENSE.txt ...
Reading LICENSES/MIT.txt ...
Reading Makefile ...
Reading README.md ...
Reading REUSE.toml ...
Reading eslint.config.mjs ...
Reading index.ts ...
Reading jest.config.ts ...
Reading src/aibolit.ts ...
Reading src/server.ts ...
Reading src/to_gpt.ts ...
Reading src/tools.ts ...
Reading test/aibolit.test.ts ...
Reading test/helpers/once.ts ...
Reading test/index.test.ts ...
Reading test/server.test.ts ...
Reading test/to_gpt.test.ts ...
Reading test/tools.test.ts ...
npx -y jest --config jest.config.ts --no-color --ci
1G0K⠙1G0KDetermining test suites to run...999DK
1A999DK
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1APASS test/server.test.ts (6.746 s)

 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A/bin/bash: line 1: aibolit: command not found

 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1AFAIL test/aibolit.test.ts

 RUNS  ...
1A  ● aibolit › detects simple issue

    expect(received).toContain(expected) // indexOf

    Expected substring: "Your code is perfect"
    Received string:    ""

      26 |     try {
      27 |       const issue = await aibolit(path);
    > 28 |       expect(issue).toContain('Your code is perfect');
         |                     ^
      29 |     } finally {
      30 |       rmSync(tmp, { recursive: true, force: true });
      31 |     }

      at Object.<anonymous> (test/aibolit.test.ts:28:21)


 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1APASS test/tools.test.ts

 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1APASS test/index.test.ts

 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1A
 RUNS  ...
1APASS test/to_gpt.test.ts

 RUNS  ...
1A999DKRunning coverage on untested files...999DK------------|---------|----------|---------|---------|-------------------
File        | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
------------|---------|----------|---------|---------|-------------------
All files   |     100 |      100 |     100 |     100 |
 aibolit.ts |     100 |      100 |     100 |     100 |
 server.ts  |     100 |      100 |     100 |     100 |
 to_gpt.ts  |     100 |      100 |     100 |     100 |
 tools.ts   |     100 |      100 |     100 |     100 |
------------|---------|----------|---------|---------|-------------------

Test Suites: 1 failed, 4 passed, 5 total
Tests:       1 failed, 7 passed, 8 total
Snapshots:   0 total
Time:        12.913 s
Ran all test suites.
1G0K⠙1G0Kmake: *** [Makefile:17: test] Error 1
container 5e20b0f3513a2db8a66dd660b38e90e146223cb85cd4a651f23a6660d2311b81 is dead
Mon May 12 16:10:20 UTC 2025