chore: remove preserving remote note with RemoteNotesCleaning

This commit is contained in:
anatawa12 2025-08-04 23:32:48 +09:00
parent e4da21684b
commit a890ff675f
No known key found for this signature in database
GPG Key ID: 9CA909848B8E4EA6
1 changed files with 2 additions and 27 deletions

View File

@ -5,11 +5,9 @@
import { setTimeout } from 'node:timers/promises';
import { Inject, Injectable } from '@nestjs/common';
import { DataSource } from 'typeorm';
import { DI } from '@/di-symbols.js';
import { MiNote } from '@/models/Note.js';
import { MiDeletedNote } from '@/models/DeletedNote.js';
import type { MiMeta, NoteFavoritesRepository, NotesRepository, UserNotePiningsRepository } from '@/models/_.js';
import type { MiMeta, NotesRepository } from '@/models/_.js';
import type Logger from '@/logger.js';
import { bindThis } from '@/decorators.js';
import { IdService } from '@/core/IdService.js';
@ -24,18 +22,9 @@ export class CleanRemoteNotesProcessorService {
@Inject(DI.meta)
private meta: MiMeta,
@Inject(DI.db)
private db: DataSource,
@Inject(DI.notesRepository)
private notesRepository: NotesRepository,
@Inject(DI.noteFavoritesRepository)
private noteFavoritesRepository: NoteFavoritesRepository,
@Inject(DI.userNotePiningsRepository)
private userNotePiningsRepository: UserNotePiningsRepository,
private idService: IdService,
private queueLoggerService: QueueLoggerService,
) {
@ -146,21 +135,7 @@ export class CleanRemoteNotesProcessorService {
}
if (notes.length > 0) {
await this.db.transaction(async (transaction) => {
await transaction.save(MiDeletedNote, notes.filter(x => x.replyId != null || x.renoteId != null || noteIdsWithReplies.has(x.id) || noteIdsWithRenotes.has(x.id)).map(note => ({
id: note.id,
deletedAt: null, // This is existing note on the remote, so we set deletedAt to null.
replyId: note.replyId,
renoteId: note.renoteId,
userId: note.userId,
localOnly: note.localOnly,
uri: note.uri,
url: note.url,
replyUserId: note.replyUserId,
renoteUserId: note.renoteUserId,
})));
await transaction.delete(MiNote, notes.map(note => note.id));
});
await this.notesRepository.delete(notes.map(note => note.id));
for (const note of notes) {
const t = this.idService.parse(note.id).date.getTime();