MCPcopy Create free account
hub / github.com/Chat2AnyLLM/code-agent-manager / writeManagedFile

Function writeManagedFile

internal/instructions/store.go:234–258  ·  view source on GitHub ↗

writeManagedFile atomically writes content to the managed file for name.

(name, content string)

Source from the content-addressed store, hash-verified

232
233// writeManagedFile atomically writes content to the managed file for name.
234func writeManagedFile(name, content string) error {
235 if err := os.MkdirAll(managedDir(), 0o755); err != nil {
236 return fmt.Errorf("instructions: mkdir managed dir: %w", err)
237 }
238 dest := managedFilePath(name)
239 tmp, err := os.CreateTemp(managedDir(), ".tmp-*")
240 if err != nil {
241 return fmt.Errorf("instructions: tmp file: %w", err)
242 }
243 tmpName := tmp.Name()
244 if _, err := tmp.WriteString(content); err != nil {
245 tmp.Close()
246 os.Remove(tmpName)
247 return fmt.Errorf("instructions: write tmp: %w", err)
248 }
249 if err := tmp.Close(); err != nil {
250 os.Remove(tmpName)
251 return fmt.Errorf("instructions: close tmp: %w", err)
252 }
253 if err := os.Rename(tmpName, dest); err != nil {
254 os.Remove(tmpName)
255 return fmt.Errorf("instructions: rename managed file: %w", err)
256 }
257 return nil
258}
259
260// Create persists a new instruction and writes its managed file.
261func (s *Store) Create(ctx context.Context, name, desc, content string) (Instruction, error) {

Callers 2

CreateMethod · 0.85
UpdateMethod · 0.85

Calls 5

managedDirFunction · 0.85
managedFilePathFunction · 0.85
NameMethod · 0.65
RemoveMethod · 0.45
RenameMethod · 0.45

Tested by

no test coverage detected