hcengineering/platform · warning · Error
Not implemented
Error message
Not implemented
What it means
The share() function in telegram-resources Chat.svelte is an unfinished feature: it immediately throws Error('Not implemented') with a TODO FIXME comment, and the original implementation body is commented out. Any user invoking the share action on a telegram chat hits this unconditionally — it is not a runtime failure but intentionally unshipped functionality.
Source
Thrown at plugins/telegram-resources/src/components/Chat.svelte:142
{
content: jsonToHTML(markupToJSON(message)),
status: 'new',
attachments
},
objectId
)
objectId = generateId()
loading = false
}
// function getName (message: TelegramMessage, accounts: IdMap<PersonAccount>): string {
// return message.incoming ? object.name : accounts.get(message.modifiedBy as PersonId)?.name ?? ''
// }
async function share (): Promise<void> {
// TODO: FIXME
throw new Error('Not implemented')
// const selectedMessages = messages.filter((m) => selected.has(m._id as unknown as Ref<SharedTelegramMessage>))
// await client.addCollection(
// telegram.class.SharedMessages,
// object.space,
// object._id,
// object._class,
// 'sharedTelegramMessages',
// {
// messages: convertMessages(selectedMessages, $personAccountByIdStore)
// }
// )
// if (channel !== undefined) {
// await inboxClient.forceReadDoc(channel._id, channel._class)
// }
// clear()
}
function clear (): void {View on GitHub (pinned to 63e28dc964)
Solutions
- Hide or disable the share button in the UI until the feature is implemented.
- Restore the commented-out implementation that filters selected messages and adds telegram.class.SharedMessages via client.addCollection.
- If the underlying SharedMessages class was removed in a newer version, re-implement sharing against the current plugin API.
Example fix
// before
async function share (): Promise<void> {
// TODO: FIXME
throw new Error('Not implemented')
}
// after
async function share (): Promise<void> {
const selectedMessages = messages.filter((m) => selected.has(m._id as unknown as Ref<SharedTelegramMessage>))
await client.addCollection(
telegram.class.SharedMessages,
object.space,
object._id,
object._class
)
} Defensive patterns
Strategy: fallback
Validate before calling
// feature flag check before offering the action if (!isShareAvailable) hideShareButton()
Try / catch
try {
await share()
} catch (e) {
if (e.message === 'Not implemented') {
showNotification('Message sharing is not available yet')
} else throw e
} Prevention
- Hide UI actions whose handlers throw Not implemented
- Track unfinished features with feature flags
- Restore the commented-out implementation before shipping the share button
When it happens
Trigger: Clicking the share button / calling share() in the Telegram chat view — the function's first statement is the throw, so every invocation fails.
Common situations: User tries to share selected telegram messages to another chat; UI exposes an action whose backend (telegram.class.SharedMessages collection add) was disabled during a refactor.
Related errors
- Not implemented
- attribute presenter not found for ${JSON.stringify(preserveK
- object presenter not found for class=${_class}, preserve key
- Not implemented
- Unable to find just created drawing
AI-assisted analysis of hcengineering/platform@63e28dc964 (2026-08-29).
Data as JSON: /api/errors/33d39d1e2dcfdc33.
Report an issue: GitHub.