Repository navigation
Conversation
How to review these changes 👓Thank you for your contribution. To review these changes, choose one of the following options: A Hubber will need to deploy your changes internally to review. Table of review linksNote: Please update the URL for your staging server or codespace. The table shows the files in the
Key: fpt: Free, Pro, Team; ghec: GitHub Enterprise Cloud; ghes: GitHub Enterprise Server 🤖 This comment is automatically generated. |
There was a problem hiding this comment.
🟡 Changes recommended
The documentation should also cover the accepted lowercase 0o octal syntax.
Get a fresh assessment by requesting another Copilot review.
Pull request overview
Updates GitHub Actions expression documentation to clarify supported number literal syntax.
Changes:
- Replaces the inaccurate JSON-based description.
- Documents decimal, floating-point, exponent, and hexadecimal literals.
File summaries
| File | Summary |
|---|---|
content/actions/reference/workflows-and-actions/expressions.md |
Clarifies number literal syntax. Remaining nit (3 votes): include lowercase 0o octal literals. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 1
- Review effort level: Lite (auto)
Note
Copilot is running an experiment and ran this review at Lite.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Why:
Related to #43008.
The number-literal row says "Any number format supported by JSON", but the same page demonstrates hexadecimal (
0xff), which JSON does not accept. Workflow authors and expression-tool implementers need an accurate description of the accepted syntax.What's being changed:
Describe decimal integer and floating-point literals, exponent notation and hexadecimal literals explicitly, consistent with the examples already on the page.
Measurements and reproduction
On 14 September 2026, I reran the 44-expression corpus against GitHub Actions: 30 expressions were accepted and evaluated, and 14 were rejected by the expression parser with HTTP 422. The exact workflows, dispatch requests and responses, and successful-run logs are preserved.
The reference snapshot is tagged
github-actions-expressions-of-concern. It contains:For example, the measured
0x1Fand0o17expressions both evaluate successfully, producing31and15. Their uppercase-prefix counterparts,0X1Fand0O17, are rejected. The complete table below lets reviewers inspect the accepted and rejected spellings together.Service-side values were captured in
run-name; runner-side values were captured through step environment variables. Both record the text returned bytoJSON(). The capture used hosted Ubuntu runners with runner version 2.337.0. For-0, the service recorded0and the runner recorded-0; the other 29 accepted results agree.All 44 expressions measured on 14 September 2026
Each evidence link points to the saved result under the reference tag.
toJSON()toJSON()+111-00-0-1-1-1-Infinity-Infinity-Infinity.50.50.5.5e1550000.1 + 0.2000001231231230B1010O170X1F0b1010o1715150o80x01110x01232912910x0e12252250x1F31310xG1 + 11.111.0e+1.0e+991E+991E+991.51.51.51E+51000001000001_0001e1e+1e+0110101e+5 == 100000truetrue1e+51000001000001e-0111e-51E-051E-051e0110101e01231E+1231E+1231e3091e51000001000001e5e521474836482147483648214748364890071992547409939.00719925474099E+159.00719925474099E+15InfinityInfinityInfinityNaNNaNNaNValidation
Check off the following: