Description
With the complete 305-function OrtApi struct now available (PR #28), we should document which functions are:
- ✅ Battle-tested and recommended for production use
- ⚠️ Structurally available but not yet tested with real workloads
- 🚧 Implemented but experimental
Rationale
Users need clarity on which parts of the API they can rely on vs. which are still being validated. This prevents confusion and helps contributors know where to focus testing efforts.
Implementation
Add documentation (possibly to README.md or a new API_STATUS.md file) categorizing functions:
Tier 1: Production Ready (Battle-tested)
- Environment management:
InitializeEnvironment, DestroyEnvironment, GetVersionString
- Error handling:
GetErrorMessage, ReleaseStatus
- Memory cleanup:
ReleaseEnv (now working with complete struct)
Tier 2: Structurally Complete (Available but not extensively tested)
- Session creation:
CreateSession, CreateSessionOptions, ReleaseSession
- Tensor operations:
CreateTensorWithDataAsOrtValue, CreateMemoryInfo, CreateCpuMemoryInfo
- Run operations:
Run, CreateRunOptions
- All 305 function pointers are structurally correct and accessible
Tier 3: Not Yet Implemented (Require Higher-level Go Wrappers)
- Advanced features that require additional Go wrapper code beyond purego bindings
- Complex tensor operations requiring memory management helpers
- Custom operators and execution providers
Acceptance Criteria
Related Issues
Priority
Medium - This is important for transparency but doesn't block functionality
Description
With the complete 305-function OrtApi struct now available (PR #28), we should document which functions are:
Rationale
Users need clarity on which parts of the API they can rely on vs. which are still being validated. This prevents confusion and helps contributors know where to focus testing efforts.
Implementation
Add documentation (possibly to README.md or a new API_STATUS.md file) categorizing functions:
Tier 1: Production Ready (Battle-tested)
InitializeEnvironment,DestroyEnvironment,GetVersionStringGetErrorMessage,ReleaseStatusReleaseEnv(now working with complete struct)Tier 2: Structurally Complete (Available but not extensively tested)
CreateSession,CreateSessionOptions,ReleaseSessionCreateTensorWithDataAsOrtValue,CreateMemoryInfo,CreateCpuMemoryInfoRun,CreateRunOptionsTier 3: Not Yet Implemented (Require Higher-level Go Wrappers)
Acceptance Criteria
Related Issues
Priority
Medium - This is important for transparency but doesn't block functionality