Repository navigation
feat(docs): package and deliver release-versioned HubSpot docs (ADR-065) - #239
Draft
seanspeaks wants to merge 4 commits into
Draft
seanspeaks wants to merge 4 commits into
seanspeaks wants to merge 4 commits into
Conversation
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.
HubSpot is the first ADR-065 documentation pilot, paired with friggframework/frigg#724.
Adds a schema-validated catalog descriptor, five authored guides, 89 public-method annotations, and a checked read-only listContacts example. A prepack hook builds a deterministic bundle after package versioning; the explicit package files list includes it in npm's tarball. The source input SHA and exact resolved package metadata account for Lerna version/gitHead changes. HubSpot runtime, auth and webhook implementations are unchanged; known source limitations are documented.
A local auto plugin records candidates only after a successful non-canary release. A separate, disabled-by-default delivery job verifies exact published npm versions, integrity and candidate digest before dispatching package/version to Frigg. The retry workflow retrieves the existing npm bundle and never republishes a package. GitHub App credentials stay in that separate delivery job. A [skip release] marker suppresses release jobs for tooling-only commits without disabling docs checks.
Validation: 7 focused producer/example/lifecycle/delivery tests pass, including runtime inventory agreement for all 89 public methods, no-op/canary filtering, Lerna metadata handling, and failed dispatch/retry. Real npm pack ran with its prepack hook; check-pack verified bundle inclusion and equality. That tarball imported twice through the paired receiver with the second import producing no changes. Workflow YAML parsed. No live provider calls or npm publication occurred.
Activation: land the receiver, bootstrap its workflow on default main, configure MODULE_DOCS_APP_ID and MODULE_DOCS_APP_PRIVATE_KEY, then enable MODULE_DOCS_ENABLED here. The manual retry workflow must exist on default main, and stable releases need the same producer on the stable release branch. Only a new HubSpot release containing the bundle is eligible; earlier releases are not fabricated or overwritten. See tools/module-docs/README.md and the receiver's setup guide.