Skip to content

feat(docs): package and deliver release-versioned HubSpot docs (ADR-065) - #239

Draft
seanspeaks wants to merge 4 commits into
nextfrom
feat/module-docs-publishing
Draft

seanspeaks wants to merge 4 commits into
nextfrom
feat/module-docs-publishing

Conversation

@seanspeaks

Copy link
Copy Markdown
Contributor

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant