Skip to content

Add missing_data safe output type for reporting data gaps#9324

Merged
pelikhan merged 6 commits intomainfrom
copilot/add-missing-data-output-type
Jan 8, 2026
Merged

Add missing_data safe output type for reporting data gaps#9324
pelikhan merged 6 commits intomainfrom
copilot/add-missing-data-output-type

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Jan 8, 2026

Adds missing_data safe output type to allow AI agents to report missing data required to complete tasks, encouraging truthfulness over hallucination.

Implementation

Backend (Go)

  • pkg/workflow/missing_data.go - Config struct, parser, job builder following missing_tool pattern
  • Auto-enabled when safe-outputs configured (can be disabled with missing-data: false)
  • Schema validation in main_workflow_schema.json
  • Config generation for MCP tools integration

Frontend (JavaScript)

  • actions/setup/js/missing_data.cjs - Records missing data reports with validation
  • actions/setup/js/create_missing_data_issue.cjs - Creates/updates GitHub issues with context
  • Integrated into handler manager dispatch system

Documentation

  • Added to safe-outputs reference with configuration examples
  • Emphasizes rewarding honest AI behavior over data invention

Configuration

safe-outputs:
  missing-data:
    create-issue: true           # Default: true
    title-prefix: "[data]"       # Default: "[missing data]"
    labels: [data, blocked]
    max: 10                      # Default: unlimited

Agent Output Format

{
  "type": "missing_data",
  "data_type": "user_preferences",
  "reason": "Database not accessible",
  "context": "Needed for dashboard customization",
  "alternatives": "Could use defaults"
}

Required fields: data_type, reason
Optional fields: context, alternatives

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/user
    • Triggering command: /usr/bin/gh gh api user --jq .login /repos/actions/github-script/git/ref/tags/v8 --jq /usr/bin/git b/workflows GO111MODULE 64/bin/go git -C /home/REDACTED/work/gh-aw/gh-aw/.github/workflows (http block)
    • Triggering command: /usr/bin/gh gh api user --jq .login /ref/tags/v8 --jq (http block)
    • Triggering command: /usr/bin/gh gh api user --jq .login /run/containerd/io.containerd.runtime.v2.task/moby/8374908e0a0c032b563bb42d5d54ec6174667d66208bbe2175fc9fbc7eebf7d7/init.pid 8374908e0a0c032b563bb42d5d54ec6174667d66208bbe2175fc9fbc7eebf7d7 (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

Add a new safe output type, missing_data, similar to missing_tool but designed to allow the model to report missing data required to achieve a goal.

  • front matter integration, parsing, config generation
  • JavaScript handler that opens an issue like missing_tool
  • update docs
  • provide a rich description that rewards the model for being truthful and never try to invent data

✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI and others added 2 commits January 8, 2026 07:46
- Created pkg/workflow/missing_data.go with config struct and parser
- Added MissingData field to SafeOutputsConfig in compiler_types.go
- Added parsing logic in safe_outputs_config.go to auto-enable missing_data
- Implemented buildCreateOutputMissingDataJob function
- Added comprehensive tests in missing_data_test.go
- All tests passing

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
- Created actions/setup/js/missing_data.cjs handler
- Created actions/setup/js/create_missing_data_issue.cjs handler
- Added handlers to safe_output_handler_manager.cjs
- Added comprehensive tests for missing_data handler
- All JavaScript tests passing
- Code formatted and linted

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
@mnkiefer
Copy link
Copy Markdown
Contributor

mnkiefer commented Jan 8, 2026

@pelikhan: This is great! Exactly the kind of tooling we need to establish more trust on developer side for data-related agent things. 🚀

Copilot AI and others added 3 commits January 8, 2026 07:58
- Updated docs/src/content/docs/reference/safe-outputs.md
- Added missing_data to system types list
- Added detailed section explaining missing_data functionality
- Included rich description that encourages AI truthfulness
- Documented configuration options and use cases

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
- Added missing-data schema definition in main_workflow_schema.json
- Added config generation logic in safe_outputs_config_generation.go
- Added missing_data to enabled tools list
- Tested workflow compilation successfully
- missing_data now appears in compiled workflow configuration

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Implementation complete:
- Go backend with config parsing and job builder
- JavaScript handlers for recording and issue creation
- Schema validation with JSON schema
- Configuration generation for MCP tools
- Comprehensive tests for Go and JavaScript
- Documentation with rich truthfulness encouragement
- All feature tests passing

The missing_data safe output type allows AI agents to report missing
data required to achieve goals, encouraging truthfulness over hallucination.
Agents can be honest about data gaps instead of inventing information,
leading to more reliable outputs.

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
@mnkiefer mnkiefer marked this pull request as ready for review January 8, 2026 08:12
Copilot AI changed the title [WIP] Add new safe output type for missing data reporting Add missing_data safe output type for reporting data gaps Jan 8, 2026
Copilot AI requested a review from pelikhan January 8, 2026 08:15
@pelikhan pelikhan merged commit 6753474 into main Jan 8, 2026
114 of 116 checks passed
@pelikhan pelikhan deleted the copilot/add-missing-data-output-type branch January 8, 2026 08:16
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