Yea definitely not a new idea
Its basically the same as the summary metadata extractor
https://docs.llamaindex.ai/en/stable/module_guides/loading/documents_and_nodes/usage_metadata_extractor/#metadata-extraction-usage-patternBasically in simple from scratch terms, just add some text to metadata, exclude metadata from the llm so that its only used for embeddings, and off you go
node = TextNode(text="...")
node.metadata['context'] = "..."
node.excluded_llm_metadata_keys.append("context")
index = VectorStoreIndex(nodes=[node, ..], ...)