3 archived projects excluded · “Selected only” mode — a list from the catalog
5
Content filtering
Built-in rules always apply and are not configurable: empty entities, system events, bots
Collect attachments as links to the catalog
Collect comments and discussions
6
Webhooks
Real-time updates the delta arrives right away, without waiting for a pollactive · event 2 min ago
Endpoint — paste into Jira settings
achilles.local/harvester/webhooks/jira
Signing secret
••••••••••••
registered in the source by hand (auto-provisioning — v2)
7
Schedule
Incremental sync
freshness — pulls the source deltaCustom schedule
inherits globalevery 6 h
Reconciliation
hygiene — a full sweep against the sourceCustom schedule
Frequency
Weekly ▾
Day
Sunday ▾
Time
03:00 ▾
8
↳ every Sunday at 03:00 · organization time (Europe/Moscow)
Source authority
Trust weight in ranking a relevance baseline — higher for policies and wikis, lower for chats; defaults by source type
High ▾
9
Started ↓
Mode ↕
Duration ↕
Entities ↕
Outcome ↕
today · 14:30
Incremental
running · 8.2k of 13.1k
—
running
today · 08:30
Incremental
4 min
1.2k
succeeded
yesterday · 23:10
Partial re-sync
1 min
0.1k
succeeded
yesterday · 22:00
Incremental
2 min
0.3k
failed
3 days ago · 09:00
Full Sync
1 h 12 min
48.1k
cancelled
Management
11
test connection · failure at step 2
✓ URL reachable
✕ Credentials valid · token revoked
— Permissions sufficient · not checked
secret rotation · new one generated
New secret — copy it now, later it will be masked.
whsec_8f2a····d41c
new one activeold one accepted for another 24 h
source locked · syncing
syncing · 62%
A sync is in progress — the configuration is locked. Only cancellation is available.
queued behind graph curation
queued · waiting on curation
A platform graph curation is running (entity merge) — the run
will queue and start once it finishes.
12
1
The type and the set of fields are defined by the
connector manifest. Base URL is the address of the source instance.
2
Two independent axes: Account (service / personal) and Method (static token · OAuth v2). The combinations — Harvester.
3
Credentials are masked — the full value is only visible on creation. They are stored encrypted by the
Auth crypto core.
4
“Test” runs a three-step probe — connectivity, credentials, permissions — and gives a verdict on each, so you fix exactly the link that broke. The same probe runs on schedule: a failure moves the source into error and raises a
notification. The health check — Harvester.
5
Scope is a mode, not a manual list: “Everything” takes the source whole and picks up new items; “Selected only” — a pick from the catalog. The modes —
Harvester.
6
The base rules are built in and not configurable. The “beyond the rules” toggles — relevant to the source type (for Jira, attachments and comments): bring back what was filtered out or pull in optional content. The set is declared by the
connector manifest.
7
Webhooks — the source sends an event, the connector pulls the delta outside the poll; one channel per source. The admin pastes the Endpoint and secret
by hand (auto-provisioning — v2). Rotate secret — behind confirmation, the value shown once; rotation with a grace window runs with no downtime. Inbound handling is held by security.
8
By default the schedule inherits the global
default from the
hub; “Custom schedule” reveals the fields and writes an override on the source. Incremental — an interval without a window; the reconciliation override has a run window (frequency, day, hour) in organization time. The line beneath the fields expands the choice into a live phrase.
9
Source authority — a base trust weight in ranking: at equal freshness a policy outweighs a chat reply. The starting value by type comes from the manifest, and here the admin overrides it. From there it is taken as the baseline by
Curation Pass
— it is a ranking weight, not an access filter.
10
Run history is collapsed by default — secondary next to the configuration. One run = one
SyncRun record: state, “N of M” progress, errors. Sorting — click a column header. The Partial re-sync type is the incremental's self-healing; a string of them in a row signals that the source's webhook is flaky.
11Pause silences the schedule; Disconnect — a reversible deactivation that keeps the config and data; Delete, behind type-to-confirm, offers a choice of “config only” / “config + data” (irreversible). The states — Harvester.
12
A run may end up queued because of a platform graph curation: during its destructive steps a sync waits and starts on completion — it does not fail. Lane coordination — Knowledge Store.
Connection wizard
Adding a source from the
hub — four steps in a modal.
1234
step 1 · type
Source type
Jira
Confluence
Slack
GitLab
step 2 · connection
Connection · Jira
Base URL
acme.atlassian.net
Account
Service account ▾
API token
••••••••••••
step 3 · probe
Connection test
✓ URL reachable
✓ Credentials valid
Permissions sufficient · checking
step 4 · scope
Scope
Everything except excluded ▾
or “Selected only” — a list from the catalog
Search projects
PROJ · Acme Platform
OPS · Operations
Step 1 — types from the
connector registry; the list is open, and a custom connector shows up on its own. Step 2 — URL and credentials by type. Step 3 — the same probe; on success it builds the object catalog. Step 4 — pick containers (projects / spaces / channels) and the scope mode. After “Connect” the source appears in the hub.
Sync wizard
Starting a run from the “Sync” button — a single modal.
“sync” modal
Sync · Jira
Run mode
Incremental — changed only
Full Sync — full re-collection
A full re-collection of a large source takes a long time (~1 h). The run can be cancelled at any moment.
Run scope
Entire source scope ▾
Mode and scope for this run. The duration warning is inline, only for Full Sync. For the run's duration the source is locked; cancellation is safe. The modes —
Harvester · sync-modes.