# Stage 112: Private Sync Connectors (aq112_sync_drive_sftp_and_github_connectors / DB-UNIT-02)

Synchronizes tenant Google Drive 30TB corpora, SFTP tmp->new->cur->done drops, GitHub trees, RapidAPI tools, private SWHID code, and private feeds across domains.

- Atomic micro-queue: `aq112_sync_drive_sftp_and_github_connectors` (visibility: `public_commons`)
- Backing database unit: `DB-UNIT-02` (`Source Acquisition & Findability Taxonomy Core`)
- Database cell: `entities-db.teleon.dev` (`teleon_core.acquisition_seed_registry`, `teleon_core.skos_findability_concepts`, `teleon_core.capability_gap_ledger`)
- Claim row hydration: `single_self_contained_flat_task_row` (100% context inline, normalized writeback)
- Track 2 Sister queue (`SISTER-02`): `sq02-improve-findability-queue.teleon.dev` (Improve source yield, diversify domain priorities, and add new languages, synonyms, and harvesting routines.)
- Lanes: 30TB Drive pageToken, SFTP Maildir Atomic, GitHub & R2 Cursors

## Execution engines & AI Agent freedom contract

- **Deterministic (0 model calls)**: `skos_lexical_normalizer_v1` (Incremental cursor walker & atomic Maildir state machine)
- **Hybrid (<=1 model call)**: `bilingual_card_tagger_v1`
- **AI Agent & Bot Fleet (1..6 calls)**: `deep_gap_hunter_and_harvester_v1` (Schema mapper & selective triage router)
  - Contract: **Instructions + Resources + Freedom to search for new resources and new ways not bound by instructions**

## Database invariants

- Discovery stays effect-free; external repository fetches require pinned source connector grants.
- Record every inspected candidate, rejection reason, and license pin.

## External & internal bot fleet actions

- Advance incremental Google Drive pageTokens and hand multi-GB ZIPs directly to aq97 HTTP 206 slicing
- Enforce SFTP Maildir tmp/ -> new/ -> cur/ -> done/ atomic transitions so partial uploads never corrupt reads
- Isolate tenant-private tools, SWHID components, storage, and feeds behind X-Teleon-Surface-Id

## Sister self-tuning areas

- Reprioritize starved creative/scientific domains via urgency weights
- Add new languages (fr, ko, ar, hi) and domain-specific colloquial synonyms
- Demote repetitive repository metadata extraction into deterministic code_blocks
