Skip to content

release: 0.1.0#2

Open
stainless-app[bot] wants to merge 41 commits intomainfrom
release-please--branches--main--changes--next
Open

release: 0.1.0#2
stainless-app[bot] wants to merge 41 commits intomainfrom
release-please--branches--main--changes--next

Conversation

@stainless-app
Copy link
Copy Markdown
Contributor

@stainless-app stainless-app Bot commented Apr 3, 2026

Automated Release PR

0.1.0 (2026-05-08)

Full Changelog: v0.0.2...v0.1.0

Features

Bug Fixes

  • go: avoid panic when http.DefaultTransport is wrapped (ee40854)

Chores

  • avoid embedding reflect.Type for dead code elimination (6567e85)
  • internal: more robust bootstrap script (c2663fb)
  • redact api-key headers in debug logs (ce6b68d)
  • tests: bump steady to v0.22.1 (90f868d)

Documentation


This pull request is managed by Stainless's GitHub App.

The semver version number is based on included commit messages. Alternatively, you can manually set the version number in the title of this pull request.

For a better experience, it is recommended to use either rebase-merge or squash-merge when merging this pull request.

🔗 Stainless website
📚 Read the docs
🙋 Reach out for help or questions

@stainless-app
Copy link
Copy Markdown
Contributor Author

stainless-app Bot commented Apr 3, 2026

🧪 Testing

To try out this version of the SDK:

Download and unzip: 'https://pkg.stainless.com/s/hyperspell-go/b229e5d4a35557808bc72054f9d4f935273e3348/source.zip'. Run 'go mod edit -replace github.com/hyperspell/hyperspell-go=/path/to/unzipped_directory'.

Expires at: Sun, 07 Jun 2026 18:31:58 GMT
Updated at: Fri, 08 May 2026 18:31:58 GMT

