fix(cli): handle skill: wrapper key in agents skill add YAML config #1472 #1506

Merged
HAL9000 merged 4 commits from fix/skill-add-yaml-wrapper-key into master 2026-05-30 08:32:23 +00:00

4 Commits

Author SHA1 Message Date
controller-ci-rerun c008804f05 chore: re-trigger CI [controller]
CI / push-validation (pull_request) Successful in 21s
CI / lint (pull_request) Successful in 32s
CI / build (pull_request) Successful in 28s
CI / helm (pull_request) Successful in 31s
CI / quality (pull_request) Successful in 50s
CI / typecheck (pull_request) Successful in 1m11s
CI / security (pull_request) Successful in 1m14s
CI / unit_tests (pull_request) Successful in 5m51s
CI / docker (pull_request) Successful in 1m19s
CI / coverage (pull_request) Successful in 10m41s
CI / integration_tests (pull_request) Successful in 25m32s
CI / status-check (pull_request) Successful in 3s
2026-05-30 04:04:21 -04:00
HAL9000 e21fc197d3 fix(skills): fix robot integration test YAML creation for skill: wrapper key test 2026-05-30 04:04:21 -04:00
HAL9000 387b640249 fix(skills): fix CI gate failures blocking PR #1506 merge
Fix pre-existing lint, typecheck, and security failures that were
blocking the PR from passing CI:

- Fix E501 line-too-long in session_service.py (remove erroneous
  "sha256:" string prefix from dict comprehension on line 268)
- Fix W293 trailing whitespace in tool.py line 249
- Fix typecheck error in session_service.py: data.get("checksum")
  can return None, remove invalid string concatenation
- Fix typecheck error in schema.py: add explicit dict[str, Any]
  type annotation for wrapper variable to resolve str|None issue
- Fix vulture false positive: add "destination" Protocol parameter
  to vulture_whitelist.py
- Fix @tdd_issue/@tdd_issue_1472 tag placement in skill_schema.feature
  (remove blank line between tags and scenario)
- Add @tdd_issue/@tdd_issue_1472 tags to all new wrapper key scenarios
- Add Robot integration test for spec-compliant skill: wrapper YAML
2026-05-30 04:04:21 -04:00
HAL9000 cce6cfb119 fix(skill): handle skill: wrapper key in agents skill add YAML config
Implement skill: wrapper key unwrapping in SkillConfigSchema.from_yaml()
to support the spec-required YAML format with cleveragents: metadata header.

- Strip cleveragents: metadata block from raw YAML before validation
- Unwrap skill: wrapper key if present, with descriptive errors for invalid values
- Maintain backward compatibility with flat YAML format (no wrapper)
- Add Behave scenarios tagged @tdd_issue and @tdd_issue_1472 covering:
  * Spec-compliant YAML with skill: wrapper key
  * Spec-compliant YAML with cleveragents: header
  * skill: with None, string, and list values (error cases)
  * Backward compatibility with flat YAML
  * cleveragents: header without skill: wrapper

Closes #1472
2026-05-30 04:04:21 -04:00