hashicorp / hashicorp/hcat

What should resolver.Run return when buffering.. error or content?

Open
#62 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Go
Stars
96
Forks
13
PR merge metrics
No merged PRs in 30d

Description

The ResolveEvent that is returned during buffering doesn't have the content which would otherwise always be available with the caching template (PR #59) and the error is nil. This breaks with the other return semantics where it either returns a meaningful ResolveEvent with content OR returns a empty/default ResolveEvent and an error.

This can be addressed in either direction.
1) add a method to the template to let the resolver grab the cached content and return a meaningful ResolveEvent (w/ content and NoChange=true).
2) have it return an error when buffering with the empty/default ResolveEvent (like other errors)

I'm leaning towards option 2 but am not 100% yet.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at resolver.Run and the buffering path described in the issue, then inspect how ResolveEvent and the caching template currently handle content and errors. This is done when buffering follows one consistent return contract: either a populated event with content or an empty event accompanied by an error.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.