# internal/adapters/filesystem

Package filesystem owns workspace discovery and filesystem-backed bootstrap operations.

## ResolveRoot

```go
func ResolveRoot(ctx context.Context, explicit string, opts Discovery) (string, error)
```

ResolveRoot resolves an explicit, environment, or walk-up workspace root.

## Discovery

```go
type Discovery struct {
	EnvRoot string
	CWD     string
}
```

Discovery controls workspace root discovery.

- `EnvRoot: string`: 
- `CWD: string`: 

## WorkspaceStore

```go
type WorkspaceStore struct{}
```

WorkspaceStore creates the project-owned workspace directory layout.

## Init

```go
func (WorkspaceStore) Init(ctx context.Context, root string) (workspace.InitResult, error)
```

Init creates the .scafld workspace directories under root.
