Skip to content

refactor(audience): centralise SDK runtime constants and message envelope keys (SDK-277) #1595

refactor(audience): centralise SDK runtime constants and message envelope keys (SDK-277)

refactor(audience): centralise SDK runtime constants and message envelope keys (SDK-277) #1595

Triggered via pull request May 3, 2026 07:17
Status Failure
Total duration 45s
Artifacts

commitlint.yml

on: pull_request
commitlint
42s
commitlint
Fit to window
Zoom out
Zoom in

Annotations

1 error and 2 warnings
commitlint
You have commit messages with errors ⧗ input: refactor(audience-sdk): introduce ContextKeys and GameLaunchPropertyKeys; route DeviceCollector through Constants.MaxFieldLength Names the per-event context dictionary keys and the auto-fired game_launch property keys, and routes DeviceCollector's twelve truncation sites through Constants.MaxFieldLength so the 256-char cap reads as a contract. - Constants.cs: adds ContextKeys (UserAgent, Timezone, Locale, Screen) and GameLaunchPropertyKeys (Platform, Version, BuildGuid, UnityVersion, OsFamily, DeviceModel, Gpu, GpuVendor, Cpu, CpuCores, RamMb, ScreenDpi, DistributionPlatform). - DeviceCollector.cs: CollectContext writes ContextKeys; CollectGameLaunchProperties writes GameLaunchPropertyKeys; truncation calls use Constants.MaxFieldLength. - ImmutableAudience.cs: distribution-platform overlay on game_launch reads GameLaunchPropertyKeys.DistributionPlatform. ✖ body's lines must not be longer than 100 characters [body-max-line-length] ✖ header must not be longer than 100 characters, current length is 128 [header-max-length] ✖ found 2 problems, 0 warnings ⓘ Get help: https://github.com/conventional-changelog/commitlint/#what-is-commitlint ⧗ input: refactor(audience-sdk): introduce EventPropertyKeys Names the per-event property dictionary keys used by Session, TypedEvents, and the sample-app catalogue. - Constants.cs: adds EventPropertyKeys grouped by owning event (shared keys, Progression, Resource, Purchase, MilestoneReached). - Session.cs: SessionStart / SessionEnd / SessionHeartbeat property dictionaries read keys from EventPropertyKeys. - TypedEvents.cs: Progression / Resource / Purchase / MilestoneReached ToProperties dictionaries read keys from EventPropertyKeys. - AudienceSample.Events.cs: typed event-spec EventField names read from EventPropertyKeys. ✖ body's lines must not be longer than 100 characters [body-max-line-length] ✖ found 1 problems, 0 warnings ⓘ Get help: https://github.com/conventional-changelog/commitlint/#what-is-commitlint ⧗ input: refactor(audience-sdk): introduce EventNames Names the auto-fired and typed event-name strings so runtime emit and the sample-app catalogue read from one place. - Constants.cs: adds EventNames with SessionStart, SessionEnd, SessionHeartbeat, GameLaunch, Progression, Resource, Purchase, MilestoneReached. - Session.cs: SafeTrack calls for session_start / session_end / session_heartbeat read from EventNames. - ImmutableAudience.cs: auto-fired game_launch event reads from EventNames.GameLaunch. - TypedEvents.cs: Progression / Resource / Purchase / MilestoneReached EventName properties read from EventNames. - AudienceSample.Events.cs: typed-event catalogue and the BuildTypedEvent dispatch read from EventNames. ✖ body's lines must not be longer than 100 characters [body-max-line-length] ✖ found 1 problems, 0 warnings ⓘ Get help: https://github.com/conventional-changelog/commitlint/#what-is-commitlint ⧗ input: refactor(audience-sdk): expand MessageFields with envelope keys Adds the 15 wire-format envelope keys callers reach for (eventName, anonymousId, identityType, traits, messageId, eventTimestamp, context, surface, library, libraryVersion, fromId, fromType, toId, toType, properties), and routes runtime emit and downstream callers through the new constants. - Constants.cs: MessageFields gains the new envelope keys, grouped by section (envelope / track / identity / alias / context). - MessageBuilder.cs: BuildBase, Track, Identify, Alias all read keys from MessageFields. - ImmutableAudience.cs: DeleteData query string and consent-sync body anonymousId go through MessageFields; context-overlay TryGetValue reads MessageFields.Context. - AudienceSample.cs: typed/string/custom event echo, identify form, and alias form go through MessageFields.Properties / IdentityType / Traits. - Test suite (MessageBuilderTests, ImmutableAudienceTests, ConsentSyncTests, JsonReaderTests, JsonTests, EventQueueTests, DeleteDataTests): bracket-style envelope key access reads from MessageFiel
commitlint
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
commitlint
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/