Skip to content

Conversation

@CraigMacomber
Copy link
Contributor

Description

Add minimal internal only text domain suitable for building an example text editor or tree.

Reviewer Guidance

The review process is outlined on this wiki page.

Copilot AI review requested due to automatic review settings December 16, 2025 19:04
@CraigMacomber CraigMacomber requested a review from a team as a code owner December 16, 2025 19:04
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR introduces a minimal internal text domain for the tree DDS, providing schema and utilities for building text editors beyond basic string primitives. The implementation stores text as an array of individual characters and exposes a simple API for text manipulation operations.

Key Changes:

  • Adds TextAsTree namespace with schema for representing text as a tree structure
  • Implements basic text editing operations (insert, remove, iterate characters)
  • Includes initial test coverage for basic functionality

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
packages/dds/tree/src/text/textDomain.ts Core implementation defining TextNode class with character array storage and editing methods
packages/dds/tree/src/text/index.ts Public export of TextAsTree namespace
packages/dds/tree/src/text/README.md Documentation noting early work-in-progress status
packages/dds/tree/src/test/text/textDomain.spec.ts Basic tests for text node type validation and common operations
packages/dds/tree/src/index.ts Adds TextAsTree to main package exports

* - Support in generateSchemaFromSimpleSchema for recognizing text nodes and generating the appropriate schema.
* - Ensure above features work well enough to support important scenarios like AI assisted editing and document indexing for search.
*
* Again these are general patterns that components with non-trivial encodings and thus part of that work will be establishing and documenting those patterns more generally,
Copy link
Contributor

Choose a reason for hiding this comment

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

There seems to be a typo in this sentence. I'm having trouble parsing it.

@github-actions
Copy link
Contributor

github-actions bot commented Jan 7, 2026

🔗 No broken links found! ✅

Your attention to detail is admirable.

linkcheck output


> fluid-framework-docs-site@0.0.0 ci:check-links /home/runner/work/FluidFramework/FluidFramework/docs
> start-server-and-test "npm run serve -- --no-open" 3000 check-links

1: starting server using command "npm run serve -- --no-open"
and when url "[ 'http://127.0.0.1:3000' ]" is responding with HTTP status code 200
running tests using command "npm run check-links"


> fluid-framework-docs-site@0.0.0 serve
> docusaurus serve --no-open

[SUCCESS] Serving "build" directory at: http://localhost:3000/

> fluid-framework-docs-site@0.0.0 check-links
> linkcheck http://localhost:3000 --skip-file skipped-urls.txt

Crawling...

Stats:
  248690 links
    1795 destination URLs
    2034 URLs ignored
       0 warnings
       0 errors


@CraigMacomber CraigMacomber merged commit b3faf64 into microsoft:main Jan 9, 2026
32 checks passed
@CraigMacomber CraigMacomber deleted the addTextDomain branch January 9, 2026 23:15
anthony-murphy-agent pushed a commit to anthony-murphy-agent/FluidFramework that referenced this pull request Jan 14, 2026
## Description

Add minimal internal only text domain suitable for building an example
text editor or tree.
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.

3 participants