Comment thread memory.go Outdated
type MemoryUploadParams struct {
// The file to ingest.
File io.Reader `json:"file,omitzero" api:"required" format:"binary"`
File string `json:"file" api:"required"`
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correctness: Changing File from io.Reader (with format:"binary") to string breaks actual binary file uploads — apiform.MarshalRoot will now write a plain string value into the multipart form instead of streaming binary file content, making the Upload endpoint non-functional for real files.

🤖 AI Agent Prompt for Cursor/Windsurf

📋 Copy this prompt to your AI coding assistant (Cursor, Windsurf, etc.) to get help fixing this issue

In memory.go at line 964, the `File` field in `MemoryUploadParams` was changed from `io.Reader` with `format:"binary"` tag to `string`. This breaks the `MarshalMultipart` method because `apiform.MarshalRoot` relies on the `format:"binary"` tag to correctly stream binary file content into the multipart writer. Revert this field back to `io.Reader` with the original tags: `json:"file,omitzero" api:"required" format:"binary"`. Also ensure that the `io` package import is present (or re-added if removed).

@entelligence-ai-pr-reviews
Copy link
Copy Markdown


Confidence Score: 1/5 - Blocking Issues

Not safe to merge — the change to memory.go that converts the File field from io.Reader (with format:"binary") to a plain string type fundamentally breaks binary file upload functionality. When apiform.MarshalRoot processes the multipart form, it will serialize a string literal instead of streaming actual binary file content, rendering the Upload endpoint non-functional for any real file uploads. While this PR appears to be a v0.1.0 release milestone, shipping a broken file upload API as the initial release would be a poor foundation.

Key Findings:

  • In memory.go, changing File from io.Reader with format:"binary" to string means apiform.MarshalRoot will write a plain string value into the multipart form body — actual binary file content cannot be transmitted this way, making the Upload endpoint completely non-functional for real use cases.
  • This is a critical correctness bug (score 9.0) in a core file upload path — not a style issue or minor edge case — which means it would ship broken functionality to all consumers of this v0.1.0 release.
  • The severity is amplified by the fact that this is a release PR (v0.1.0): any downstream users pinning to this version would get a broken file upload API with no workaround short of upgrading.
Files requiring special attention
  • memory.go

@canaries-inc
Copy link
Copy Markdown

canaries-inc Bot commented Apr 3, 2026

🐤 Canary Summary

This is a Go SDK library release with no UI/UX components:

  • No web frontend, mobile app, or graphical user interface exists in this repository
  • This is a backend SDK for developers to integrate into their applications
  • Changes are purely infrastructure (version bumps, release management, API client code)
  • The repository contains only Go SDK code, tests, and documentation

@canaries-inc
Copy link
Copy Markdown

canaries-inc Bot commented Apr 3, 2026

🐤 Canary Proposed Tests

No testable user journeys found for this PR.

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 43a3754 to 183ab13 Compare April 8, 2026 03:30
@entelligence-ai-pr-reviews
Copy link
Copy Markdown


Confidence Score: 5/5 - Safe to Merge

Safe to merge — this is a clean version bump release PR for hyperspell-go SDK v0.1.0 with no logic changes, only metadata and documentation updates. The changes are confined to internal/version.go (constant update), .release-please-manifest.json, README.md installation pin, CHANGELOG.md entry, and .stats.yml config hash — all of which are standard release artifacts. No review comments were generated, no pre-existing unresolved issues exist, and the scope of changes carries essentially zero runtime risk.

Key Findings:

  • The PackageVersion constant in internal/version.go is updated from 0.0.2 to 0.1.0, which is a purely mechanical string change with no behavioral impact beyond version reporting.
  • All other changed files (CHANGELOG.md, README.md, .release-please-manifest.json, .stats.yml) are documentation or manifest files that carry no runtime execution risk.
  • No review comments were raised by the automated analysis, and there are zero unresolved pre-existing concerns associated with this PR.
  • The PR is consistent with a standard release-please generated release workflow, which reduces the likelihood of human error in the versioning process.
Files requiring special attention
  • internal/version.go
  • .release-please-manifest.json

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 183ab13 to a270d0c Compare April 8, 2026 22:30
@entelligence-ai-pr-reviews
Copy link
Copy Markdown


Confidence Score: 5/5 - Safe to Merge

Safe to merge — this PR is a version bump release that increments PackageVersion in internal/version.go from 0.0.2 to 0.1.0, with coordinated updates across .release-please-manifest.json, README.md, CHANGELOG.md, and the OpenAPI spec hash. The changes are purely mechanical and administrative with no logic, behavior, or API surface modifications. No review comments were generated and no pre-existing unresolved issues exist.

Key Findings:

  • The PackageVersion constant change in internal/version.go is a straightforward string update with no runtime logic impact beyond version reporting.
  • The CHANGELOG.md addition and README installation command update (v0.1.0 pin) are documentation-only changes that correctly reflect the new release version.
  • The OpenAPI spec URL and hash refresh is consistent with the release process and introduces no functional code changes.
  • Zero review comments were generated across reviewed files, and heuristic analysis found no critical, significant, or medium-severity issues.
Files requiring special attention
  • internal/version.go
  • .release-please-manifest.json

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from a270d0c to f7738a1 Compare April 9, 2026 02:30
@entelligence-ai-pr-reviews
Copy link
Copy Markdown


Confidence Score: 5/5 - Safe to Merge

Safe to merge — this PR is a straightforward version bump coordinating the PackageVersion constant in internal/version.go, .release-please-manifest.json, README.md, CHANGELOG.md, and .stats.yml from 0.0.2 to 0.1.0. No logic, runtime behavior, or API surface is modified; the changes are purely metadata and documentation updates driven by the release tooling. The changelog accurately documents two API updates and the stats file reflects refreshed spec hashes, all consistent with a standard minor release cut.

Key Findings:

  • PackageVersion in internal/version.go is updated from 0.0.2 to 0.1.0, which is a non-breaking string constant change with no runtime side effects beyond correct SDK version reporting.
  • .release-please-manifest.json and README.md pin the install version consistently at v0.1.0, keeping documentation and release tooling in sync with the actual version constant.
  • .stats.yml hash updates reflect the new OpenAPI spec revision, which is expected housekeeping for a minor release and carries no logic risk.
  • No review comments were generated and no pre-existing unresolved issues are present; all five changed files align coherently around a single version increment.
Files requiring special attention
  • internal/version.go
  • CHANGELOG.md

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from f7738a1 to 4771fd0 Compare April 11, 2026 09:05
@entelligence-ai-pr-reviews
Copy link
Copy Markdown


Confidence Score: 5/5 - Safe to Merge

Safe to merge — this PR is a clean version bump from 0.0.2 to 0.1.0 with no logic changes, consisting entirely of version string updates in .release-please-manifest.json and internal/version.go, changelog additions, and cosmetic test fixture improvements replacing generic "text" placeholders with "..." or more descriptive strings. The changes in client_test.go, usage_test.go, and memory_test.go are purely cosmetic fixture updates that improve readability without altering any test logic or assertions. No review comments were generated and no pre-existing unresolved issues are present.

Key Findings:

  • Version bump is consistently applied across both .release-please-manifest.json and internal/version.go, ensuring no version skew between manifest and runtime-reported version.
  • Test fixture changes in client_test.go, usage_test.go, and memory_test.go replace placeholder "text" strings with "..." or descriptive values — purely cosmetic with zero impact on test correctness or coverage.
  • README.md install command version pin update correctly reflects the new 0.1.0 release, keeping documentation in sync with the released version.
  • CHANGELOG.md entry for v0.1.0 follows the existing format, making this a well-structured release PR with all expected release artifacts updated.
Files requiring special attention
  • internal/version.go
  • .release-please-manifest.json
  • CHANGELOG.md

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 4771fd0 to 6331c45 Compare April 16, 2026 19:30
@entelligence-ai-pr-reviews
Copy link
Copy Markdown


Confidence Score: 5/5 - Safe to Merge

Safe to merge — this PR is a clean release bump from 0.0.2 to 0.1.0 that involves only version string updates and alphabetical reordering of enum constants (placing github before google_drive) across files like action.go, aliases.go, auth.go, connection.go, integration.go, integrationwebcrawler.go, memory.go, and shared/shared.go. No logic changes, no new code paths, and no behavioral modifications are introduced. The review produced zero comments across 13 of 16 changed files, and the heuristic analysis found no critical, significant, or medium-severity issues.

Key Findings:

  • Version bump in .release-please-manifest.json, internal/version.go, and README.md is consistent and correct — all three sources updated atomically to 0.1.0.
  • Enum constant reordering (alphabetizing github before google_drive) is purely cosmetic and does not affect runtime behavior, as Go iota-based or string-based enum values are not position-sensitive in the way this change is applied.
  • No review comments were generated and heuristic analysis found zero issues at any severity level, making this one of the rare cases where a score of 5 is justified.
Files requiring special attention
  • internal/version.go
  • .release-please-manifest.json
  • shared/shared.go

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 6331c45 to 7f7913b Compare April 18, 2026 00:30
@entelligence-ai-pr-reviews
Copy link
Copy Markdown

entelligence-ai-pr-reviews Bot commented Apr 18, 2026

EntelligenceAI PR Summary

This PR releases v0.1.0 of the Hyperspell Go SDK, expanding integration support and improving client robustness.

  • Adds granola, fathom, and linear as new providers/sources across action.go, aliases.go, auth.go, connection.go, integration.go, integrationwebcrawler.go, memory.go, and shared/shared.go
  • Introduces default_http_client.go with a 10-minute ResponseHeaderTimeout and safe http.DefaultTransport cloning
  • Adds HYPERSPELL_CUSTOM_HEADERS environment variable support in client.go
  • Implements API key/sensitive header redaction in option/middleware.go debug logging
  • Replaces embedded reflect.Type with named typ field in four internal encoder/decoder structs to eliminate method promotion
  • Adds new fields: SelectedCount (connection), RequiresChannelSelection (integration), FolderAncestors (resource), Date (memory update), RecencyHalfLifeDays (search options), and typed MemorySearchParamsEffort enum
  • Fixes bootstrap script unbound variable issue with ${SKIP_BREW:-} and bumps @stdy/cli to 0.22.1

Confidence Score: 3/5 - Review Recommended

Likely safe but review recommended — this PR delivers a meaningful v0.1.0 release expanding provider support (granola, fathom, linear) and introducing a hardened default HTTP client with a 10-minute ResponseHeaderTimeout, but a pre-existing unresolved concern about the Date field in memory.go around lines 375-388 has not been addressed. Specifically, the field uses any instead of param.Opt[time.Time] and lacks the format:"date-time" struct tag that its sibling field in MemoryAddParams correctly carries, meaning a time.Time value passed at runtime would bypass serialization formatting and likely produce incorrect API requests. While this bug was not introduced by this PR, it remains unresolved and affects correctness of the released SDK.

Key Findings:

  • In memory.go (L375-L388), the Date field is typed as any rather than param.Opt[time.Time] and is missing the format:"date-time" struct tag — unlike the analogous field in MemoryAddParams — meaning datetime values will not be serialized correctly when constructing API requests, a correctness regression in the public SDK surface.
  • The addition of default_http_client.go with ResponseHeaderTimeout and safe cloning of http.DefaultTransport is a solid robustness improvement that avoids mutating the global transport, which is a common pitfall.
  • The new HYPERSPELL_CUSTOM_HEADERS environment variable support and provider additions (granola, fathom, linear) appear to be consistent additions across multiple files, suggesting they were added systematically rather than piecemeal.
  • Coverage of changed files was limited (9 of 26), so there may be additional inconsistencies in the unreviewed files similar to the Date field issue in memory.go.
Files requiring special attention
  • memory.go
  • default_http_client.go
  • shared/shared.go

@entelligence-ai-pr-reviews
Copy link
Copy Markdown

Version bump from 0.0.2 to 0.1.0 with enum reordering, a new MemoryUpdateParams field, and test/doc cleanup.

  • Bumped version in .release-please-manifest.json and internal/version.go; updated CHANGELOG.md and README.md
  • Reordered github/google_drive constants alphabetically in action.go, aliases.go, auth.go, connection.go, integration.go, integrationwebcrawler.go, memory.go, and shared/shared.go
  • Added Date field to MemoryUpdateParams in memory.go for date-based ranking and filtering
  • Replaced "text" placeholder with "..." in README.md, client_test.go, and usage_test.go
  • Updated memory_test.go with realistic parameter values, expanded metadata, and corrected field usage
  • Refreshed OpenAPI spec URL and hashes in .stats.yml

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 7f7913b to 8201b03 Compare April 18, 2026 08:15
@entelligence-ai-pr-reviews
Copy link
Copy Markdown

Releases Hyperspell Go SDK v0.1.0 with enum ordering fixes, a new memory field, dependency upgrades, and updated test data.

  • Bumps PackageVersion constant and release manifest from 0.0.2 to 0.1.0
  • Refreshes OpenAPI spec URL, spec hash, and config hash in .stats.yml
  • Reorders github/google_drive provider and source constants alphabetically across action.go, aliases.go, auth.go, connection.go, integration.go, integrationwebcrawler.go, memory.go, and shared/shared.go
  • Adds Date field (any, omitzero) to MemoryUpdateParams in memory.go
  • Replaces "text" placeholder with "..." in README.md, client_test.go, and usage_test.go
  • Updates memory_test.go with realistic test data including Date, metadata fields, and vault source
  • Upgrades @stdy/cli from 0.20.2 to 0.22.1 in scripts/mock and scripts/test

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 6547bfd to 6c148d3 Compare April 30, 2026 08:02
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 6c148d3 to fa88228 Compare May 1, 2026 00:31
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from fa88228 to 897e0fe Compare May 1, 2026 05:00
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 897e0fe to e9a8413 Compare May 1, 2026 05:04
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from e9a8413 to 6c26314 Compare May 5, 2026 19:31
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 6c26314 to 821266a Compare May 6, 2026 19:31
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 821266a to bd1ca51 Compare May 6, 2026 20:31
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from bd1ca51 to c30ab5d Compare May 7, 2026 19:31
Comment thread default_http_client.go Outdated
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from c30ab5d to 7c1a0f0 Compare May 8, 2026 03:31
Comment thread default_http_client.go Outdated
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 7c1a0f0 to 1d7935c Compare May 8, 2026 05:11
defaultHTTPClient performed an unchecked type assertion on
http.DefaultTransport, which panicked for any caller that had wrapped
the global transport (e.g. otelhttp.NewTransport for distributed
tracing). When the assertion fails, fall back to the wrapped
RoundTripper as-is — preserving the caller's wrapping at the cost of
ResponseHeaderTimeout, which is strictly better than panicking.
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 1d7935c to e0c329e Compare May 8, 2026 05:12
Comment thread default_http_client.go Outdated
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from e0c329e to bffa33b Compare May 8, 2026 17:31
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from bffa33b to 988ae20 Compare May 8, 2026 18:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants