Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Core/High - Ensure that service location data is pulled from trusted source (i.e. not Consul) (Tony's ADR)
    • Covered in Security WG
  • High - V2 API - should we add security foundation added to that (per some of earlier V2 API designs via Dell and Bryon N)?
    • Adding token to authenticate a micro service call (is this in scope for Ireland)
    • May not be needed unless all services are distributed
    • We need to explore alternatives to provide secure / locked out service to service communications
    • ADR being created and to be reviewed in the Security WG.
  • Med - Address how to get device resource info (for app services and Kuiper)Event and Readings have many redundant properties. (added per Core WG 2/18/21)
    • Could we remove device profile and device name fields in reading (and just use those in Event)?

    • Would anyone need to query Readings and need the profile or device name when they just pulled Readings independently?

    • Are there other places where Readings become divorced from Events and we need to consider the consequences of duplicating fields in each? If so, would it be better just to have Readings have a reference to its “owning” Event?

    • Probably not ADR worthy
    • Either provide Lenny’s convenience APIs or tool to dig out the device resource information in the (cached) profiles
    • How/when to invalidate the cache if we use the profile-digging approach


  • Med - Keep commit history from beginning to end (don’t squash them until PR approved)
  • Med - Standardizing units of measure
  • Med - Declarative Kong applicability
    • Allowing us to drop Progress DB
    • But can you configure groups/users ACL
    • Only supports JWT users
  • Low - Is the Wiki the best place to document project decisions (those outside of or smaller than ADRs).  This was our initial take.  Should we revisit?
  • Low (must be done before V2 is done) - Naming scheme changes for config.Clients (key name change)
    • Use consistent name that all other services use for core data
    • Consistency in the naming vs changing all the names to use service name as part of key
    • Related to system management hard coded list of services.
    • Separate issue in arch meeting – high once report back
    • Other naming issues (secret store vs secret service)
    • Opportunity to make all config/naming consistent
    • Jim take resp – get WG leads – try to prioritize this survey
  • Low - Revisit combine core services at least at all executables in one image
    • Release would be easier but image would be bigger with more complex compose files
    • Per Core WG of 2/18/21 - is it at least worth exploring the combination of Core Metadata and Core Command since the two have to share so much data?
    • Core command is just a proxy service today, but reasons for having a separate service include: additional security to protect actuation; issue multiple device commands with one request (make one request and fire it to all Modbus devices or all devices under the control of one service); provide the means to limit requests down to a device so as not to overwhelm it or wake it up).  These needs could also be incorporated into a combined metadata service but there are advantages to separation of concerns.
  • Low - Digital twin (and LWM2M) applicability
  • Low - Time series database support and applicability
    • Ian Johnson has an example of app service to InfuxDB export (snap in the store)
  • Low - where should tool/script for creating new device and application services be placed?
    • After the architect's meeting of Jan 26, 2021, it was decided that "templates" should be created in all SDKs to allow for the easy creation of new services (removing the old samples in the SDKs).  The templates will be a means for users to copy and create a new service with some instruction on how to rename and replace TODOs with necessary code.
    • After the templates are in place, there is a decision to be made about where automation can be placed to use the templates to create new services (versus a manual copy).  In the CLI, in a new tool, in a set of simple scripts?

...