# CLI 0.0.4-microsoft-preview.20

Microsoft migration engine preview. Stable `latest` remains 0.0.3.

## Fix: artifact-detail reads could trigger a discovery loop

The inspected FINACCONT-BT run completed grouping, then detailed discovery
repeated graph and bulk artifact reads without storing its outputs. The
`migration_getArtifactDetails` schema advertised pagination, but its handler
ignored the cursor and returned the entire roughly 204KB result.

- Implemented native exact-text pagination on the same artifact-detail tool.
  Large results provide a stable document ID and an explicit `nextRead` input;
  the model no longer needs to resubmit long lists or switch to the archive reader.
- Each serialized page is bounded to 12,000 UTF-8 bytes, including escaping and
  metadata. Contiguous pages reconstruct the exact serialized artifact IR.
  Small complete responses retain the upstream `artifacts[]` shape.
- Added persistent first-unread-page guidance across prompt-history eviction.
  Reading only the last page cannot mark the whole document delivered.
- Reordered/duplicate artifact IDs, default offsets and document aliases cannot
  make the same evidence appear new to the repeated-call guard.
- Invalid cursors receive explicit corrective feedback. Source-scope restrictions,
  finite budgets, exact audits and mandatory Microsoft finalization remain intact.

No model change, longer timeout, higher call limit, synthetic migration output,
source truncation or relaxed orchestration verification is used as the fix.

## PowerShell update

```powershell
Invoke-WebRequest 'https://tools.lambogenius.com/lambogenius-integration-migration/0.0.4-microsoft-preview.20/install-cli.ps1' -OutFile install-cli-preview20.ps1
# Review the downloaded script before running it.
& .\install-cli-preview20.ps1 -SkipDependencies
li.cmd --version
```

Expected version: `0.0.4-microsoft-preview.20`. Keep your existing model and
configuration. Preserve previous output and use a fresh generated workspace:
the engine fingerprint changes, so do not force an old checkpoint to resume.
Installation does not reset license counters.

## Verification and limits

- 95 Microsoft-core tests, 234 CLI tests and 24 release/installer tests passed
  (353 total). Compilation and CLI lint passed.
- Replayed the captured FINACCONT-BT bulk request against 98 selected files and
  five orchestrations. All 20 pages reconstructed the exact serialized IR. A
  synthetic metadata write was accepted only as a transport test; discovery was
  deliberately not finalized. Source and existing customer files were unchanged.
- After two seeded setup reads, the existing local `qwen3-coder:30b` followed four
  consecutive real page continuations correctly, including across history eviction.
  This bounded test used a 64K context and retained exact local audits.

**This verifies the pagination defect and live continuation behavior, not a fresh
end-to-end FINACCONT-BT migration.** The model must still analyse the evidence and
pass discovery, planning, orchestration coverage, conversion and runtime checks.
Earlier pages remain retrievable in the audit/archive, not permanently in the
finite prompt. Other model loops or semantic errors remain possible and must
fail visibly rather than be reported as successful migration.
