bluesky-social / pds

Bluesky PDS (Personal Data Server) container image, compose file, and documentation
Other
940 stars 84 forks source link

Can't activate account #100

Open Isolyth opened 6 days ago

Isolyth commented 6 days ago

I migrated my account from bsky.social to my PDS, isolyth.dev, using goat. Here is the command I used (with sensitive info removed)

./goat account migrate \ --pds-host https://isolyth.dev \ --new-handle isolyth.isolyth.dev \ --new-password pass \ --new-email personal@gmail.com \ --plc-token token \ --invite-code isolyth-dev-etc

and here was it's output

2024/10/19 22:36:33 INFO new host serviceDID=did:web:isolyth.dev url=https://isolyth.dev 2024/10/19 22:36:33 INFO creating account on new host handle=isolyth.isolyth.dev host=https://isolyth.dev 2024/10/19 22:36:34 INFO migrating repo 2024/10/19 22:36:35 INFO migrating preferences 2024/10/19 22:36:35 INFO migrating blobs 2024/10/19 22:36:35 INFO transferred blob cid=bafkreid36mtmjfcqdqn2bf6vlrhvkwdfsxgv4cjkp2s3pvshwyamcplizi size=23735 2024/10/19 22:36:36 INFO transferred blob cid=bafkreihv46auld5cndwyhnugstodwo6j3p6wedegkr4i2f2tpfanmveks4 size=59282 2024/10/19 22:36:36 INFO account migration status status="&{Activated:false ExpectedBlobs:2 ImportedBlobs:2 IndexedRecords:311 PrivateStateValues:0 RepoBlocks:403 RepoCommit:bafyreibmxtm6tpbslvgj4oozb2qocqqkkx5biqpymxza5scweeq6thgiwm RepoRev:3l6vxntybj223 ValidDid:false}" 2024/10/19 22:36:36 INFO updating identity to new host 2024/10/19 22:36:37 INFO activating new account error: failed activating new host: XRPC ERROR 400: InvalidRequest: A request body was provided when none was expected

I can no longer access my account via bluesky, and when I try to do goat account status, I get trying to refresh auth from password... error: XRPC ERROR 400: InvalidRequest: A request body was provided when none was expected

when I try to activate my account via the bluesky app, bluesky says it has an error and the following gets printed to the log

{"level":50,"time":1729394902426,"pid":7,"hostname":"5e9fb84ddd31","name":"xrpc-server","status":400,"message":"A request body was provided when none was expected","msg":"error in xrpc method com.atproto.server.activateAccount"} pds | {"level":30,"time":1729394902428,"pid":7,"hostname":"5e9fb84ddd31","name":"pds","req":{"id":135,"method":"POST","url":"/xrpc/com.atproto.server.activateAccount","query":{},"params":{},"headers":{"host":"isolyth.dev","user-agent":"okhttp/4.12.0","transfer-encoding":"chunked","accept-encoding":"gzip, br","atproto-accept-labelers":"did:plc:ar7c4by46qjdydhdevvrndac;redact","authorization":"Bearer did:plc:allu5vs3gnm2wm7jzf4rad3r","cdn-loop":"cloudflare; loops=1","cf-connecting-ip":"164.76.52.20","cf-ipcountry":"US","cf-ray":"8d55eadbfa9a6177-ORD","cf-visitor":"{\"scheme\":\"https\"}","cf-warp-tag-id":"59dc8679-2b3a-4377-9950-ec35dbf5d1ce","connection":"keep-alive","x-forwarded-for":"164.76.52.20","x-forwarded-proto":"https"}},"res":{"statusCode":400,"headers":{"x-powered-by":"Express","access-control-allow-origin":"*","cache-control":"private","vary":"Authorization, Accept-Encoding","content-type":"application/json; charset=utf-8","content-length":"89","etag":"W/\"59-WLt4gQmGLWobaBLj3pBXg1SK9jU\""}},"responseTime":5,"msg":"request completed"}

When I try to use pdsadmin to create an account (with a different name) I just get 'ERROR: Internal Server Error'

Is my account just gone forever now? How can I get it activated on my new PDS?

Isolyth commented 6 days ago

I stepped through the code, it is able to authenticate and get a JWT token, and it IS able to fetch the account data! Including the DID, account activation status, email, etc. I am no network developer so I'm not really sure what's going on, but it seems like the issue may be around lines 192-197 of xrpc.go?

Isolyth commented 6 days ago

What I've tried so far: pdsadmin create account: only works if the email is set to something@isolyth.dev, if it's set to say, something@gmail.com, I get the myserious internal server error

changing the email of my account in account.sqlite: No dice, still does not work

Isolyth commented 6 days ago

Was ultimately able to get the account online by nulling out the disabled on and delete on fields in the actor DB, but goat status still fails, and not being able to activate the account shouldn't be an issue

bnewbold commented 5 days ago

hi! sorry you ran in to issues. it sounds like you got your account working? I'll try to take a look at this in the next couple weeks.