MCPcopy Create free account
hub / github.com/driangle/taskmd / syncTask

Method syncTask

apps/cli/internal/sync/engine.go:115–133  ·  view source on GitHub ↗
(
	ext ExternalTask,
	srcCfg SourceConfig,
	state *SyncState,
	existingIDs []string,
	now time.Time,
)

Source from the content-addressed store, hash-verified

113}
114
115func (e *Engine) syncTask(
116 ext ExternalTask,
117 srcCfg SourceConfig,
118 state *SyncState,
119 existingIDs []string,
120 now time.Time,
121) (SyncAction, error) {
122 mapped := MapExternalTask(ext, srcCfg.FieldMap)
123 extHash := HashExternalTask(ext)
124 outputDir := srcCfg.OutputDir
125
126 ts, exists := state.Tasks[ext.ExternalID]
127
128 if !exists {
129 return e.createTask(ext, mapped, extHash, outputDir, srcCfg.Name, state, existingIDs, now)
130 }
131
132 return e.updateTask(ext, mapped, extHash, ts, state, now)
133}
134
135func (e *Engine) createTask(
136 ext ExternalTask,

Callers 1

RunSyncMethod · 0.95

Calls 4

createTaskMethod · 0.95
updateTaskMethod · 0.95
MapExternalTaskFunction · 0.85
HashExternalTaskFunction · 0.85

Tested by

no test coverage detected