Skip to content

docs(gravity-forms-abilities): document the abilities bug fixes (1.1.3) - #9

Open
faction23 wants to merge 16 commits into
mainfrom
fix-8313-abilities-bugs
Open

faction23 wants to merge 16 commits into
mainfrom
fix-8313-abilities-bugs

Conversation

@faction23

Copy link
Copy Markdown
Contributor

Description

Closes: https://github.com/gravityforms/backlog/issues/8313

Documents the contract changes from gravityforms/gravityforms#4045, one commit per change. Changelog section 1.1.3 lists each one.

Main additions to SKILL.md:

  • A new API Conventions section: id types, not-found behavior, count keys, plain-text errors, delete confirmations, annotations, and the warnings array.
  • feeds-create starts feeds paused unless is_active is true. feeds-update accepts is_active alone.
  • forms-create adds the default admin notification when notifications is omitted.
  • notifications-delete and confirmations-delete require the id as confirmation.
  • forms-update merges unsent field properties by id. forms-analyze-logic reports orphaned rules.
  • submissions-submit and submissions-validate accept field_values. Submissions refuse file upload values.

Reference updates: entry timestamps, the empty source_url, the entries-delete ownership check, and the orphaned flag in conditional logic.

Testing instructions

  1. Run ./scripts/validate-skills.sh. Expect it to pass.
  2. Read the API Conventions section in skills/gravity-forms-abilities/SKILL.md. Confirm each rule matches the behavior in gravityforms/gravityforms#4045.
  3. Confirm change_log.txt has one 1.1.3 line per commit.

Checklist:

  • I've checked the error log to ensure my code doesn't throw any errors.
  • My code follows the WordPress coding standards and inline documentation standards.
  • My code follows the accessibility standards.
  • This PR has a related issue.
  • This PR has a related test.
  • I have considered what will happen when an existing user updates to this branch.
  • I have added a "Documentation Needed" label to this PR (if necessary).

@ChrisMKindred ChrisMKindred left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This looks to be in line with gravityforms#4045, and skill validation passes. I have one comment: clarify that creation warnings should be resolved by updating the saved entry, not by retrying creation and creating a duplicate.


**Entry metadata for API entries:** `source_url` is empty, because the entry has no embedding page; `ip` and `user_agent` describe the API caller.

**Imports:** `entries-create` accepts `date_created` as a UTC timestamp (`YYYY-MM-DD HH:MM:SS`, or `YYYY-MM-DD`); without it the entry is stamped now. `entries-update` always sets `date_updated` to now. Both return a `warnings` array when a key names a field or input id that is not on the form; those values are not saved, so fix the ids and retry.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Could we clarify “fix the ids and retry” here? entries-create has already saved the entry when it returns warnings, so retrying creates a duplicate. Callers should instead use entries-update with the returned entry_id and corrected field IDs.

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.

2 participants