fix: preserve group fields in compact output - #2
Open
beausterling wants to merge 1 commit into
Open
Conversation
beausterling
force-pushed
the
fix/compact-group-fields
branch
from
August 12, 2026 06:35
370088d to
bff7909
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Preserve Skool group identity in compact agent output
Human summary
me groupsemits title-cased identity fields—Hash,Name, andSlug—but compact mode only retained lowercase generic fields. Because--agentenables compact mode automatically, every accessible community was rendered as an empty object.This PR preserves those three fields and adds a regression test. A live authenticated check returned all 10 accessible communities with complete compact identity data.
Problem
Expected:
[ { "Hash": "97d0633486794bc8a486f31f2ff4be2d", "Name": "GenHQ - Creative AI Education", "Slug": "genhq" } ]Actual before this change:
[ {}, {}, {} ]The non-agent command worked because it did not apply compact field filtering:
The agent-oriented equivalent lost all identity data:
Root cause
newMeGroupsCmdconstructs objects with these keys:compactListFieldsused a case-sensitive allowlist containing generic lowercase keys such as:None of the fields emitted by
me groupsmatched the allowlist, so compact mode retained no fields.Changes
internal/cli/helpers.goHash,Name, andSlugto the compact list allowlist--compactand--agentoutputinternal/cli/helpers_test.goTestCompactListFieldsPreservesMeGroupIdentity.printing-press-patches.jsonAGENTS.mdThe source change includes a
// PATCH:annotation so it can be identified during future Printing Press regeneration.Behavior matrix
me groups --jsonme groups --agentHash,Name, andSlugretaineddescriptionAutomated validation
Targeted regression test:
go test -vet=off ./internal/cli \ -run TestCompactListFieldsPreservesMeGroupIdentity -vResult:
Build validation:
Both entry points build successfully.
Live integration validation
Using an authenticated account with 10 accessible Skool communities:
Verified assertions:
No credential values or community member data are included in this PR.
Baseline dependency note
At the current
mainbaseline, unrestrictedgo test ./...andgo vet ./...encounter two unrelated pre-existing vet failures:Those failures are fixed independently in #1. This PR intentionally does not duplicate or depend on those source changes; its targeted test disables vet only to isolate this regression against the current baseline.
Once #1 is merged, the full suite can run without that baseline exception.
Security and privacy
Compatibility
Review guide
Recommended review order:
internal/cli/me.gowith the allowlist change ininternal/cli/helpers.go.Hash,Name, andSlug.descriptionremains omitted.AGENTS.md.Follow-up opportunity
A future systemic Printing Press improvement could normalize generated identity keys or make compact matching schema-aware/case-tolerant. This PR remains deliberately narrow to fix the observed Skool CLI behavior without changing compact semantics globally.