{
  "name": "github.com/l1fe-labs/forge-go/health",
  "language": "go",
  "version": "module source snapshot",
  "description": "Go health package.",
  "manifest": "forge-go/go.mod",
  "manifestSha256": "dee97864d07a64c4c93c79104137d155f0cbae6962945f3b56ceb7744a03cc82",
  "status": "source-reference",
  "registryPublicationVerified": false,
  "route": "/libraries/go/health",
  "features": {},
  "files": [
    {
      "path": "forge-go/health/events.go",
      "sha256": "bd967641de42b915e93863ab011ed28b3bf29b90d6a64b79d1f6f0deabc4e00b",
      "artifactSha256": "ed913802d5dc71a32bbaa353dc60414688947d6ab5e603c89558a0999d4c7526",
      "url": "/reference/source/forge-go/health/events.go.txt",
      "declarations": [
        {
          "name": "func EmitLifecycleEvent(emitter core.TelemetryEmitter, transition LifecycleTransition, agentDID string)",
          "line": 13,
          "signature": "func EmitLifecycleEvent(emitter core.TelemetryEmitter, transition LifecycleTransition, agentDID string)",
          "documentation": ""
        },
        {
          "name": "func EmitHealthSnapshot(emitter core.TelemetryEmitter, profile *HealthProfile, agentDID string)",
          "line": 39,
          "signature": "func EmitHealthSnapshot(emitter core.TelemetryEmitter, profile *HealthProfile, agentDID string)",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-go/health/lifecycle.go",
      "sha256": "75ed638d1cf107851dddb520a6fc1ca18da38cecab296ba7886418407b2241a0",
      "artifactSha256": "890920eb4d8e23fbc55fdc581b517b3e69d2e9ab9e69b3d6ac65a019abf4c96e",
      "url": "/reference/source/forge-go/health/lifecycle.go.txt",
      "declarations": [
        {
          "name": "type LifecycleState string",
          "line": 20,
          "signature": "type LifecycleState string\n\nconst (\n// StateInitializing is the initial state during agent setup (loading config, identity).\nStateInitializing LifecycleState;",
          "documentation": ""
        },
        {
          "name": "func (s LifecycleState) String() string",
          "line": 43,
          "signature": "func (s LifecycleState) String() string",
          "documentation": ""
        },
        {
          "name": "func (s LifecycleState) IsTerminal() bool",
          "line": 48,
          "signature": "func (s LifecycleState) IsTerminal() bool",
          "documentation": ""
        },
        {
          "name": "func (s LifecycleState) CanTransitionTo(target LifecycleState) bool",
          "line": 73,
          "signature": "func (s LifecycleState) CanTransitionTo(target LifecycleState) bool",
          "documentation": ""
        },
        {
          "name": "type LifecycleTransition struct",
          "line": 87,
          "signature": "type LifecycleTransition struct",
          "documentation": ""
        },
        {
          "name": "type LifecycleManager struct",
          "line": 107,
          "signature": "type LifecycleManager struct",
          "documentation": ""
        },
        {
          "name": "func NewLifecycleManager() *LifecycleManager",
          "line": 118,
          "signature": "func NewLifecycleManager() *LifecycleManager",
          "documentation": ""
        },
        {
          "name": "func (lm *LifecycleManager) State() LifecycleState",
          "line": 126,
          "signature": "func (lm *LifecycleManager) State() LifecycleState",
          "documentation": ""
        },
        {
          "name": "func (lm *LifecycleManager) CreatedAt() time.Time",
          "line": 133,
          "signature": "func (lm *LifecycleManager) CreatedAt() time.Time",
          "documentation": ""
        },
        {
          "name": "func (lm *LifecycleManager) Transition(target LifecycleState, reason string) error",
          "line": 145,
          "signature": "func (lm *LifecycleManager) Transition(target LifecycleState, reason string) error",
          "documentation": ""
        },
        {
          "name": "func (lm *LifecycleManager) History() []LifecycleTransition",
          "line": 175,
          "signature": "func (lm *LifecycleManager) History() []LifecycleTransition",
          "documentation": ""
        },
        {
          "name": "func (lm *LifecycleManager) OnTransition(fn func(LifecycleTransition))",
          "line": 186,
          "signature": "func (lm *LifecycleManager) OnTransition(fn func(LifecycleTransition))",
          "documentation": ""
        },
        {
          "name": "func (lm *LifecycleManager) TransitionCount() int",
          "line": 193,
          "signature": "func (lm *LifecycleManager) TransitionCount() int",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-go/health/profile.go",
      "sha256": "569b9098eb2262b72b37d67d7654d251c62983aa73b70ad5c5796d69625735f3",
      "artifactSha256": "175b04dd96183c426b7d06d05c07d4ba4172b436126d7193b39b4f1ea01aa526",
      "url": "/reference/source/forge-go/health/profile.go.txt",
      "declarations": [
        {
          "name": "type HealthStatus string",
          "line": 12,
          "signature": "type HealthStatus string\n\nconst (\n// HealthStatusHealthy indicates the agent is operating normally.\nHealthStatusHealthy HealthStatus;",
          "documentation": ""
        },
        {
          "name": "func (s HealthStatus) String() string",
          "line": 26,
          "signature": "func (s HealthStatus) String() string",
          "documentation": ""
        },
        {
          "name": "type HealthProfile struct",
          "line": 36,
          "signature": "type HealthProfile struct",
          "documentation": ""
        },
        {
          "name": "func NewHealthProfile() *HealthProfile",
          "line": 80,
          "signature": "func NewHealthProfile() *HealthProfile",
          "documentation": ""
        },
        {
          "name": "type Snapshot struct",
          "line": 87,
          "signature": "type Snapshot struct",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) Snapshot() Snapshot",
          "line": 104,
          "signature": "func (p *HealthProfile) Snapshot() Snapshot",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) RecordError()",
          "line": 125,
          "signature": "func (p *HealthProfile) RecordError()",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) RecordToolInvocation()",
          "line": 132,
          "signature": "func (p *HealthProfile) RecordToolInvocation()",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) RecordInference(tokens int64)",
          "line": 139,
          "signature": "func (p *HealthProfile) RecordInference(tokens int64)",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) UpdateCPUUsage(percent float64)",
          "line": 147,
          "signature": "func (p *HealthProfile) UpdateCPUUsage(percent float64)",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) UpdateMemoryUsage(bytes int64)",
          "line": 154,
          "signature": "func (p *HealthProfile) UpdateMemoryUsage(bytes int64)",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) SetActiveTasks(count uint32)",
          "line": 161,
          "signature": "func (p *HealthProfile) SetActiveTasks(count uint32)",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) RecordTaskCompleted()",
          "line": 168,
          "signature": "func (p *HealthProfile) RecordTaskCompleted()",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) UpdateErrorRate(rate float64)",
          "line": 177,
          "signature": "func (p *HealthProfile) UpdateErrorRate(rate float64)",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) UpdateAvgLatencyMs(ms float64)",
          "line": 184,
          "signature": "func (p *HealthProfile) UpdateAvgLatencyMs(ms float64)",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) UpdateToolSuccessRate(rate float64)",
          "line": 191,
          "signature": "func (p *HealthProfile) UpdateToolSuccessRate(rate float64)",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) UpdateGenerationSuccessRate(rate float64)",
          "line": 198,
          "signature": "func (p *HealthProfile) UpdateGenerationSuccessRate(rate float64)",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) ErrorCount() int64",
          "line": 205,
          "signature": "func (p *HealthProfile) ErrorCount() int64",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) ToolInvocations() int64",
          "line": 212,
          "signature": "func (p *HealthProfile) ToolInvocations() int64",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) InferenceCalls() int64",
          "line": 219,
          "signature": "func (p *HealthProfile) InferenceCalls() int64",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) InferenceTokens() int64",
          "line": 226,
          "signature": "func (p *HealthProfile) InferenceTokens() int64",
          "documentation": ""
        },
        {
          "name": "func (p *HealthProfile) UptimeSeconds() float64",
          "line": 233,
          "signature": "func (p *HealthProfile) UptimeSeconds() float64",
          "documentation": ""
        }
      ]
    }
  ]
}
