71c7672545
* feat(skill-hub): add Skill Hub catalog, publish flow, and lite materialize pipeline Introduce Skill Hub for browsing, importing, publishing, and installing skills, with lite instance package materialization and runtime sync support. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(skill-hub): remove token-governance hooks from Skill Hub PR Strip validateManagedRuntimeEnvironmentOverrides, network lock policy sync, and egress proxy audit wiring that belong to the upcoming token-usage work, so the Skill Hub branch compiles independently. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(skill-hub): update migration number in materialize docs Co-authored-by: Cursor <cursoragent@cursor.com> * fix(skill-hub): make RuntimeAgentClient test stub and hub tests compile-safe Add ResyncInstanceSkills to the runtime pool handler fake client, and harden skill hub payload helpers/tests against nil storage/instance repos so go test passes. Co-authored-by: Cursor <cursoragent@cursor.com> * feat: add Skill Hub hardening with session usage tracking and egress governance Unify Skill Hub runtime sync improvements with session-token observability, egress network policy, and admin/instance usage reporting for reopenable PR. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(skill-hub): repair CI tests and nested skill install * fix(ci): restore release deployment configuration --------- Co-authored-by: heshengran <heshengran@ieisystem.com> Co-authored-by: Cursor <cursoragent@cursor.com>
27 lines
1.2 KiB
Go
27 lines
1.2 KiB
Go
package models
|
|
|
|
import "time"
|
|
|
|
type SkillPackageMaterializeJob struct {
|
|
ID int `db:"id,primarykey,autoincrement" json:"id"`
|
|
InstanceID int `db:"instance_id" json:"instance_id"`
|
|
SkillID int `db:"skill_id" json:"skill_id"`
|
|
BlobID int `db:"blob_id" json:"blob_id"`
|
|
WorkspaceDir string `db:"workspace_dir" json:"workspace_dir"`
|
|
ContentHash string `db:"content_hash" json:"content_hash"`
|
|
Status string `db:"status" json:"status"`
|
|
AttemptCount int `db:"attempt_count" json:"attempt_count"`
|
|
MaxAttempts int `db:"max_attempts" json:"max_attempts"`
|
|
LastError *string `db:"last_error" json:"last_error,omitempty"`
|
|
IdempotencyKey string `db:"idempotency_key" json:"idempotency_key"`
|
|
TriggerSource string `db:"trigger_source" json:"trigger_source"`
|
|
StartedAt *time.Time `db:"started_at" json:"started_at,omitempty"`
|
|
FinishedAt *time.Time `db:"finished_at" json:"finished_at,omitempty"`
|
|
CreatedAt time.Time `db:"created_at" json:"created_at"`
|
|
UpdatedAt time.Time `db:"updated_at" json:"updated_at"`
|
|
}
|
|
|
|
func (j SkillPackageMaterializeJob) TableName() string {
|
|
return "skill_package_materialize_jobs"
|
|
}
|