Skip to content

Conversation

@akodkod
Copy link
Owner

@akodkod akodkod commented Dec 13, 2025

When enabled, raises MissingTypeError if arguments or outputs are
defined without a type option. Defaults to false for backwards
compatibility.


Note

Introduces require_type (default true) to require type on all arg/output, raising MissingTypeError, with DSL validation, docs, examples, and tests updated.

  • Config/Core:
    • Add config.require_type (default: true) to enforce explicit type on all arg/output.
    • Introduce Light::Services::MissingTypeError.
    • Add DSL validation Validation.validate_type_presence! and invoke it in ArgumentsDsl.arg and OutputsDsl.output.
  • Docs/Examples:
    • Update README.md examples to include type and showcase dry-types.
    • Add configuration docs for enforcing/disabling type definitions; note default and behavior.
    • Add hints to docs/arguments.md and docs/outputs.md about require_type.
  • Tests:
    • Extend config specs to include require_type default and accessor.
    • Add require_type_spec covering enabled/disabled behavior for args/outputs.

Written by Cursor Bugbot for commit 66f8fb2. This will update automatically on new commits. Configure here.

When enabled, raises MissingTypeError if arguments or outputs are
defined without a type option. Defaults to false for backwards
compatibility.
Add require_type to configuration docs with examples and table entry.
Add cross-reference hints in arguments and outputs documentation.
- Change require_type default from false to true
- Update README simple example with basic Ruby types
- Update README advanced example with dry-types
- Update configuration docs to reflect new default
- Update tests for new default value
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

This is the final PR Bugbot will review for you during this billing cycle

Your free Bugbot reviews will reset on January 7

Details

You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.

To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

raise_on_warning: false,
rollback_on_warning: false,

require_type: true,
Copy link

Choose a reason for hiding this comment

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

Bug: Default value contradicts PR's backwards compatibility intent

The PR description explicitly states that require_type should "default to false for backwards compatibility," but the implementation sets require_type: true as the default. This would break existing services that define arguments or outputs without type annotations, causing them to raise MissingTypeError upon upgrading. The documentation also incorrectly shows true as the default.

Additional Locations (1)

Fix in Cursor Fix in Web

@codecov
Copy link

codecov bot commented Dec 13, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 55.75%. Comparing base (ae8f12b) to head (66f8fb2).
⚠️ Report is 4 commits behind head on main.

❗ There is a different number of reports uploaded between BASE (ae8f12b) and HEAD (66f8fb2). Click for more details.

HEAD has 1 upload less than BASE
Flag BASE (ae8f12b) HEAD (66f8fb2)
2 1
Additional details and impacted files
@@             Coverage Diff              @@
##              main      #27       +/-   ##
============================================
- Coverage   100.00%   55.75%   -44.25%     
============================================
  Files           28       20        -8     
  Lines         1185      608      -577     
============================================
- Hits          1185      339      -846     
- Misses           0      269      +269     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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