SIGN IN SIGN UP

store: Use Table::indexes() for all index creation

Consolidate index creation into a single `Table::indexes()` method that
returns all indexes (time-travel, attribute, aggregate) as `CreateIndex`
objects. This replaces the old string-based methods and eliminates the
`index_def: Option<IndexList>` parameter threading through the codebase.

Key changes:
- Add `Table::indexes()` combining time_travel + attribute + aggregate indexes
- Add `attr_index_spec()` and `add_attribute_indexes()` structured helpers
- Move env var check into `CreateIndex::to_postpone()` so callers need not check
- Simplify `Table::as_ddl()` to iterate indexes with postpone filtering
- Remove old `create_time_travel_indexes`, `create_attribute_indexes`,
  `create_postponed_indexes`, `create_aggregate_indexes` string methods
- Remove `index_def` parameter from Layout, DeploymentStore, SubgraphStore
- Update copy.rs to use `indexes()` + `references_column_not_in()` for new fields
- Update prune.rs to use simplified `as_ddl()` without index_def
- Update all DDL test constants for new single-line index format
D
David Lutterkort committed
2ef92e7b37aff3411a9c18ec117fcffb125df10f
Parent: e1dc140