fleet-memory/hindsight-clients/go/model_update_document_response.go
Nicolò Boschi 1b4ad7f435
feat: change tags for a document (#517)
* feat: add update document tags endpoint with observation invalidation

Adds PATCH /v1/default/banks/{bank_id}/documents/{document_id} to change
tags on a document without re-processing content.

- Updates tags on the document and all associated memory units atomically
- Invalidates observations derived from the document's memory units
- Resets consolidated_at on the document's own units for re-consolidation
- Also resets consolidated_at on co-source memories from other documents
  that shared those observations (matching delete_document behavior)
- Triggers async consolidation when observations are invalidated
- 9 new tests covering all invalidation scenarios

UI: adds inline tag editor to the document detail panel in the control plane
Docs: new "Update Document Tags" section in documents.mdx with Python/JS examples

* refactor: simplify UpdateDocumentTagsResponse to {success: true}

* refactor: make PATCH /documents generic update_document endpoint

Renames update_document_tags → update_document (engine + HTTP + clients + UI).
Currently only tags are supported; the structure is open for future fields.
Tags are the only field with side effects (observation invalidation + re-consolidation).
2026-03-07 09:00:13 +01:00

130 lines
3.4 KiB
Go

/*
Hindsight HTTP API
HTTP API for Hindsight
API version: 0.4.16
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package hindsight
import (
"encoding/json"
)
// checks if the UpdateDocumentResponse type satisfies the MappedNullable interface at compile time
var _ MappedNullable = &UpdateDocumentResponse{}
// UpdateDocumentResponse Response model for update document endpoint.
type UpdateDocumentResponse struct {
Success *bool `json:"success,omitempty"`
}
// NewUpdateDocumentResponse instantiates a new UpdateDocumentResponse object
// This constructor will assign default values to properties that have it defined,
// and makes sure properties required by API are set, but the set of arguments
// will change when the set of required properties is changed
func NewUpdateDocumentResponse() *UpdateDocumentResponse {
this := UpdateDocumentResponse{}
var success bool = true
this.Success = &success
return &this
}
// NewUpdateDocumentResponseWithDefaults instantiates a new UpdateDocumentResponse object
// This constructor will only assign default values to properties that have it defined,
// but it doesn't guarantee that properties required by API are set
func NewUpdateDocumentResponseWithDefaults() *UpdateDocumentResponse {
this := UpdateDocumentResponse{}
var success bool = true
this.Success = &success
return &this
}
// GetSuccess returns the Success field value if set, zero value otherwise.
func (o *UpdateDocumentResponse) GetSuccess() bool {
if o == nil || IsNil(o.Success) {
var ret bool
return ret
}
return *o.Success
}
// GetSuccessOk returns a tuple with the Success field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *UpdateDocumentResponse) GetSuccessOk() (*bool, bool) {
if o == nil || IsNil(o.Success) {
return nil, false
}
return o.Success, true
}
// HasSuccess returns a boolean if a field has been set.
func (o *UpdateDocumentResponse) HasSuccess() bool {
if o != nil && !IsNil(o.Success) {
return true
}
return false
}
// SetSuccess gets a reference to the given bool and assigns it to the Success field.
func (o *UpdateDocumentResponse) SetSuccess(v bool) {
o.Success = &v
}
func (o UpdateDocumentResponse) MarshalJSON() ([]byte, error) {
toSerialize,err := o.ToMap()
if err != nil {
return []byte{}, err
}
return json.Marshal(toSerialize)
}
func (o UpdateDocumentResponse) ToMap() (map[string]interface{}, error) {
toSerialize := map[string]interface{}{}
if !IsNil(o.Success) {
toSerialize["success"] = o.Success
}
return toSerialize, nil
}
type NullableUpdateDocumentResponse struct {
value *UpdateDocumentResponse
isSet bool
}
func (v NullableUpdateDocumentResponse) Get() *UpdateDocumentResponse {
return v.value
}
func (v *NullableUpdateDocumentResponse) Set(val *UpdateDocumentResponse) {
v.value = val
v.isSet = true
}
func (v NullableUpdateDocumentResponse) IsSet() bool {
return v.isSet
}
func (v *NullableUpdateDocumentResponse) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableUpdateDocumentResponse(val *UpdateDocumentResponse) *NullableUpdateDocumentResponse {
return &NullableUpdateDocumentResponse{value: val, isSet: true}
}
func (v NullableUpdateDocumentResponse) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableUpdateDocumentResponse) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}