Skip to content

0.7 alpha 2#258

Open
Chenglong-MS wants to merge 41 commits intomainfrom
dev
Open

0.7 alpha 2#258
Chenglong-MS wants to merge 41 commits intomainfrom
dev

Conversation

@Chenglong-MS
Copy link
Collaborator

This pull request introduces Docker support for the Data Formulator project, making it easier to run the application without local Python or Node.js setup. It also refactors CORS handling for better security and configuration, and includes several improvements and fixes to agent logic and logging. The changes span new Docker-related files, Python backend adjustments, and updates to agent code for more accurate metadata and logging.

Dockerization and Development Environment:

  • Added a production-ready Dockerfile with a multi-stage build to bundle the frontend and backend, and a docker-compose.yml for easy orchestration and persistent workspace data. .dockerignore is included to optimize builds. [1] [2] [3]
  • Updated DEVELOPMENT.md with Docker usage instructions and caveats about sandboxing in containerized environments.
  • Added VS Code workspace settings for Python interpreter and terminal tool auto-approval.

Backend API and CORS Handling:

  • Centralized and configurable CORS headers using an @after_request handler in agent_routes.py, removing duplicated and insecure Access-Control-Allow-Origin: * headers from individual endpoints. Now, CORS is controlled via the CORS_ORIGIN environment variable. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]

Agent Logic and Metadata Improvements:

  • Updated semantic type references and metadata in agent prompts and logic for more precise field categorization (e.g., using "Category" instead of "Type", refining monetary and discrete numeric types). [1] [2] [3]
  • Improved guidance in agent prompts for scale/domain inference and clarified open-ended measure handling.
  • Enhanced logging in agent_data_rec.py and agent_data_transform.py to include LLM token usage and clarify timing breakdowns. [1] [2]
  • Adjusted image detail levels in chart/image payloads for agents to optimize LLM input and output. [1] [2] [3] [4]

Other Improvements:

  • Added more detailed logging in agent routines for better observability during LLM calls. [1] [2]
  • Minor corrections and consistency improvements in agent prompt templates and comments. [1] [2] [3]

These changes collectively improve deployment flexibility, security, and developer experience, while also enhancing the correctness and observability of agent operations.

IAMkecheng and others added 30 commits February 27, 2026 21:35
Bumps [immutable](https://github.com/immutable-js/immutable-js) from 5.1.4 to 5.1.5.
- [Release notes](https://github.com/immutable-js/immutable-js/releases)
- [Changelog](https://github.com/immutable-js/immutable-js/blob/main/CHANGELOG.md)
- [Commits](immutable-js/immutable-js@v5.1.4...v5.1.5)

---
updated-dependencies:
- dependency-name: immutable
  dependency-version: 5.1.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
add src/lib/agents-chart/core/color-decisions.ts, undated corresponding Echarts code
…ble-5.1.5

Bump immutable from 5.1.4 to 5.1.5
Bumps [tornado](https://github.com/tornadoweb/tornado) from 6.5.4 to 6.5.5.
- [Changelog](https://github.com/tornadoweb/tornado/blob/master/docs/releases.rst)
- [Commits](tornadoweb/tornado@v6.5.4...v6.5.5)

---
updated-dependencies:
- dependency-name: tornado
  dependency-version: 6.5.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.11.0 to 2.12.0.
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](jpadilla/pyjwt@2.11.0...2.12.0)

---
updated-dependencies:
- dependency-name: pyjwt
  dependency-version: 2.12.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
fix color setting of echarts and chart.js
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Remove user: "0:0" override in docker-compose.yml — the Dockerfile
already creates /home/appuser/.data_formulator and chowns it to appuser
before switching to USER appuser, so the override was causing the app to
run as root and write to /root/.data_formulator, bypassing the mounted
volume entirely.

Pass --user with host uid:gid to docker run in DockerSandbox so the
sandbox container UID matches the host user that created the bind-mounted
output directory. Without this, the non-root sandbox user cannot write
the output parquet file, silently breaking all Docker sandbox executions.
Bumps [pyasn1](https://github.com/pyasn1/pyasn1) from 0.6.2 to 0.6.3.
- [Release notes](https://github.com/pyasn1/pyasn1/releases)
- [Changelog](https://github.com/pyasn1/pyasn1/blob/main/CHANGES.rst)
- [Commits](pyasn1/pyasn1@v0.6.2...v0.6.3)

---
updated-dependencies:
- dependency-name: pyasn1
  dependency-version: 0.6.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
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