chore: anonymize Keboola/personal data; de-hardcode Linear deep-links#173
Merged
Conversation
Public repo; fixtures/tests plus two functional spots carried real
Keboola/personal data from the live vault.
Functional:
- render.py Linear-ID detection generalized from the hardcoded team
allowlist (AI|ST|SUPPORT|LDRS|KAI|DATA)-\d+ to [A-Z]{2,10}-\d+, matching
scout-app's reference detector.
- linear.app/keboola deep-link workspace now reads from the
SCOUT_LINEAR_WORKSPACE env var (default 'your-workspace'). Set it to your
workspace slug to retain working Linear deep links.
Data:
- Anonymize unit-test fixtures/strings (jordan -> alex personas, Linear IDs
-> PROJ-*, kai-* -> generic), rename KB fixture people/jordan.md ->
alex.md, neutralize a captured cwd path, reword two 'Jordan's dev-machine'
comments and a 'Keboola SAML' connector note.
- Drop Keboola from the README/TERMS non-affiliation disclaimers.
- Sync canonical parser-corpus.json with the Swift copies; update
EXPECTED_SHA256 -> 745dc8f8...
Preserved as legitimate attribution: pyproject authors, marketplace/plugin
owner + github.com/jordanrburger/... URLs (incl. self-update), LICENSE.
The fixture/test anonymization removed Keboola from TERMS.md and README.md but the rendered terms.html copy served via GitHub Pages still listed it, leaving the published page contradicting its source. Drop "Keboola" from the non-affiliation disclaimer to match TERMS.md. Also genericize a stylesheet comment that named a real person. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace hardcoded `/Users/jordanburger/...` working-directory paths with the
`~/scout-plugin` convention already used elsewhere in these docs, and
genericize standalone "Jordan" references to "the maintainer" (and the
`{{USER_NAME}}` substitution example to the "Alex" persona used in the
anonymized fixtures). Legitimate `jordanrburger/...` repo/attribution URLs
are left intact.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Align the landing-page demo and hero image with the persona set documented in CLAUDE.md (Alex / Priya / Sam). Marcus was fictional already; this just keeps the illustrative names consistent with the project's own convention. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Why
Public repo; fixtures/tests plus two functional spots carried real Keboola/personal data lifted from the live vault.
What
Functional (behavior change):
render.py: Linear-ID detection generalized from the hardcoded team allowlist(AI|ST|SUPPORT|LDRS|KAI|DATA)-\d+to[A-Z]{2,10}-\d+, matching scout-app's reference detector (keeps the cross-language contract aligned).linear.app/kebooladeep-link workspace now reads fromSCOUT_LINEAR_WORKSPACE(defaultyour-workspace). SetSCOUT_LINEAR_WORKSPACEto your workspace slug to retain working Linear deep links.Data:
jordan→alex, Linear IDs →PROJ-…,kai-*→ generic), renamed the KB fixturepeople/jordan.md→alex.md, neutralized a capturedcwdpath, and reworded two "Jordan's dev-machine" comments + a "Keboola SAML" connector note.parser-corpus.jsonwith the Swift copies and updatedEXPECTED_SHA256→745dc8f8….CLAUDE.mdwith the fixture-anonymization conventions and the cross-repo corpus-sync procedure (this repo had none).Preserved as legitimate attribution:
pyprojectauthors,marketplace.json/plugin.jsonowner +github.com/jordanrburger/...URLs (including the self-update fetch),LICENSE.All 869 unit tests pass. Companion PRs anonymize the iOS and desktop copies of the shared corpus.
Intentionally left — @jordanrburger to decide
Authored design docs/plans still reference you and example data. Left untouched — your call whether to anonymize. Added you as reviewer.