toeverything/AFFiNE · error · Error

Unsupported system filter: ${params.key}

Error message

Unsupported system filter: ${params.key}

What it means

SystemFilterProvider.filter$ throws when no FilterProvider is registered under 'system:<key>', meaning the rule references a system filter key the current build does not implement (renamed or removed filter).

Source

Thrown at packages/frontend/core/src/modules/collection-rules/impls/filters/system.ts:13

import { Service } from '@toeverything/infra';
import { type Observable } from 'rxjs';

import { FilterProvider } from '../../provider';
import type { FilterParams } from '../../types';

export class SystemFilterProvider extends Service implements FilterProvider {
  filter$(params: FilterParams): Observable<Set<string>> {
    const provider = this.framework.getOptional(
      FilterProvider('system:' + params.key)
    );
    if (!provider) {
      throw new Error('Unsupported system filter: ' + params.key);
    }
    return provider.filter$(params);
  }
}

View on GitHub (pinned to b4c8548c09)

Solutions

  1. Use a supported system filter key.
  2. Remove or replace the unknown system filter.
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown in the system filter dispatcher when no filter provider is registered for the given system filter key.

Common situations: Occurs when a collection references a system filter key that does not exist in this build, often after downgrades or stale configs; remove the unrecognized filter from the collection.


AI-assisted analysis of toeverything/AFFiNE@b4c8548c09 (2026-08-18). Data as JSON: /api/errors/39197fe5fa9ee51c. Report an issue: GitHub.