# RFC-001 Advisory Tuning Closure Report

Date: 2026-03-14 (America/Los_Angeles)
Mode: advisory-only

## 1) Classification of Current Advisories

Previously flagged session keys:
- `agent:main:hook:notion`
- `agent:main:telegram:slash:8032472383`

Classification:
- `agent:main:hook:notion` → **Expected** (canonical integration hook lane, not drift)
- `agent:main:telegram:slash:8032472383` → **Expected** (canonical Telegram slash ingress lane, not drift)

Conclusion: both current advisories were false-positive drift detections caused by an incomplete allowlist.

## 2) Changes Made

### Updated canonical lane registry
File: `docs/state/rfc001-canonical-lanes.json`

- Version bumped: `1.0.0-pilot` → `1.0.1-pilot`
- `updatedAt` updated to `2026-03-14T07:20:00Z`
- Added role `user_interaction_telegram_slash` with allowed pattern:
  - `^agent:main:telegram:slash:[0-9]+$`
- Added role `integration_hook_notion` with allowed pattern:
  - `^agent:main:hook:notion$`

### Updated drift-check rule logic
File: `scripts/rfc001/drift_check.py`

- `check_noncanonical_anomalies(...)` now derives main-lane allow patterns dynamically from all registry roles whose `allowedPatterns` begin with `^agent:main:`.
- Removed hardcoded role subset (`orchestration`, `user_interaction_telegram_direct`) that caused false positives for valid new main lanes.

No channel routing changes were made. No new agents were created.

## 3) Drift Check Outputs (Before/After)

Command used both times:
```bash
scripts/rfc001/run-drift-checks.sh
```

### Before tuning
Timestamp: `2026-03-14T07:14:25Z`
- `findingCount`: **2**
- Findings:
  - `NON_CANONICAL_LANE_ANOMALY` for `agent:main:hook:notion`
  - `NON_CANONICAL_LANE_ANOMALY` for `agent:main:telegram:slash:8032472383`

### After tuning
Timestamp: `2026-03-14T07:15:10Z`
- `findingCount`: **0**
- Findings: `[]`

## 4) Final Classification + Residual Open Items

Final classification:
- `agent:main:hook:notion` → expected, now allowlisted
- `agent:main:telegram:slash:*` → expected, now allowlisted
- Remaining true drift signals after tuning: **none currently detected**

Residual open items:
- None blocking for this closure.
- Existing historical advisory entries remain in `tmp/ops-maintainer-advisories.jsonl` (expected audit trail), but no new advisories were emitted post-tuning run because there were no findings.
