Skip to content

DEV-1833: Document app dictation through the JS API - #291

Open
tonytlwu wants to merge 2 commits into
masterfrom
feature/DEV-1833-app-dictation-js-api
Open

DEV-1833: Document app dictation through the JS API#291
tonytlwu wants to merge 2 commits into
masterfrom
feature/DEV-1833-app-dictation-js-api

Conversation

@tonytlwu

@tonytlwu tonytlwu commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Document the implemented Fliplet.AI.transcribeAudio(audio, options) contract for Blob and File inputs.
  • Add a runnable MediaRecorder dictation example with MIME negotiation, cancellation, timeout handling, and microphone cleanup.
  • Correct the supported MIME types, limits, response shape, and error behavior.
  • Update the generated llms-full.txt mirror.

Jira

DEV-1833

Related API PR

Fliplet/fliplet-api#8534

Merge and publication gate

Do not merge or publish this documentation PR until the API change in #8534 has reached production. Its release PR must be merged into fliplet-api master and ci/circleci: deploy-api-production must succeed. The integration-environment deployment is for QA only and does not satisfy this gate.

QA sample code

Until this PR is merged and published, the live developer documentation will not contain the new example. QA must copy the runnable sample from the docs/API/core/ai.md diff in this PR.

The runtime portion depends on API PR #8534 being available in the test environment.

Test plan

From the docs directory:

  • npm run test:unit — 163 tests pass.
  • npm run check:docs — strict index and cross-link validation passes.
  • bundle exec jekyll build — the documentation site builds successfully. Existing unrelated Liquid warnings remain.
  • npm run build:md-siblings — 203 Markdown siblings and 17 .well-known files are copied.
  • Confirm the Fliplet.AI source section and generated llms-full.txt section match.

For runtime QA after the API PR is deployed:

  1. Copy the example from this PR into a V3 test app.
  2. Record WebM microphone audio, stop recording, and confirm result.text is displayed.
  3. Confirm microphone tracks are released after success, failure, recording cancellation, and upload cancellation.
  4. Cancel during transcription and confirm no late transcript is inserted.
  5. If available, repeat in a browser that records MP4.
  6. Confirm the ai.audio audit entry contains the current app and screen without transcript text.
  7. Confirm the ai_audio_minute deduct is attributed to the app with runtime source and server-derived duration.

Notes

Client cancellation stops the browser upload but does not guarantee that provider work already started by the server is cancelled or that incurred credit usage is reversed.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 21, 2026

Copy link
Copy Markdown

Deploying fliplet-cli with  Cloudflare Pages  Cloudflare Pages

Latest commit: d785a87
Status: ✅  Deploy successful!
Preview URL: https://01dab929.fliplet-cli.pages.dev
Branch Preview URL: https://feature-dev-1833-app-dictati.fliplet-cli.pages.dev

View logs

@Arpanexe Arpanexe left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Found one issue in the browser recording example.

Comment thread docs/API/core/ai.md Outdated

@Arpanexe Arpanexe left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants