Recuperando de upgrade falho/parcialmente aplicado

Veja isto:

Esvaziei todas as tabelas que estavam me dando erros (uma por uma, no final foram 7), até que pude reconstruir o aplicativo sem nenhum erro.

No seu caso, parece que o problema é uma coluna:

PG::DuplicateColumn: ERROR: column "bookmarkable_id" of relation "bookmarks" already exists

Talvez você devesse procurar a qual tabela ela pertence, para poder esvaziá-la, ou você pode simplesmente remover essa coluna.

Acredito que o problema seja que, ao migrar parcialmente, essas tabelas já são criadas, daí não poder criá-las novamente e retornar um erro. Talvez uma condicional possa ser adicionada a este processo, para que não dê erros? (Não sou um especialista) @pfaffman